Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- prt_in,63,58,3 script Enchanted Smite 743,{
- function EquipmentValidation;
- function RuneSelect;
- function ListEquipment;
- mes "Which Part you want to enchant ?";
- mes "^FF0000Make sure you wear the Equipments^000000";
- next;
- set .@i,( select( "^0000FFView Equipment Lists^000000",
- ( getequipid(EQI_HEAD_TOP) == -1 )?"[TOP] ^FF0000Unavailable^000000":"[TOP] "+getitemname(getequipid(EQI_HEAD_TOP)),
- ( getequipid(EQI_ARMOR) == -1 )?"[ARMOR] ^FF0000Unavailable^000000":"[ARMOR] "+getitemname(getequipid(EQI_ARMOR)),
- ( getequipid(EQI_HAND_R) == -1 )?"[HAND_R] ^FF0000Unavailable^000000":"[HAND_R] "+getitemname(getequipid(EQI_HAND_R)),
- ( getequipid(EQI_GARMENT) == -1 )?"[GARMENT] ^FF0000Unavailable^000000":"[GARMENT] "+getitemname(getequipid(EQI_GARMENT)),
- ( getequipid(EQI_SHOES) == -1 )?"[SHOES] ^FF0000Unavailable^000000":"[SHOES] "+getitemname(getequipid(EQI_SHOES))) - 1 );
- if( .@i <= 0 ) ListEquipment();
- set .@Equip,(( .@i < 3 )?.@i:.@i+1 );
- if( getequipid( .@Equip ) == -1 ){
- mes "Sorry make sure you have Item Equipped.";
- }else if( !EquipmentValidation( .@Equip ) ){
- mes "Sorry but you cant Enchant the Equipment if it is not Allowed / Named.";
- }else if( countitem( getequipid( .@Equip ) ) > 1 ){
- mes "Please make sure you only have 1 x "+getitemname( getequipid( .@Equip ) );
- }else{
- mes "Socket you want to Enchant ?";
- set .@Socket,select("Socket 1:Socket 2:Socket 3");
- mes "What type of Attribute you want to Enchant ?";
- set .@Stat,select("STR:INT:DEX:AGI:VIT:LUK");
- set .@CurrentRune,getequipcardid( .@Equip,.@Socket );
- set .@NextRune,RuneSelect( .@CurrentRune,.@Stat );
- if( .@NextRune && EquipmentValidation( .@Equip ) ){
- if( getequipcardid( .@Equip,0 ) || getequiprefinerycnt( .@Equip ) ){
- mes "There is Card inside or the Equipment is Refined, the Item will be destroyed if Failed.";
- if( select("Continue:Cancel") == 2 ) close;
- }
- mes "It cost ^FF0000"+.Cost[@Level]+"^000000 Zeny to enchant ^0000FF"+getitemname( getequipid( .@Equip ) )+"^000000 with ^0000FF"+getitemname(.@NextRune)+"^000000 at ^FF0000Socket "+.@Socket+"^000000.";
- next;
- if( select("Continue:Cancel") == 2 ) close;
- setarray .@EQStats[0],getequiprefinerycnt( .@Equip ),getequipcardid( .@Equip,0 ),getequipcardid( .@Equip,1 ),getequipcardid( .@Equip,2 ),getequipcardid( .@Equip,3 );
- if( Zeny < .Cost[@Level] ){
- mes "Sorry you didnt have enough of "+.Cost[@Level]+" Zeny.";
- }else{
- set Zeny,Zeny - .Cost[@Level];
- if( rand(100) < 0 ){
- mes "Congratulation, you SUCCESS to enchant the ^0000FF"+getitemname( getequipid( .@Equip ) )+"^000000 with ^0000FF"+getitemname(.@NextRune)+"^000000 at ^FF0000Socket "+.@Socket+"^000000.";
- set .@EQID,getequipid( .@Equip );
- delitem .@EQID,1;
- specialeffect2 154;
- getitem2 .@EQID,1,1,.@EQStats[0],0,.@EQStats[1],( ( .@Socket == 1 )?.@NextRune:.@EQStats[2] ),( ( .@Socket == 2 )?.@NextRune:.@EQStats[3] ),( ( .@Socket == 3 )?.@NextRune:.@EQStats[4] );
- }else{
- mes "Sorry, the Process Failed.";
- }
- }
- }
- }
- close;
- function EquipmentValidation {
- if( getequipcardid( getarg(0),0 ) == -255 ||
- getequipcardid( getarg(0),0 ) == 254 ||
- getequipcardid( getarg(0),0 ) == 255 )
- return 0;
- switch( getarg(0) ){
- Case 1: copyarray .@EQList[0],.Headgear[0],getarraysize(.Headgear[0]); break;
- Case 2: copyarray .@EQList[0],.Armor[0],getarraysize(.Armor[0]); break;
- Case 4: copyarray .@EQList[0],.Shield[0],getarraysize(.Shield[0]); break;
- Case 5: copyarray .@EQList[0],.Garment[0],getarraysize(.Garment[0]); break;
- Case 6: copyarray .@EQList[0],.Shoes[0],getarraysize(.Shoes[0]); break;
- default:
- mes "ERROR. Wrong Equipment Part Selection ["+getarg(0)+"].";
- close;
- }
- for( set .@i,0; .@i < getarraysize( .@EQList ); set .@i,.@i + 1 )
- if( .@EQList[.@i] == getequipid( getarg(0) ) )
- return 1;
- return 0;
- }
- function RuneSelect {
- switch( getarg(1) ){
- Case 1: setarray .@RuneID[0],4700,4701,4702; break;
- Case 2: setarray .@RuneID[0],4710,4711,4712; break;
- Case 3: setarray .@RuneID[0],4720,4721,4722; break;
- Case 4: setarray .@RuneID[0],4730,4731,4732; break;
- Case 5: setarray .@RuneID[0],4740,4741,4742; break;
- Case 6: setarray .@RuneID[0],4750,4751,4752; break;
- }
- for( set .@i,0; .@i < getarraysize( .@RuneID ); set .@i,.@i + 1 )
- if( getarg(0) == .@RuneID[2] ){
- mes "Sorry you cant enchant this socket anymore.";
- return 0;
- }else if( !getarg(0) ){
- set @Level,.@i;
- return .@RuneID[.@i];
- }else if( getarg(0) == .@RuneiD[.@i] ){
- set @Level,.@i+1;
- return .@RuneID[.@i+1];
- }
- mes "Please select a RUNE that ^FF0000Same Attribute^000000 you enchanted for this socket before.";
- return 0;
- }
- function ListEquipment {
- for( set .@i,0; .@i < getarraysize( .Headgear ); set .@i,.@i + 1 )
- mes "["+.@i+"] "+getitemname(.Headgear[.@i]);
- next;
- for( set .@i,0; .@i < getarraysize( .Armor ); set .@i,.@i + 1 )
- mes "["+.@i+"] "+getitemname(.Armor[.@i]);
- next;
- for( set .@i,0; .@i < getarraysize( .Shield ); set .@i,.@i + 1 )
- mes "["+.@i+"] "+getitemname(.Shield[.@i]);
- next;
- for( set .@i,0; .@i < getarraysize( .Garment ); set .@i,.@i + 1 )
- mes "["+.@i+"] "+getitemname(.Garment[.@i]);
- next;
- for( set .@i,0; .@i < getarraysize( .Shoes ); set .@i,.@i + 1 )
- mes "["+.@i+"] "+getitemname(.Shoes[.@i]);
- close;
- }
- OnInit:
- // Level Cost
- setarray .Cost[0],100000,300000,500000;
- // Level Success Rate
- setarray .Rate[0],70,20,10;
- // Equipment Lists
- setarray .Headgear[0],5292,5151,5382,5451,5452,5453,5529,5505,5751,20017,20031,20032,20043,20044,20052,5171;
- setarray .Armor[0],15036,15037,15030,15038,15042,15043,15007,15025,15026,15027,15028,2389,2378,15000,2310,2375,2374,2366,2320,2317,2391,2386,2315,2364,2340,2360,2348,2349,2350,2351,2344,2345,2346,2347,2357;
- setarray .Shield[0],2153,2145,2116,2138,2131,2115,2134,2104;
- setarray .Garment[0],2574,2575,2570,2577,2580,2581,2559,2554,2524,2521,2537,2544,2506,2504,2512,2554,2509;
- setarray .Shoes[0],2475,2476,2472,2477,2479,2480,2455,2467,2468,2469,2470,2421,2406,2433,2412,2404,2440,2450;
- end;
- }
- dicastes01,180,232,5 duplicate(Enchanted Smite) Enchanted Smite#01 743
- gonryun,137,117,5 duplicate(Enchanted Smite) Enchanted Smite#02 743
- prontlegend,201,177,3 duplicate(Enchanted Smite) Enchanted Smite#03 743
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement