Jump to content

Recommended Posts

Posted (edited)

¿La del stat que escojas tú o la de un stat que se escoja al azar? Las diferencias en el script son enormes entre una cosa y otra...

Edited by jaBote
Posted

quiza sea algo asi lo que buscas, es de Rokimoki y puedes manejarlo hasta que tengas el resultado que buscas

 

Saludos!

 

// Hidden Enchant Slot con posibilidad de +1~10 v1.0 [Rokimoki] 
// ---
prontera,147,64,5	script	Shiriublem	84,{
set .@nombre$, "[^0000FFHidden Slot Enchant^000000]";
mes .@nombre$;
mes "Bienvenid@ a mis servicios de encantamiento. El servicio cuesta ^FF0000" + .zeny + " z^000000.";
next;
if (select("Continuar:Más información") == 2) {
	mes .@nombre$;
	mes "Puedo encantarte una armadura con una runa en el 4º slot, puede ser +1 o hasta +10 de cualquier stat aleatorio permanentemente.";
	next;
	mes .@nombre$;
	mes "Tenemos para encantar armaduras sin slot, con slot y de alta calidad.";
	mes "^FF0000Armaduras con slot que puedo encantar: ^000000";
	for (set .@c, 0; .@c < getarraysize(.ids1); set .@c, .@c + 1)
		mes "- " + getitemname(.ids1[.@c]) + " [0]";
	next;
	mes .@nombre$;
	mes "^FF0000Armaduras con slot que puedo encantar: ^000000";
	for (set .@c, 0; .@c < getarraysize(.ids2); set .@c, .@c + 1)
		mes "- " + getitemname(.ids2[.@c]) + " [1]";
	next;
	mes .@nombre$;
	mes "^FF0000Armaduras de alta calidad que puedo encantar: ^000000";
	for (set .@c, 0; .@c < getarraysize(.ids3); set .@c, .@c + 1)
		mes "- " + getitemname(.ids3[.@c]) + " [1]";
	next;
} // End if
mes .@nombre$;
if (zeny < .zeny)	{
	mes "Lo siento, no tienes los zenys necesarios.";
	close;
} // End if
mes "Elige el tipo de armadura que quieras encantar. ^FF0000Te aviso que tengo un 0% de posibilidad de romper el item^000000.";
next;
switch (select("Armadura sin Slot:Armadura con Slot:Armadura de Alta Calidad")) {
	case 1:
		set .@j, 1;
		break;

	case 2:
		set .@j, 2;
		break;

	case 3:
		set .@j, 3;
		break;
} // End switch
// Detectamos si tiene equipado una armos que podemos encantar
for (set .@c, 0; .@c < getarraysize(getd(".ids" + .@j)); set .@c, .@c + 1)
	if (isequipped(getd(".ids" + .@j + "[" + .@c +"]")) == 1)
		set .@s, .@c; // Definimos la ID de esa armor en la posición del array
mes .@nombre$;
// Descartamos si no tiene armor equipada o si no está definida
if (!.@s) {
	if (atoi(getequipname(EQI_ARMOR)) == -1)
		mes "Ahora mismo no llevas ningún armor equipado, entonces no hay nada que encantar..";
	else
		mes "Tienes equipada ^FF0000" + getequipname(EQI_ARMOR) + " armor^000000, y no consta en las que yo puedo equipar, háblame de nuevo y consúltame más información para saber las que puedes encantar.";
	close;
} // End if
// Empezamos el proceso de encantamiento
mes "Veo que tienes un ^FF0000[" + getitemname(getd(".ids" + .@j + "[" + .@s +"]")) + "]^000000 equipado.";
next;
mes .@nombre$;
mes "Bueno, allí vamos...";
mes "¡Buena Suerte!";
next;
set zeny, zeny - .zeny;
// Borramos el item equipado
set .@itemid, getequipid(EQI_ARMOR);
delitem .@itemid,1;
// Cálculo del % y según el % definimos un array con la runa de +X stat y sus stats pertenecientes
set .@rand, rand(1000);
if (.@rand >= 0 && .@rand < 0) { // Break 10%
	mes "[Hidden Slot Enchant]";
	mes "Ha fallado el intento. Lo siento...";
	close;
} else if (.@rand >= 100 && .@rand < 300) // +1 20%
	setarray .@level[0],4700,4710,4720,4730,4740,4750;
else if (.@rand >= 300 && .@rand < 450) // +2 15%
	setarray .@level[0],4701,4711,4721,4731,4741,4751;
else if (.@rand >= 450 && .@rand < 600) // +3 15%
	setarray .@level[0],4702,4712,4722,4732,4742,4752;
else if (.@rand >= 600 && .@rand < 700) // +4 10%
	setarray .@level[0],4703,4713,4723,4733,4743,4753;
else if (.@rand >= 700 && .@rand < 800) // +5 10%
	setarray .@level[0],4704,4714,4724,4734,4744,4754;
else if (.@rand >= 800 && .@rand < 890) // +6 9%
	setarray .@level[0],4705,4715,4725,4735,4745,4755;
else if (.@rand >= 890 && .@rand < 940) // +7 5%
	setarray .@level[0],4706,4716,4726,4736,4746,4756;
else if (.@rand >= 940 && .@rand < 965) // +8 2,5%
	setarray .@level[0],4707,4717,4727,4737,4747,4757;
else if (.@rand >= 965 && .@rand < 990) // +9 2,5%
	setarray .@level[0],4708,4718,4728,4738,4748,4758;
else if (.@rand >= 990) // +10 1%
	setarray .@level[0],4709,4719,4728,4739,4749,4759;
// Calculamos aleatoriamente el stat con 16,6% cada una
set .@runa, .@level[rand(getarraysize(.@level))];
// Encantamos el armor con la runa seleccionada
getitem2 .@itemid, 1, 1, 0, 0, 0, 0, 0, .@runa;
mes "[Hidden Slot Enchant]";
mes "Bien~ ¡ Aquí tienes tu armadura encantada !";
close;

OnInit:
// Definimos el Zeny que cuesta encantar, 600k por defecto
set .zeny, 600000;

// En esta parte se indica que ID's de armadura pertenece a cada tipo de categoria, para hacerte mas sencillo la comprensión y customizacion si se lo desea.
setarray .ids1[0],2307, // Mantle
				2309, // Coat
				2314, // Chain Mail
				2316, // Plate Armor
				2321, // Silk Robe
				2325, // Saint Robe
				2327, // Holy Robe
				2330, // Tights
				2332, // Silver Robe
				2334, // Magic Coat
				2335, // Thief Clothes
				2341, // Legion Full Plate
				2344, // Pierce Armor of Volcano
				2348, // Saphien's armor of ocean
				2346, // Aebeecee's Raging Typhoon Armor
				2350, // Claytos Cracking Earth Armor
				2395, // Glorious Suit type 2
				2396, // Glorious Suit type 3
				2394, // Glorious Suit type 1
				2337, // Ninja Suit
				2386; // Chameleon Armor

setarray .ids2[0],2311, // Mink Coat[1]
				2318, // Lord Clothes[1]
				2319, // Glitering Jacket[1]
				2320, // Formal Suit[1]
				2308, // Mantle[1]
				2310, // Coat [1]
				2315, // Chain Mail[1]
				2317, // Plate Armor[1]
				2322, // Silk Robe[1]
				2323, // Scapulare[1]
				2326, // Saint Robe[1]
				2331, // Tights[1]
				2333, // Silver Robe[1]
				2336, // Thief Clothes[1]
				2342, // Legion's Full Plate[1]
				2345, // Pierce Armor of Volcano[1]
				2347, // Saphien's Armor of ocean[1]
				2349, // Aebecee's Raging Typhoon Armor[1]
				2351; // Claytos Cracking Earth Armor[1]

setarray .ids3[0],2364, // Meteor Plate[1]
				2365, // Orlean's Uniform[1]
				2375, // Diabolus Robe[1]
				2374, // Diabolus Armor[1]
				2387, // Sprint Mail[1]
				2389, // Kandra[1] || Gandora[1]
				2388, // Naga Scale Armor[1]
				2391, // Life Link[1]
				2390, // Refined Tights[1]
				2376, // Assaulter Plate[1]
				2377, // Elite Engineer Armor[1]
				2378, // Assassin Robe[1]
				2379, // Warlock Battle Robe[1]
				2380, // Robe of Order[1]
				2381, // Elite Archer Suit[1]
				2382; // Elite Shooter Suit[1]
end;
} // End Script

 

 

 

 


 

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

  • Recently Browsing   0 members

    • No registered users viewing this page.
×
×
  • Create New...