Jump to content

Tupac

Members
  • Posts

    101
  • Joined

  • Last visited

About Tupac

  • Birthday 03/21/1996

Profile Information

  • Gender
    Male
  • Location
    BR
  • Server
    MBRO
  • Github: tupac

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

Tupac's Achievements

Poring

Poring (1/15)

5

Reputation

4

Community Answers

  1. prontera,164,203,6 script Quest Shop#1 998,{ callfunc "qshop"; } prontera,165,203,6 script Quest Shop#2 998,{ callfunc "qshop",1,2; } // call the shop 1 and 2 defined below prontera,165,203,6 script Quest Shop#2 998,{ callfunc "qshop",1; } // call the shop 1 prontera,165,203,6 script Quest Shop#2 998,{ callfunc "qshop",2; } // call the shop 2
  2. Tupac

    Enchant faw

    Thx, but i would like to keep script. @Nerfwood help, update script
  3. Qual hexed e data esta usando ?
  4. Hi iam use: //===== rAthena Script ======================================= //= Unofficial Fallen Angel Wing (FAW) Enchants //===== By: ================================================== //= Nerfwood //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= rAthena Project //===== Description: ========================================= //= Enchants FAW as per iROWiki's information //= Dialogue are unofficial //===== Additional Comments: ================================= //= 1.0 First Version //============================================================ //Decreasing Chance of Enchantment // 60% low, 30% mid, 10% high for 1st & 2nd enchant slot //40% low, 30% mid, 20% high, 10% special for 3rd enchant slot function script EnchantStat_1 { .chance = rand(1,10); if(.@card2 && .@card3) { //For 4th Slot aka 3rd Enchant Slot if(.chance<5) .x=0; else if(.chance<7) .x=1; else if(.chance<9) .x=2; else .x=3; } else { //For 2nd and 3rd card slot aka 1st and 2nd Enchant Slot if(.chance<7) .x=0; else if(.chance<10) .x=1; else .x=2; } return getelementofarray(getvariableofnpc( getd(".enc" + getarg(0) ) , "Dark Luhir"), .x ); } //Equal Chance of Enchanting function script EnchantStat_0 { if(.@card2 && .@card3) return getelementofarray(getvariableofnpc( getd(".enc" + getarg(0) ) , "Dark Luhir"), rand(0,3) ); else return getelementofarray(getvariableofnpc( getd(".enc" + getarg(0) ) , "Dark Luhir"), rand(0,2) ); } //=======MAIN NPC prontera,148,169,3 script Dark Luhir 403,{ mes .npc$; mes "I am here to enchant the", "magnificent ^000099"+getitemname(.faw)+"^000000.", "Would you like to enchant yours?"; if(countitem(2589)) { set .@menu$, "Enchant Fallen Angel Wing"; } else .@menu$=""; next; switch(select("Information:" + .@menu$ + ":Reset Enchantment")) { case 1: goto OnInformation; case 2: goto OnEnchantNow; case 3: goto OnResetEnchant; default: close; } OnInformation: mes .npc$, "I can enchant your", "^000099"+getitemname(.faw)+"^000000 for", (.cost?callfunc("F_InsertComma",.cost)+"z":"free")+" to give it various.", "effects. In fact, I can do it", "twice if its refinement level is", "+7 ~ +8, and thrice if its", "+9 and above."; next; mes .npc$, "The 3rd enchantment has a", "chance to be more powerful", "than the first two."; next; mes .npc$, "There is no chance to", "fail, so enchant away", "as much as you like."; next; mes .npc$, "But if you're not happy", "with the results, you can", "reset the enchantments", "for ^009900"+ callfunc("F_InsertComma",.cost2) + "z^000000."; next; mes .npc$, "That's about everything."; close; OnEnchantNow: mes .npc$; if( (getequipid(EQI_GARMENT)!=2589) ) { mes "Please equip your", "^000099Fallen Angel Wing^000000 if", "you want to have it enchanted."; if(!.autoequip) close; next; if(select("Equip:Don't Equip")==2) close; equip 2589; mes .npc$; } .@refeq = getequiprefinerycnt(EQI_GARMENT); if(.@refeq<7) .@refeq2 = 1; else if(.@refeq>8) .@refeq2 = 3; else .@refeq2 = 2; mes "You have a ^000099+" +.@refeq + " Fallen Angel Wing^000000.", "It can have a total of " + .@refeq2 + " enchantment" +( .@refeq2>1?"s.":".")+" Please"; mes "select your preferred","enchantment."; next; setd ".@enc$", select("Fighting Enchant:Magic Enchant:Archer Enchant:Critical/Fatal Enchant:Max HP Enchant:Max SP Enchant:ASPD Enchant:STR Enchant:AGI Enchant:DEX Enchant:VIT Enchant:INT Enchant:LUK Enchant"); if(.cost) callsub OnCostlyEnchant; .@card1 = getequipcardid(EQI_GARMENT,0); .@card2 = getequipcardid(EQI_GARMENT,1); .@card3 = getequipcardid(EQI_GARMENT,2); .@card4 = getequipcardid(EQI_GARMENT,3); if( .@card2 && .@card3 && .@card4) { mes .npc$, "Hmm.. it seems that all", "slots have already been enchanted."; close; } .@EnStat = callfunc( (.chancetype?"EnchantStat_1":"EnchantStat_0"), .@enc$) ; if(!.@card2) callsub OnFawEnchant , .@EnStat , .@card3 , .@card4 , .@refeq; else if(!.@card3 && .@refeq>6) callsub OnFawEnchant , .@card2 , .@EnStat , .@card4 , .@refeq; else if(!.@card4 && .@refeq>8) callsub OnFawEnchant , .@card2 , .@card3 , .@EnStat , .@refeq; else { mes .npc$, "Sorry, but your", "^000099"+getitemname(.faw)+"^000000's", "refinement level is too", "low to continue"; close; } mes .npc$, "Your ^000099"+getitemname(.faw)+"^000000 has", "been enchanted with ^000099"+getitemname(.@EnStat)+"^000000."; close; OnFawEnChant: if ( !countitem( 2589 ) ) { mes "You dont have the items."; close; } delitem2 2589, 1, 1, getarg(3), 0, .@card1, .@card2, .@card3, .@card4; getitem2 2589, 1, 1, getarg(3) , 0, .@card1, getarg(0), getarg(1), getarg(2); equip 2589; specialeffect2 1019; specialeffect2 98; return; OnResetEnchant: mes .npc$, "Irá precisar: 1x ^000099"+getitemname(.item)+"^000000.", "Você tem certeza?"; next; if(select("Sim:Não")==2) close; mes .npc$; if(countitem(6417)<1) { mes "Você não tem o item: ^000099"+getitemname(.item)+"^000000."; close; } delitem 6417,1; mes "Your ^000099"+getitemname(.faw)+"^000000's", "enchantments have been reset."; .@refeq = getequiprefinerycnt(EQI_GARMENT); .@card1 = getequipcardid(EQI_GARMENT,0); .@card2 = getequipcardid(EQI_GARMENT,1); .@card3 = getequipcardid(EQI_GARMENT,2); .@card4 = getequipcardid(EQI_GARMENT,3); delitem2 2589, 1, 1, .@refeq, 0, .@card1, .@card2, .@card3, .@card4; getitem2 2589, 1, 1, .@refeq, 0, .@card1, 0, 0, 0; equip 2589; specialeffect2 261; specialeffect2 119; close; //Only called when .cost is defined OnCostlyEnchant: if(Zeny<.cost) { mes .npc$, "You don't have enough zeny."; close; } Zeny -= .cost; return; OnInit: .npc$ = "[^AA0000Valkyrie^000000]"; setarray .enc1[0], 4809,4808,4820, 4821; //Fighting 3~5 setarray .enc2[0], 4812,4826,4827, 4828; //Magic 4~6 setarray .enc3[0], 4832,4833,4834, 4835; //Expert Arc 1~3 setarray .enc4[0], 4863,4864,4865, 4866; //Fatal 1~3 setarray .enc5[0], 4861,4862,4867, 4868; //MHPP 1~3% setarray .enc6[0], 4870,4800,4871, 4801; //MaxSP 25,50,75 setarray .enc7[0], 4869,4872,4873, 4807; //ASPD 1~3 // setarray .enc7[0], 4869,4872,4873, 4881; //ASPD 1~3 setarray .enc8[0], 4702,4703,4704, 4853; //STR 3~5 | Special Str setarray .enc9[0], 4731,4732,4733, 4854; //AGI 2~4 setarray .enc10[0], 4722,4723,4724, 4857; //DEX 3~5 setarray .enc11[0], 4742,4743,4744, 4855; //VIT 3~5 setarray .enc12[0], 4712,4713,4714, 4856; //INT 3~5 setarray .enc13[0], 4752,4753,4754, 4858; //LUK 3~5 // 1 = 60% low, 30% mid, 10% high for 1st & 2nd enchant slot && 40% low, 30% mid, 20% high, 10% special for 3rd enchant slot // 0 = Equal Chance .chancetype = 0; //Turn on Equip Selection if garment is unequipped? 1 = Yes .autoequip = 0; //Cost for Enchanting. It's free in iRO .cost=6000000; //Cost to reset | Costs 1Mz in iRO .cost2 = 6000000; .faw = 2589; .item = 6417; } Error on 2nd enchant: [Error]: buildin_delitem2: failed to delete 1 items (AID=2000000 item_id=2589).
  5. Qual hexed esta usando ? e qual esta configurado? Possui algum script custom ?
  6. Solved Before: getitem2 .@item, 1, 1, .@s_item_refine, 0, 0, 0, 0, 0; after: getitem2 .@item, 1, 1, .@s_item_refine, 0, .@card0, 0, 0, 0;
  7. Hi, how modify script do not remove cards ? just enchants of fourth slot. //===== rAthena Script ======================================= //= saders enchant npc //===== By: ================================================== //= Sader1992 //https://rathena.org/board/profile/30766-sader1992/ //===== Current Version: ===================================== //= 2.6 //===== Compatible With: ===================================== //= rAthena Project //https://rathena.org/board/files/file/3602-saders-enchantment-npc/ //https://github.com/sader1992/sader_scripts //===== Description: ========================================= //============================================================ //============================================================ prontera,157,176,6 script Encantamentos 998,{ disable_items; if(.s_only_vip){ if(!vip_status(VIP_STATUS_ACTIVE)){ mes "this service only for vip"; close; } } if (BaseLevel < .s_level_required[0]){ mes "Your level is too Low."; mes " "; mes "Minimum level "+.s_level_required[0]+"."; close; }else if(BaseLevel > .s_level_required[1]){ mes "Your level is too High."; mes " "; mes "Maximum level "+.s_level_required[1]+"."; close; } mes "Ola!"; mes "Você quer encantar seus equipamentos?"; mes "Eu sou o melhor encantador do mundo!"; next; if(.s_zeny > 0) mes "isso vai te custar " + .s_zeny + " Zenys !"; mes "e 1x <ITEM>Ticket encantamento<INFO>7717</INFO></ITEM>."; if(.item_is_required) mes "e 1x ticket encantamento"; mes "Eu farei o meu melhor para encantá-lo com sucesso!"; next; .@string$[0] = "Encantar"; if(.remove_enchant) .@string$[1] = "Remover Encantamento"; if(.enable_the_shop) .@string$[2] = "The Items you can enchant"; mes "O que deseja fazer ?"; menu .@string$[0],L_Enchant,.@string$[1],L_Remove,.@string$[2],-; callsub Q_shop; end; L_Remove: .@remove_orbs = true; L_Enchant: next; mes "Por favor, selecione o item."; for(.@i=0; .@i<getarraysize(.s_all$); .@i++) if(getequipid(.s_all_loc[.@i])>-1) { set .@armor_menu$, .@armor_menu$ + .s_all$[.@i] + " - [ ^E81B02" + getitemname(getequipid(.s_all_loc[.@i])) + "^000000 ]:"; }else{ set .@armor_menu$, .@armor_menu$ + .s_all$[.@i] + " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; } set .@s_all_selected, select(.@armor_menu$) -1; if(getequipid(.s_all_loc[.@s_all_selected])< 0){ mes "Você não tem item equipado aí"; close; } if (countitem(getequipid(.s_all_loc[.@s_all_selected])) > 1){ mes "você tem mais de um item"; mes "que você deseja encantar"; close; } .@s_item_refine = getequiprefinerycnt(.s_all_loc[.@s_all_selected]); if( getd(".specific_" + .s_all$[.@s_all_selected] + "s") ==1){ for(.@i=0;.@i<getarraysize(getd("." + .s_all$[.@s_all_selected] + "s$"));.@i++){ if(getequipid(.s_all_loc[.@s_all_selected]) == atoi(getd("." + .s_all$[.@s_all_selected] + "s$["+.@i+"]"))){ .@good_to_go = true; } } }else{ for(.@i=0;.@i<getarraysize(.black_list$);.@i++){ if(getequipid(.s_all_loc[.@s_all_selected]) == atoi(.black_list$[.@i])){ .@black_list_item = true; } } .@good_to_go = true; } if(!.@good_to_go || .@black_list_item){ mes "sorry"; mes " i can't enchant this item."; close; } .@card0 = getequipcardid(.s_all_loc[.@s_all_selected],0); .@card1 = getequipcardid(.s_all_loc[.@s_all_selected],1); .@card2 = getequipcardid(.s_all_loc[.@s_all_selected],2); .@card3 = getequipcardid(.s_all_loc[.@s_all_selected],3); if(.@remove_orbs){ next; mes "isso irá remover todas as cartas e encantamentos!"; if (.s_zeny_remove > 0) { mes "Isto vai te custar " + .s_zeny_remove + " Zeny."; } mes "Você tem certeza?"; switch(select("Não:Sim")){ case 1: end; case 2: mes "Pela última vez!"; mes "você tem certeza?"; switch(select("Não:Sim")){ case 1: end; case 2: if (Zeny < .s_zeny_remove) { mes "Você não tem zeny suficiente."; close; } if(.select_remove_orb){ if(.@card0 == 0).@card0$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card0$ = getitemname(.@card0); if(.@card1 == 0).@card1$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card1$ = getitemname(.@card1); if(.@card2 == 0).@card2$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card2$ = getitemname(.@card2); if(.@card3 == 0).@card3$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card3$ = getitemname(.@card3); switch(select(.@card0$,.@card1$,.@card2$,.@card3$)){ case 1: .@card0 = 0; break; case 2: .@card1 = 0; break; case 3: .@card2 = 0; break; case 4: .@card3 = 0; break; } specialeffect2 EF_REPAIRWEAPON; set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, .@s_item_refine, 0, .@card0, .@card1, .@card2, .@card3; set Zeny, Zeny-.s_zeny_remove; end; } specialeffect2 EF_REPAIRWEAPON; set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, .@s_item_refine, 0, 0, 0, 0, 0; set Zeny, Zeny-.s_zeny_remove; end; } } } if(.chosse_orb){ next; mes "select the orb you want"; for(.@i=0; .@i<getarraysize(getd("." + .s_all$[.@s_all_selected] + "$")); .@i++) set .@orb_menu$, .@orb_menu$ + getitemname(atoi(getd("." + .s_all$[.@s_all_selected] + "$["+.@i+"]"))) + ":"; set .@s_orb_selected, select(.@orb_menu$) -1; .@selected_orb_id = getd("." + .s_all$[.@s_all_selected] + "$["+.@s_orb_selected+"]"); }else{ .@selected_orb_size = rand(getarraysize(getd("." + .s_all$[.@s_all_selected] + "$"))); .@selected_orb_id = getd("." + .s_all$[.@s_all_selected] + "$["+.@selected_orb_size+"]"); } next; mes "Slot"; for(.@i=getd(".slot_count_" + .s_all$[.@s_all_selected]); .@i<4; .@i++) if(getequipcardid(.s_all_loc[.@s_all_selected],.@i)!= null) { set .@slot_menu$, .@slot_menu$ + " [ ^E81B02" + getitemname(getequipcardid(.s_all_loc[.@s_all_selected],.@i)) + "^000000 ]:"; }else{ set .@slot_menu$, .@slot_menu$ + " [ ^D6C4E8" + "Empty" + "^000000 ]:"; } set .@s_slot_selected, select(.@slot_menu$) -1; .@s_slot_selected += getd(".slot_count_" + .s_all$[.@s_all_selected]); if(!.s_enchant_overwrite){ if(getequipcardid(.s_all_loc[.@s_all_selected],.@s_slot_selected) > 0){ mes "you already have orb in this slot"; close; } } if (Zeny < .s_zeny) { mes "Sorry, but you don't have enough zeny."; close; } if(.item_is_required && .chosse_orb){ if (countitem(.@selected_orb_id) < 1){ mes"you don't have enchant orb"; close; } } close2; set Zeny, Zeny-.s_zeny; if(!countitem(7717)){ mes "Você precisa de 1x " + getitemname(7717) + " para encantar."; end; } specialeffect2 EF_MAPPILLAR; progressbar "ffff00",.progress_time; delitem 7717,1; if(.item_is_required && .chosse_orb){delitem .@selected_orb_id,1;} if (rand(100) < .success_chanse[.@s_slot_selected]){ mes "Sucesso!"; specialeffect2 154; setd(".@card" + .@s_slot_selected, .@selected_orb_id); set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, .@s_item_refine, 0, .@card0, .@card1, .@card2, .@card3; equip .@item; close; }else{ specialeffect2 155; mes "I am sorry"; mes "We did Fail"; specialeffect2 EF_PHARMACY_FAIL; if (rand(100) < .brack_chance){ set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; mes "and it broke!!"; specialeffect EF_SUI_EXPLOSION; } close; } Q_shop: switch(select("Weapons:Armors:Shields:Germents:Shoses:Accessarys:Uppers:Middels:Lowers")){ case 1: callshop "enchantable_items_Weapon",1; break; case 2: callshop "enchantable_items_Armor",1; break; case 3: callshop "enchantable_items_Shield",1; break; case 4: callshop "enchantable_items_Germent",1; break; case 5: callshop "enchantable_items_Shose",1; break; case 6: callshop "enchantable_items_Accessary",1; break; case 7: callshop "enchantable_items_Upper",1; break; case 8: callshop "enchantable_items_Middel",1; break; case 9: callshop "enchantable_items_Lower",1; break; } end; OnInit: //--------------------------------------------------------------// //--------------------------------------------------------------// //-------------------- configuration -----------------------// //--------------------------------------------------------------// //--------------------------------------------------------------// //--------------------------------------------------------------// //if you want to remove one from the menu you need to remove it down too!! /or add //--------------------------------------------------------------// setarray .s_all$,"Armadura","Meio"; setarray .s_all_loc,EQI_ARMOR,EQI_HEAD_MID; //--------------------------------------------------------------// //Orbs IDs (Note : Shield = left hand so the weapon on the left hand count as Shield too! //--------------------------------------------------------------// //setarray .Weapon$,4741,4933,4861,4762,4934; //right handed weapons setarray .Armadura$,4700,4701,4702,4730,4731,4732,4740,4741,4742,4710,4711,4712,4720,4721,4722,4750,4751,4752,4760,4761,4806,4861,4862,4867,4870,4800,4871; //Armors //setarray .Shield$,4861,4762,4934; //Shields and left hand weapons //setarray .Germent$,4741,4933,4861,4762,4934; //Germent //setarray .Shose$,4741,4933,4861,4762,4934; //Shose //setarray .Accessary$,4741,4933,4861,4762,4934; //orbs id //setarray .Upper$,4741,4933,4861,4762,4934; //Accessary setarray .Meio$,4700,4701,4702,4730,4731,4732,4740,4741,4742,4710,4711,4712,4720,4721,4722,4750,4751,4752,4760,4761,4806,4861,4862,4867,4870,4800,4871; //Middel //setarray .Lower$,4741,4933,4861,4762,4934; //Lower //--------------------------------------------------------------// //if you want to put specific IDs for kind of gear put it to 1 //--------------------------------------------------------------// .specific_Weapons = false; .specific_Armaduras = false; .specific_Shields = false; .specific_Germents = false; .specific_Shoses = false; .specific_Accessarys = false; .specific_Uppers = false; .specific_Meios = false; .specific_Lowers = false; //--------------------------------------------------------------// //if specific put the IDs here //--------------------------------------------------------------// setarray .Weapons$,1601,1201,1204,1207,1210,1213,1216,1219,1222,1247,1248,1249; //right handed weapons setarray .Armaduras$,2301,2303,2305,2307,2307,2309,2312,2314,2316,2321,2323,2325,2328,2330,2332; //Armors setarray .Shields$,2101,2103,2105,2107,2113,2117; //Shields and left hand weapons setarray .Germents$,2512,2501,2503,2505; //Germents setarray .Shoses$,2416,2401,2403,2405,2411; //Shoses setarray .Accessarys$,2628,2608,2609,2612,2613,2627; //Accessarys setarray .Uppers$,2206,2208,2211,2216; //Uppers setarray .Meios$,2204,2202; //Meios setarray .Lowers$,2628,2206; //Lowers //--------------------------------------------------------------// //if not specific put the black list IDs here (if you want //--------------------------------------------------------------// setarray .black_list$,2335,2338,2340,2341; //--------------------------------------------------------------// //here you can make a specific slot number for each kind //0 = all 4 slot ,1 = last 3 slot ,2 = last 2 slot ,3 = last 1 slot //--------------------------------------------------------------// .slot_count_Weapon = 0; .slot_count_Armadura = 3; .slot_count_Shield = 0; .slot_count_Germent = 0; .slot_count_Shose = 0; .slot_count_Accessary = 0; .slot_count_Upper = 0; .slot_count_Meio = 3; .slot_count_Lower = 0; //--------------------------------------------------------------// //other configuration //--------------------------------------------------------------// setarray .s_level_required,0,175; //the level required to use the npc .s_only_vip = false; //if you want only vip to use it put it to 1 setarray .success_chanse,100,100,100,100; //success chanse [1st_slot_chanse,2nd_slot_chanse,3rd_slot_chanse,4th_slot_chanse] .s_zeny = 5000000; //if you don't want zeny requirment set it to 0 .s_zeny_remove = 10000000; //this for enchantment reset .item_is_required = false; //if you want the orb it self to be required true = yes , false = no(if .chosse_orb = false this will be false too) .s_enchant_overwrite = false; //if true then you can overwrite the enchant .progress_time = 1; //the time that needed to wait until the socket end .chosse_orb = false; //false = random ,true = yes .brack_chance = 0; //the chanse that it will brack if it fail .remove_enchant = true; //false = no ,true = yes .select_remove_orb = false; //--------------------------------------------------------------// //this will only show the items that the npc can enchant in a shop but no one can buy from it as long as you don't give them the value //--------------------------------------------------------------// .enable_the_shop = false; //--------------------------------------------------------------// //Do not edit here //--------------------------------------------------------------// npcshopdelitem "enchantable_items_Weapon",512; npcshopdelitem "enchantable_items_Armor",512; npcshopdelitem "enchantable_items_Shield",512; npcshopdelitem "enchantable_items_Germent",512; npcshopdelitem "enchantable_items_Shose",512; npcshopdelitem "enchantable_items_Accessary",512; npcshopdelitem "enchantable_items_Upper",512; npcshopdelitem "enchantable_items_Middel",512; npcshopdelitem "enchantable_items_Lower",512; for (.@i = 0; .@i < getarraysize(.Weapons$); .@i++) npcshopadditem "enchantable_items_Weapon", atoi(.Weapons$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Armors$); .@i++) npcshopadditem "enchantable_items_Armor", atoi(.Armors$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Shields$); .@i++) npcshopadditem "enchantable_items_Shield", atoi(.Shields$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Germents$); .@i++) npcshopadditem "enchantable_items_Germent", atoi(.Germents$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Shoses$); .@i++) npcshopadditem "enchantable_items_Shose", atoi(.Shoses$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Accessarys$); .@i++) npcshopadditem "enchantable_items_Accessary", atoi(.Accessarys$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Uppers$); .@i++) npcshopadditem "enchantable_items_Upper", atoi(.Uppers$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Middels$); .@i++) npcshopadditem "enchantable_items_Middel", atoi(.Middels$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Lowers$); .@i++) npcshopadditem "enchantable_items_Lower", atoi(.Lowers$[.@i]),1; end; } - pointshop enchantable_items_Weapon -1,#YOU_CAN_ENCHANT_Weapons,512:1; - pointshop enchantable_items_Armor -1,#YOU_CAN_ENCHANT_Armors,512:1; - pointshop enchantable_items_Shield -1,#YOU_CAN_ENCHANT_Shields,512:1; - pointshop enchantable_items_Germent -1,#YOU_CAN_ENCHANT_Germents,512:1; - pointshop enchantable_items_Shose -1,#YOU_CAN_ENCHANT_Shoses,512:1; - pointshop enchantable_items_Accessary -1,#YOU_CAN_ENCHANT_Accessarys,512:1; - pointshop enchantable_items_Upper -1,#YOU_CAN_ENCHANT_Uppers,512:1; - pointshop enchantable_items_Middel -1,#YOU_CAN_ENCHANT_Middels,512:1; - pointshop enchantable_items_Lower -1,#YOU_CAN_ENCHANT_Lowers,512:1;
  8. Thx Sader, nice script!
  9. Hi, how modify scrip: //===== rAthena Script ======================================= //= saders enchant npc //===== By: ================================================== //= Sader1992 //https://rathena.org/board/profile/30766-sader1992/ //===== Current Version: ===================================== //= 2.6 //===== Compatible With: ===================================== //= rAthena Project //https://rathena.org/board/files/file/3602-saders-enchantment-npc/ //https://github.com/sader1992/sader_scripts //===== Description: ========================================= //============================================================ //============================================================ prontera,157,176,6 script sader enchant 998,{ disable_items; if(.s_only_vip){ if(!vip_status(VIP_STATUS_ACTIVE)){ mes "this service only for vip"; close; } } if (BaseLevel < .s_level_required[0]){ mes "Your level is too Low."; mes " "; mes "Minimum level "+.s_level_required[0]+"."; close; }else if(BaseLevel > .s_level_required[1]){ mes "Your level is too High."; mes " "; mes "Maximum level "+.s_level_required[1]+"."; close; } mes "Hello!"; mes "Do you want to enchant you items!"; mes "I am the best enchanter in the world!"; next; if(.s_zeny > 0) mes "isso vai te custar " + .s_zeny + " Zenys !"; if(.item_is_required) mes "e 1x ticket encantamento"; mes "i will do my best to enchant it Successfully!"; mes "but remember"; mes "There is luck in this work too."; next; mes "please if you have items same"; mes "as the item you want to enchant"; mes "but them in the storage and come back to me!"; next; .@string$[0] = "Enchant"; if(.remove_enchant) .@string$[1] = "Remove Enchant"; if(.enable_the_shop) .@string$[2] = "The Items you can enchant"; mes "so what you want to do!"; menu .@string$[0],L_Enchant,.@string$[1],L_Remove,.@string$[2],-; callsub Q_shop; end; L_Remove: .@remove_orbs = true; L_Enchant: next; mes "please select the item you want to enchant"; for(.@i=0; .@i<getarraysize(.s_all$); .@i++) if(getequipid(.s_all_loc[.@i])>-1) { set .@armor_menu$, .@armor_menu$ + .s_all$[.@i] + " - [ ^E81B02" + getitemname(getequipid(.s_all_loc[.@i])) + "^000000 ]:"; }else{ set .@armor_menu$, .@armor_menu$ + .s_all$[.@i] + " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; } set .@s_all_selected, select(.@armor_menu$) -1; if(getequipid(.s_all_loc[.@s_all_selected])< 0){ mes "you don't have item equiped there"; close; } if (countitem(getequipid(.s_all_loc[.@s_all_selected])) > 1){ mes "you have more then one item"; mes "from the item that you want to enchant"; close; } .@s_item_refine = getequiprefinerycnt(.s_all_loc[.@s_all_selected]); if( getd(".specific_" + .s_all$[.@s_all_selected] + "s") ==1){ for(.@i=0;.@i<getarraysize(getd("." + .s_all$[.@s_all_selected] + "s$"));.@i++){ if(getequipid(.s_all_loc[.@s_all_selected]) == atoi(getd("." + .s_all$[.@s_all_selected] + "s$["+.@i+"]"))){ .@good_to_go = true; } } }else{ for(.@i=0;.@i<getarraysize(.black_list$);.@i++){ if(getequipid(.s_all_loc[.@s_all_selected]) == atoi(.black_list$[.@i])){ .@black_list_item = true; } } .@good_to_go = true; } if(!.@good_to_go || .@black_list_item){ mes "sorry"; mes " i can't enchant this item."; close; } .@card0 = getequipcardid(.s_all_loc[.@s_all_selected],0); .@card1 = getequipcardid(.s_all_loc[.@s_all_selected],1); .@card2 = getequipcardid(.s_all_loc[.@s_all_selected],2); .@card3 = getequipcardid(.s_all_loc[.@s_all_selected],3); if(.@remove_orbs){ next; mes "this will remove all the cards and orbs inside the item!"; if (.s_zeny_remove > 0) { mes "this will cost you " + .s_zeny_remove + " Zeny."; } mes "are you sure?"; switch(select("NO:Yes")){ case 1: end; case 2: mes "for the last time!"; mes "are you sure?"; switch(select("NO:Yes")){ case 1: end; case 2: if (Zeny < .s_zeny_remove) { mes "Sorry, but you don't have enough zeny."; close; } if(.select_remove_orb){ if(.@card0 == 0).@card0$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card0$ = getitemname(.@card0); if(.@card1 == 0).@card1$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card1$ = getitemname(.@card1); if(.@card2 == 0).@card2$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card2$ = getitemname(.@card2); if(.@card3 == 0).@card3$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else .@card3$ = getitemname(.@card3); switch(select(.@card0$,.@card1$,.@card2$,.@card3$)){ case 1: .@card0 = 0; break; case 2: .@card1 = 0; break; case 3: .@card2 = 0; break; case 4: .@card3 = 0; break; } specialeffect2 EF_REPAIRWEAPON; set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, .@s_item_refine, 0, .@card0, .@card1, .@card2, .@card3; set Zeny, Zeny-.s_zeny_remove; end; } specialeffect2 EF_REPAIRWEAPON; set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, .@s_item_refine, 0, 0, 0, 0, 0; set Zeny, Zeny-.s_zeny_remove; end; } } } if(.chosse_orb){ next; mes "select the orb you want"; for(.@i=0; .@i<getarraysize(getd("." + .s_all$[.@s_all_selected] + "$")); .@i++) set .@orb_menu$, .@orb_menu$ + getitemname(atoi(getd("." + .s_all$[.@s_all_selected] + "$["+.@i+"]"))) + ":"; set .@s_orb_selected, select(.@orb_menu$) -1; .@selected_orb_id = getd("." + .s_all$[.@s_all_selected] + "$["+.@s_orb_selected+"]"); }else{ .@selected_orb_size = rand(getarraysize(getd("." + .s_all$[.@s_all_selected] + "$"))); .@selected_orb_id = getd("." + .s_all$[.@s_all_selected] + "$["+.@selected_orb_size+"]"); } next; mes "which slot ?"; for(.@i=getd(".slot_count_" + .s_all$[.@s_all_selected]); .@i<4; .@i++) if(getequipcardid(.s_all_loc[.@s_all_selected],.@i)!= null) { set .@slot_menu$, .@slot_menu$ + " [ ^E81B02" + getitemname(getequipcardid(.s_all_loc[.@s_all_selected],.@i)) + "^000000 ]:"; }else{ set .@slot_menu$, .@slot_menu$ + " [ ^D6C4E8" + "Empty" + "^000000 ]:"; } set .@s_slot_selected, select(.@slot_menu$) -1; .@s_slot_selected += getd(".slot_count_" + .s_all$[.@s_all_selected]); if(!.s_enchant_overwrite){ if(getequipcardid(.s_all_loc[.@s_all_selected],.@s_slot_selected) > 0){ mes "you already have orb in this slot"; close; } } if (Zeny < .s_zeny) { mes "Sorry, but you don't have enough zeny."; close; } if(.item_is_required && .chosse_orb){ if (countitem(.@selected_orb_id) < 1){ mes"you don't have enchant orb"; close; } } close2; specialeffect2 EF_MAPPILLAR; progressbar "ffff00",.progress_time; set Zeny, Zeny-.s_zeny; if(.item_is_required && .chosse_orb){delitem .@selected_orb_id,1;} if (rand(100) < .success_chanse[.@s_slot_selected]){ mes "We did it!"; specialeffect2 154; setd(".@card" + .@s_slot_selected, .@selected_orb_id); set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; getitem2 .@item, 1, 1, .@s_item_refine, 0, .@card0, .@card1, .@card2, .@card3; equip .@item; close; }else{ specialeffect2 155; mes "I am sorry"; mes "We did Fail"; specialeffect2 EF_PHARMACY_FAIL; if (rand(100) < .brack_chance){ set .@item, getequipid(.s_all_loc[.@s_all_selected]); delitem .@item,1; mes "and it broke!!"; specialeffect EF_SUI_EXPLOSION; } close; } Q_shop: switch(select("Weapons:Armors:Shields:Germents:Shoses:Accessarys:Uppers:Middels:Lowers")){ case 1: callshop "enchantable_items_Weapon",1; break; case 2: callshop "enchantable_items_Armor",1; break; case 3: callshop "enchantable_items_Shield",1; break; case 4: callshop "enchantable_items_Germent",1; break; case 5: callshop "enchantable_items_Shose",1; break; case 6: callshop "enchantable_items_Accessary",1; break; case 7: callshop "enchantable_items_Upper",1; break; case 8: callshop "enchantable_items_Middel",1; break; case 9: callshop "enchantable_items_Lower",1; break; } end; OnInit: //--------------------------------------------------------------// //--------------------------------------------------------------// //-------------------- configuration -----------------------// //--------------------------------------------------------------// //--------------------------------------------------------------// //--------------------------------------------------------------// //if you want to remove one from the menu you need to remove it down too!! /or add //--------------------------------------------------------------// setarray .s_all$,"Armadura","Meio"; setarray .s_all_loc,EQI_ARMOR,EQI_HEAD_MID; //--------------------------------------------------------------// //Orbs IDs (Note : Shield = left hand so the weapon on the left hand count as Shield too! //--------------------------------------------------------------// //setarray .Weapon$,4741,4933,4861,4762,4934; //right handed weapons setarray .Armadura$,4700,4701,4702,4730,4731,4732,4740,4741,4742,4710,4711,4712,4720,4721,4722,4750,4751,4752,4760,4761,4806,4861,4862,4867,4870,4800,4871; //Armors //setarray .Shield$,4861,4762,4934; //Shields and left hand weapons //setarray .Germent$,4741,4933,4861,4762,4934; //Germent //setarray .Shose$,4741,4933,4861,4762,4934; //Shose //setarray .Accessary$,4741,4933,4861,4762,4934; //orbs id //setarray .Upper$,4741,4933,4861,4762,4934; //Accessary setarray .Meio$,4700,4701,4702,4730,4731,4732,4740,4741,4742,4710,4711,4712,4720,4721,4722,4750,4751,4752,4760,4761,4806,4861,4862,4867,4870,4800,4871; //Middel //setarray .Lower$,4741,4933,4861,4762,4934; //Lower //--------------------------------------------------------------// //if you want to put specific IDs for kind of gear put it to 1 //--------------------------------------------------------------// .specific_Weapons = false; .specific_Armaduras = false; .specific_Shields = false; .specific_Germents = false; .specific_Shoses = false; .specific_Accessarys = false; .specific_Uppers = false; .specific_Meios = false; .specific_Lowers = false; //--------------------------------------------------------------// //if specific put the IDs here //--------------------------------------------------------------// setarray .Weapons$,1601,1201,1204,1207,1210,1213,1216,1219,1222,1247,1248,1249; //right handed weapons setarray .Armaduras$,2301,2303,2305,2307,2307,2309,2312,2314,2316,2321,2323,2325,2328,2330,2332; //Armors setarray .Shields$,2101,2103,2105,2107,2113,2117; //Shields and left hand weapons setarray .Germents$,2512,2501,2503,2505; //Germents setarray .Shoses$,2416,2401,2403,2405,2411; //Shoses setarray .Accessarys$,2628,2608,2609,2612,2613,2627; //Accessarys setarray .Uppers$,2206,2208,2211,2216; //Uppers setarray .Meios$,2204,2202; //Meios setarray .Lowers$,2628,2206; //Lowers //--------------------------------------------------------------// //if not specific put the black list IDs here (if you want //--------------------------------------------------------------// setarray .black_list$,2335,2338,2340,2341; //--------------------------------------------------------------// //here you can make a specific slot number for each kind //0 = all 4 slot ,1 = last 3 slot ,2 = last 2 slot ,3 = last 1 slot //--------------------------------------------------------------// .slot_count_Weapon = 0; .slot_count_Armadura = 3; .slot_count_Shield = 0; .slot_count_Germent = 0; .slot_count_Shose = 0; .slot_count_Accessary = 0; .slot_count_Upper = 0; .slot_count_Meio = 3; .slot_count_Lower = 0; //--------------------------------------------------------------// //other configuration //--------------------------------------------------------------// setarray .s_level_required,0,175; //the level required to use the npc .s_only_vip = false; //if you want only vip to use it put it to 1 setarray .success_chanse,100,100,100,100; //success chanse [1st_slot_chanse,2nd_slot_chanse,3rd_slot_chanse,4th_slot_chanse] .s_zeny = 5000000; //if you don't want zeny requirment set it to 0 .s_zeny_remove = 10000000; //this for enchantment reset .item_is_required = false; //if you want the orb it self to be required true = yes , false = no(if .chosse_orb = false this will be false too) .s_enchant_overwrite = false; //if true then you can overwrite the enchant .progress_time = 1; //the time that needed to wait until the socket end .chosse_orb = false; //false = random ,true = yes .brack_chance = 0; //the chanse that it will brack if it fail .remove_enchant = true; //false = no ,true = yes .select_remove_orb = false; //--------------------------------------------------------------// //this will only show the items that the npc can enchant in a shop but no one can buy from it as long as you don't give them the value //--------------------------------------------------------------// .enable_the_shop = false; //--------------------------------------------------------------// //Do not edit here //--------------------------------------------------------------// npcshopdelitem "enchantable_items_Weapon",512; npcshopdelitem "enchantable_items_Armor",512; npcshopdelitem "enchantable_items_Shield",512; npcshopdelitem "enchantable_items_Germent",512; npcshopdelitem "enchantable_items_Shose",512; npcshopdelitem "enchantable_items_Accessary",512; npcshopdelitem "enchantable_items_Upper",512; npcshopdelitem "enchantable_items_Middel",512; npcshopdelitem "enchantable_items_Lower",512; for (.@i = 0; .@i < getarraysize(.Weapons$); .@i++) npcshopadditem "enchantable_items_Weapon", atoi(.Weapons$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Armors$); .@i++) npcshopadditem "enchantable_items_Armor", atoi(.Armors$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Shields$); .@i++) npcshopadditem "enchantable_items_Shield", atoi(.Shields$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Germents$); .@i++) npcshopadditem "enchantable_items_Germent", atoi(.Germents$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Shoses$); .@i++) npcshopadditem "enchantable_items_Shose", atoi(.Shoses$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Accessarys$); .@i++) npcshopadditem "enchantable_items_Accessary", atoi(.Accessarys$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Uppers$); .@i++) npcshopadditem "enchantable_items_Upper", atoi(.Uppers$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Middels$); .@i++) npcshopadditem "enchantable_items_Middel", atoi(.Middels$[.@i]),1; for (.@i = 0; .@i < getarraysize(.Lowers$); .@i++) npcshopadditem "enchantable_items_Lower", atoi(.Lowers$[.@i]),1; end; } - pointshop enchantable_items_Weapon -1,#YOU_CAN_ENCHANT_Weapons,512:1; - pointshop enchantable_items_Armor -1,#YOU_CAN_ENCHANT_Armors,512:1; - pointshop enchantable_items_Shield -1,#YOU_CAN_ENCHANT_Shields,512:1; - pointshop enchantable_items_Germent -1,#YOU_CAN_ENCHANT_Germents,512:1; - pointshop enchantable_items_Shose -1,#YOU_CAN_ENCHANT_Shoses,512:1; - pointshop enchantable_items_Accessary -1,#YOU_CAN_ENCHANT_Accessarys,512:1; - pointshop enchantable_items_Upper -1,#YOU_CAN_ENCHANT_Uppers,512:1; - pointshop enchantable_items_Middel -1,#YOU_CAN_ENCHANT_Middels,512:1; - pointshop enchantable_items_Lower -1,#YOU_CAN_ENCHANT_Lowers,512:1; require item id: 7716
  10. Tupac

    Addon VoteForPoints

    @edit No solved. Not working, 'PointsType' => "vote", // credit, vote, cash
  11. Error @joinevent Events: Zombie
  12. iam user on my server: ExtendedBG_rev7 this error ocurred on capture the flag:
×
×
  • Create New...