spawnn

Members
  • Content Count

    95
  • Avg. Content Per Day

    0
  • Joined

  • Last visited

Community Reputation

1 Neutral

About spawnn

  • Rank
    Santa Poring

Profile Information

  • Gender
    Male
  • Location
    US
  • Server
    NWPRO

Recent Profile Visitors

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

  1. Solved Before: getitem2 [email protected], 1, 1, [email protected]_item_refine, 0, 0, 0, 0, 0; after: getitem2 [email protected], 1, 1, [email protected]_item_refine, 0, [email protected], 0, 0, 0;
  2. 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; [email protected]$[0] = "Encantar"; if(.remove_enchant) [email protected]$[1] = "Remover Encantamento"; if(.enable_the_shop) [email protected]$[2] = "The Items you can enchant"; mes "O que deseja fazer ?"; menu [email protected]$[0],L_Enchant,[email protected]$[1],L_Remove,[email protected]$[2],-; callsub Q_shop; end; L_Remove: [email protected]_orbs = true; L_Enchant: next; mes "Por favor, selecione o item."; for([email protected]=0; [email protected]<getarraysize(.s_all$); [email protected]++) if(getequipid(.s_all_loc[[email protected]])>-1) { set [email protected]_menu$, [email protected]_menu$ + .s_all$[[email protected]] + " - [ ^E81B02" + getitemname(getequipid(.s_all_loc[[email protected]])) + "^000000 ]:"; }else{ set [email protected]_menu$, [email protected]_menu$ + .s_all$[[email protected]] + " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; } set [email protected]_all_selected, select([email protected]_menu$) -1; if(getequipid(.s_all_loc[[email protected]_all_selected])< 0){ mes "Você não tem item equipado aí"; close; } if (countitem(getequipid(.s_all_loc[[email protected]_all_selected])) > 1){ mes "você tem mais de um item"; mes "que você deseja encantar"; close; } [email protected]_item_refine = getequiprefinerycnt(.s_all_loc[[email protected]_all_selected]); if( getd(".specific_" + .s_all$[[email protected]_all_selected] + "s") ==1){ for([email protected]=0;[email protected]<getarraysize(getd("." + .s_all$[[email protected]_all_selected] + "s$"));[email protected]++){ if(getequipid(.s_all_loc[[email protected]_all_selected]) == atoi(getd("." + .s_all$[[email protected]_all_selected] + "s$["[email protected]+"]"))){ [email protected]_to_go = true; } } }else{ for([email protected]=0;[email protected]<getarraysize(.black_list$);[email protected]++){ if(getequipid(.s_all_loc[[email protected]_all_selected]) == atoi(.black_list$[[email protected]])){ [email protected]_list_item = true; } } [email protected]_to_go = true; } if([email protected]_to_go || [email protected]_list_item){ mes "sorry"; mes " i can't enchant this item."; close; } [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],0); [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],1); [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],2); [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],3); if([email protected]_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([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); if([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); if([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); if([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); switch(select([email protected]$,[email protected]$,[email protected]$,[email protected]$)){ case 1: [email protected] = 0; break; case 2: [email protected] = 0; break; case 3: [email protected] = 0; break; case 4: [email protected] = 0; break; } specialeffect2 EF_REPAIRWEAPON; set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],1; getitem2 [email protected], 1, 1, [email protected]_item_refine, 0, [email protected], [email protected], [email protected], [email protected]; set Zeny, Zeny-.s_zeny_remove; end; } specialeffect2 EF_REPAIRWEAPON; set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],1; getitem2 [email protected], 1, 1, [email protected]_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([email protected]=0; [email protected]<getarraysize(getd("." + .s_all$[[email protected]_all_selected] + "$")); [email protected]++) set [email protected]_menu$, [email protected]_menu$ + getitemname(atoi(getd("." + .s_all$[[email protected]_all_selected] + "$["[email protected]+"]"))) + ":"; set [email protected]_orb_selected, select([email protected]_menu$) -1; [email protected]_orb_id = getd("." + .s_all$[[email protected]_all_selected] + "$["[email protected]_orb_selected+"]"); }else{ [email protected]_orb_size = rand(getarraysize(getd("." + .s_all$[[email protected]_all_selected] + "$"))); [email protected]_orb_id = getd("." + .s_all$[[email protected]_all_selected] + "$["[email protected]_orb_size+"]"); } next; mes "Slot"; for([email protected]=getd(".slot_count_" + .s_all$[[email protected]_all_selected]); [email protected]<4; [email protected]++) if(getequipcardid(.s_all_loc[[email protected]_all_selected],[email protected])!= null) { set [email protected]_menu$, [email protected]_menu$ + " [ ^E81B02" + getitemname(getequipcardid(.s_all_loc[[email protected]_all_selected],[email protected])) + "^000000 ]:"; }else{ set [email protected]_menu$, [email protected]_menu$ + " [ ^D6C4E8" + "Empty" + "^000000 ]:"; } set [email protected]_slot_selected, select([email protected]_menu$) -1; [email protected]_slot_selected += getd(".slot_count_" + .s_all$[[email protected]_all_selected]); if(!.s_enchant_overwrite){ if(getequipcardid(.s_all_loc[[email protected]_all_selected],[email protected]_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([email protected]_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 [email protected]_orb_id,1;} if (rand(100) < .success_chanse[[email protected]_slot_selected]){ mes "Sucesso!"; specialeffect2 154; setd("[email protected]" + [email protected]_slot_selected, [email protected]_orb_id); set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],1; getitem2 [email protected], 1, 1, [email protected]_item_refine, 0, [email protected], [email protected], [email protected], [email protected]; equip [email protected]; close; }else{ specialeffect2 155; mes "I am sorry"; mes "We did Fail"; specialeffect2 EF_PHARMACY_FAIL; if (rand(100) < .brack_chance){ set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],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 ([email protected] = 0; [email protected] < getarraysize(.Weapons$); [email protected]++) npcshopadditem "enchantable_items_Weapon", atoi(.Weapons$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Armors$); [email protected]++) npcshopadditem "enchantable_items_Armor", atoi(.Armors$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Shields$); [email protected]++) npcshopadditem "enchantable_items_Shield", atoi(.Shields$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Germents$); [email protected]++) npcshopadditem "enchantable_items_Germent", atoi(.Germents$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Shoses$); [email protected]++) npcshopadditem "enchantable_items_Shose", atoi(.Shoses$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Accessarys$); [email protected]++) npcshopadditem "enchantable_items_Accessary", atoi(.Accessarys$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Uppers$); [email protected]++) npcshopadditem "enchantable_items_Upper", atoi(.Uppers$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Middels$); [email protected]++) npcshopadditem "enchantable_items_Middel", atoi(.Middels$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Lowers$); [email protected]++) npcshopadditem "enchantable_items_Lower", atoi(.Lowers$[[email protected]]),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;
  3. 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; [email protected]$[0] = "Enchant"; if(.remove_enchant) [email protected]$[1] = "Remove Enchant"; if(.enable_the_shop) [email protected]$[2] = "The Items you can enchant"; mes "so what you want to do!"; menu [email protected]$[0],L_Enchant,[email protected]$[1],L_Remove,[email protected]$[2],-; callsub Q_shop; end; L_Remove: [email protected]_orbs = true; L_Enchant: next; mes "please select the item you want to enchant"; for([email protected]=0; [email protected]<getarraysize(.s_all$); [email protected]++) if(getequipid(.s_all_loc[[email protected]])>-1) { set [email protected]_menu$, [email protected]_menu$ + .s_all$[[email protected]] + " - [ ^E81B02" + getitemname(getequipid(.s_all_loc[[email protected]])) + "^000000 ]:"; }else{ set [email protected]_menu$, [email protected]_menu$ + .s_all$[[email protected]] + " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; } set [email protected]_all_selected, select([email protected]_menu$) -1; if(getequipid(.s_all_loc[[email protected]_all_selected])< 0){ mes "you don't have item equiped there"; close; } if (countitem(getequipid(.s_all_loc[[email protected]_all_selected])) > 1){ mes "you have more then one item"; mes "from the item that you want to enchant"; close; } [email protected]_item_refine = getequiprefinerycnt(.s_all_loc[[email protected]_all_selected]); if( getd(".specific_" + .s_all$[[email protected]_all_selected] + "s") ==1){ for([email protected]=0;[email protected]<getarraysize(getd("." + .s_all$[[email protected]_all_selected] + "s$"));[email protected]++){ if(getequipid(.s_all_loc[[email protected]_all_selected]) == atoi(getd("." + .s_all$[[email protected]_all_selected] + "s$["[email protected]+"]"))){ [email protected]_to_go = true; } } }else{ for([email protected]=0;[email protected]<getarraysize(.black_list$);[email protected]++){ if(getequipid(.s_all_loc[[email protected]_all_selected]) == atoi(.black_list$[[email protected]])){ [email protected]_list_item = true; } } [email protected]_to_go = true; } if([email protected]_to_go || [email protected]_list_item){ mes "sorry"; mes " i can't enchant this item."; close; } [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],0); [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],1); [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],2); [email protected] = getequipcardid(.s_all_loc[[email protected]_all_selected],3); if([email protected]_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([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); if([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); if([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); if([email protected] == 0)[email protected]$ = " - [ ^D6C4E8" + "No Equip" + "^000000 ]:"; else [email protected]$ = getitemname([email protected]); switch(select([email protected]$,[email protected]$,[email protected]$,[email protected]$)){ case 1: [email protected] = 0; break; case 2: [email protected] = 0; break; case 3: [email protected] = 0; break; case 4: [email protected] = 0; break; } specialeffect2 EF_REPAIRWEAPON; set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],1; getitem2 [email protected], 1, 1, [email protected]_item_refine, 0, [email protected], [email protected], [email protected], [email protected]; set Zeny, Zeny-.s_zeny_remove; end; } specialeffect2 EF_REPAIRWEAPON; set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],1; getitem2 [email protected], 1, 1, [email protected]_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([email protected]=0; [email protected]<getarraysize(getd("." + .s_all$[[email protected]_all_selected] + "$")); [email protected]++) set [email protected]_menu$, [email protected]_menu$ + getitemname(atoi(getd("." + .s_all$[[email protected]_all_selected] + "$["[email protected]+"]"))) + ":"; set [email protected]_orb_selected, select([email protected]_menu$) -1; [email protected]_orb_id = getd("." + .s_all$[[email protected]_all_selected] + "$["[email protected]_orb_selected+"]"); }else{ [email protected]_orb_size = rand(getarraysize(getd("." + .s_all$[[email protected]_all_selected] + "$"))); [email protected]_orb_id = getd("." + .s_all$[[email protected]_all_selected] + "$["[email protected]_orb_size+"]"); } next; mes "which slot ?"; for([email protected]=getd(".slot_count_" + .s_all$[[email protected]_all_selected]); [email protected]<4; [email protected]++) if(getequipcardid(.s_all_loc[[email protected]_all_selected],[email protected])!= null) { set [email protected]_menu$, [email protected]_menu$ + " [ ^E81B02" + getitemname(getequipcardid(.s_all_loc[[email protected]_all_selected],[email protected])) + "^000000 ]:"; }else{ set [email protected]_menu$, [email protected]_menu$ + " [ ^D6C4E8" + "Empty" + "^000000 ]:"; } set [email protected]_slot_selected, select([email protected]_menu$) -1; [email protected]_slot_selected += getd(".slot_count_" + .s_all$[[email protected]_all_selected]); if(!.s_enchant_overwrite){ if(getequipcardid(.s_all_loc[[email protected]_all_selected],[email protected]_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([email protected]_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 [email protected]_orb_id,1;} if (rand(100) < .success_chanse[[email protected]_slot_selected]){ mes "We did it!"; specialeffect2 154; setd("[email protected]" + [email protected]_slot_selected, [email protected]_orb_id); set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],1; getitem2 [email protected], 1, 1, [email protected]_item_refine, 0, [email protected], [email protected], [email protected], [email protected]; equip [email protected]; close; }else{ specialeffect2 155; mes "I am sorry"; mes "We did Fail"; specialeffect2 EF_PHARMACY_FAIL; if (rand(100) < .brack_chance){ set [email protected], getequipid(.s_all_loc[[email protected]_all_selected]); delitem [email protected],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 ([email protected] = 0; [email protected] < getarraysize(.Weapons$); [email protected]++) npcshopadditem "enchantable_items_Weapon", atoi(.Weapons$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Armors$); [email protected]++) npcshopadditem "enchantable_items_Armor", atoi(.Armors$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Shields$); [email protected]++) npcshopadditem "enchantable_items_Shield", atoi(.Shields$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Germents$); [email protected]++) npcshopadditem "enchantable_items_Germent", atoi(.Germents$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Shoses$); [email protected]++) npcshopadditem "enchantable_items_Shose", atoi(.Shoses$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Accessarys$); [email protected]++) npcshopadditem "enchantable_items_Accessary", atoi(.Accessarys$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Uppers$); [email protected]++) npcshopadditem "enchantable_items_Upper", atoi(.Uppers$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Middels$); [email protected]++) npcshopadditem "enchantable_items_Middel", atoi(.Middels$[[email protected]]),1; for ([email protected] = 0; [email protected] < getarraysize(.Lowers$); [email protected]++) npcshopadditem "enchantable_items_Lower", atoi(.Lowers$[[email protected]]),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
  4. @Stolao @Joinevent Zombie event error
  5. spawnn

    Addon VoteForPoints

    @edit No solved. Not working, 'PointsType' => "vote", // credit, vote, cash
  6. Error @joinevent Events: Zombie
  7. spawnn

    extended BG

    iam user on my server: ExtendedBG_rev7 this error ocurred on capture the flag:
  8. spawnn

    where error ?

    I do not know what is causing this error. where is rathena error logs ?
  9. I not have custom item bonus, it may be possible sc_start ?
  10. Error on click: [21:32:26][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:26][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:27][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:27][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:31][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:31][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:43][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:44][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:48][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:48][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:48][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:49][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:50][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:50][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:52][Error]: pc_readparam: Attempt to read unknown parameter '0'. [21:32:58][Error]: pc_readparam: Attempt to read unknown parameter '0'. Script: prontera,158,193,4 script Curandeira 4_F_VALKYRIE,{ percentheal 100,100; sc_start 32, 600000, 10; // Increase Agi sc_start 30, 600000, 10; // Blessing. if(getgroupid() < 5){ dispbottom "Você não é um membro vip, saiba mas sobre o sistema vip em nosso site!"; end; } else { dispbottom "Obrigado por ser um membro VIP!"; percentheal 100,100; sc_start 32, 600000, 10; // Increase Agi sc_start 30, 600000, 10; // Blessing sc_start SC_ANGELUS, 600000,10; sc_start SC_IMPOSITIO,600000,5; sc_start SC_GLORIA,600000,5; sc_start SC_MAGNIFICAT,600000,5; sc_start SC_STRFOOD,600000,10; sc_start SC_AGIFOOD,600000,10; sc_start SC_VITFOOD,600000,10; sc_start SC_INTFOOD,600000,10; sc_start SC_DEXFOOD,600000,10; sc_start SC_LUKFOOD,600000,10; set @PC_LAST_ANN_TIME,gettimetick(2); end; } }
  11. spawnn

    make server

    Help, error when compiling latest rathena. I did not modify the src
  12. Script: //===== rAthena Script ======================================= //= Euphy's Quest Shop //===== By: ================================================== //= Euphy //===== Current Version: ===================================== //= 1.6b //===== Compatible With: ===================================== //= rAthena SVN r16862+ //===== Description: ========================================= //= A dynamic quest shop based on Lunar's, with easier config. //= Includes support for multiple shops & cashpoints. //= Item Preview script by ToastOfDoom. //===== Additional Comments: ================================= //= 1.0 Initial script. //= 1.2 Added category support. //= 1.3 More options and fixes. //= 1.4 Added debug settings. //= 1.5 Replaced categories with shop IDs. //= 1.6 Added support for purchasing stackables. //= 1.6a Added support for previewing costumes and robes. //= 1.6b Added 'disable_items' command. //============================================================ // Shop NPCs -- supplying no argument displays entire menu. // callfunc "qshop"{,<shop ID>{,<shop ID>{,...}}}; //============================================================ prontera,164,171,3 script Quest Shop#1 998,{ callfunc "qshop",1,2; } //prontera,147,174,5 script Visual Shop#2 617,{ callfunc "qshop",2; } // Script Core //============================================================ - script quest_shop -1,{ function Add; function Chk; function Slot; function A_An; OnInit: // ----------------------------------------------------------- // Basic shop settings. // ----------------------------------------------------------- set .Announce,1; // Announce quest completion? (1: yes / 0: no) set .ShowSlot,1; // Show item slots? (2: all equipment / 1: if slots > 0 / 0: never) set .ShowID,1; // Show item IDs? (1: yes / 0: no) set .ShowZeny,0; // Show Zeny cost, if any? (1: yes / 0: no) set .MaxStack,100; // Max number of quest items purchased at one time. // ----------------------------------------------------------- // Points variable -- optional quest requirement. // setarray .Points$[0],"<variable name>","<display name>"; // ----------------------------------------------------------- setarray .Points$[0],"#CASHPOINTS","Cash Points"; // ----------------------------------------------------------- // Shop IDs -- to add shops, copy dummy data at bottom of file. // setarray .Shops$[1],"<Shop 1>","<Shop 2>"{,...}; // ----------------------------------------------------------- setarray .Shops$[1],"Quest","Quest 2"; // ----------------------------------------------------------- // Quest items -- do NOT use a reward item more than once! // Add(<shop ID>,<reward ID>,<reward amount>, // <Zeny cost>,<point cost>, // <required item ID>,<required item amount>{,...}); // ----------------------------------------------------------- //quest Add(1,5137,1,10000000,0,4523,10,7047,50,5141,1,1060,100); Add(1,5170,1,10000000,0,5172,1,7063,100,982,1); Add(1,5360,1,10000000,0,919,100,1096,100,7171,50,2213,1); Add(1,5480,1,10000000,0,2233,1,916,100,983,10,982,10,976,10,975,10,978,10); Add(1,18550,1,10000000,0,5170,1,7297,10,7291,10,7292,10); Add(1,18561,1,10000000,0,5170,1,7297,5,7291,5,7292,5); Add(1,5376,1,10000000,0,2255,1,983,10,7511,35,7340,35,923,25,1039,25); Add(1,5361,1,10000000,0,5096,1,2218,1,911,10,507,75,7216,75,7563,150); Add(1,5325,1,10000000,0,2263,5,2296,5,719,100,640,125); Add(1,5463,1,10000000,0,975,5,976,5,978,5,979,5,981,5,983,5,982,5,980,5,1045,125); Add(1,2589,1,10000000,0,7063,200,7441,200,1039,100,983,10); Add(1,2576,1,10000000,0,16010,5,16001,3,976,25,975,25); Add(1,18603,1,10000000,0,18507,1,1038,200,1039,200); Add(1,2899,1,10000000,0,2701,2,4064,2,982,25); Add(1,18536,1,10000000,0,7206,100,905,100,7263,100,976,10); Add(1,5548,1,10000000,0,748,200,990,100,975,20); Add(1,2855,1,10000000,0,7206,100,983,25,975,25,7263,100); Add(1,19263,1,10000000,0,1168,1,7069,50,1527,1,6223,100,1413,1,616,25); Add(1,15041,1,10000000,0,2347,1,7444,100,995,250,962,200); Add(1,19118,1,10000000,0,2202,1,19117,1,713,250,4001,25,7297,25); Add(1,19020,1,10000000,0,5480,1,996,200,4141,25,7292,25,7022,3); Add(1,19021,1,10000000,0,1387,1,1490,1,2160,1,526,200,7053,250,4271,10,4270,10); Add(1,28507,1,10000000,0,7169,3,2701,2,27122,10,4577,10,27161,10,914,200); Add(1,28430,1,10000000,0,2729,2,4053,10,993,200); Add(1,5907,1,10000000,0,1377,5,7022,5,7024,25,999,200); Add(1,5933,1,10000000,0,2274,1,7205,200,983,25,975,25,7159,250); Add(1,19112,1,10000000,0,2274,1,7159,150,7205,100,713,100); //Add(2,5208,1,10000000,0,1006,150,4115,5,2254); //Add(2,20859,1,10000000,0,1015,100,13047,3,4362,5,1059,200); //Add(2,28433,1,10000000,0,4172,10,7297,25,991,200,7291,5); //Add(2,2202,1,10000000,0,7717,1,2201,5); //Add(2,2204,1,10000000,0,7717,1,2203,5); //Visual // ----------------------------------------------------------- freeloop(0); set .menu$,""; for(set [email protected],1; [email protected]<=getarraysize(.Shops$); set [email protected],[email protected]+1) { set .menu$, .menu$+.Shops$[[email protected]]+":"; npcshopdelitem "qshop"[email protected],909; } end; OnMenu: set [email protected], getarraysize(@i); if ([email protected]) set [email protected], select(.menu$); else if ([email protected] == 1) set [email protected], @i[0]; else { for(set [email protected],0; [email protected]<[email protected]; set [email protected],[email protected]+1) set [email protected]$, [email protected]$+.Shops$[@i[[email protected]]]+":"; set [email protected], @i[select([email protected]$)-1]; } deletearray @i[0],getarraysize(@i); if (.Shops$[[email protected]] == "") { message strcharinfo(0),"An error has occurred."; end; } dispbottom "Select one item at a time."; callshop "qshop"[email protected],1; npcshopattach "qshop"[email protected]; end; OnBuyItem: // [email protected][] : RewardID, BoughtAmt, RewardAmt, BaseAmt, ReqZeny, ReqPts, { ReqItem, ReqAmt, ... } setarray [email protected][0],@bought_nameid[0],((@bought_quantity[0] > .MaxStack)?.MaxStack:@bought_quantity[0]); copyarray [email protected][3],getd(".q_"[email protected][0]+"[0]"),getarraysize(getd(".q_"[email protected][0])); set [email protected][2],[email protected][1]*[email protected][3]; if ([email protected][2] || [email protected][2] > 30000) { message strcharinfo(0),"You can't purchase that many "+getitemname([email protected][0])+"."; end; } mes "[Quest Shop]"; mes "Reward: ^0055FF"+(([email protected][2] > 1)[email protected][2]+"x ":"")+Slot([email protected][0])+"^000000"; mes "Requirements:"; disable_items; if ([email protected][4]) mes " > "+Chk(Zeny,[email protected][4]*[email protected][1])+([email protected][4]*[email protected][1])+" Zeny^000000"; if ([email protected][5]) mes " > "+Chk(getd(.Points$[0]),[email protected][5]*[email protected][1])+([email protected][5]*[email protected][1])+" "+.Points$[1]+" ("+getd(.Points$[0])+"/"+([email protected][5]*[email protected][1])+")^000000"; if ([email protected][6]) for(set [email protected],6; [email protected]<getarraysize([email protected]); set [email protected],[email protected]+2) mes " > "+Chk(countitem([email protected][[email protected]]),[email protected][[email protected]+1]*[email protected][1])+((.ShowID)?"{"[email protected][[email protected]]+"} ":"")+Slot([email protected][[email protected]])+" ("+countitem([email protected][[email protected]])+"/"+([email protected][[email protected]+1]*[email protected][1])+")^000000"; next; setarray @qe[1], getiteminfo([email protected][0],5), getiteminfo([email protected][0],11); if (@qe[2] > 0 && ((@qe[1] & 1) || (@qe[1] & 256) || (@qe[1] & 512) || (@qe[1] & 1024) || (@qe[1] & 2048) || (@qe[1] & 4096) || (@qe[1] & 4) || (@qe[1] & 8192))) set [email protected],1; addtimer 1000, strnpcinfo(0)+"::OnEnd"; while(1) { switch(select(" ~ Purchase ^0055FF"+getitemname([email protected][0])+"^000000:"+(([email protected] && [email protected][7])?" ~ Preview...":"")+": ~ ^777777Cancel^000000")) { case 1: if (@qe[0]) { mes "[Quest Shop]"; mes "You're missing one or more quest requirements."; close; } if (!checkweight([email protected][0],[email protected][2])) { mes "[Quest Shop]"; mes "^FF0000You need "+((([email protected][2]*getiteminfo([email protected][0],6))+Weight-MaxWeight)/10)+" additional weight capacity to complete this trade.^000000"; close; } if ([email protected][4]) set Zeny, Zeny-([email protected][4]*[email protected][1]); if ([email protected][5]) setd .Points$[0], getd(.Points$[0])-([email protected][5]*[email protected][1]); if ([email protected][6]) for(set [email protected],6; [email protected]<getarraysize([email protected]); set [email protected],[email protected]+2) delitem [email protected][[email protected]],[email protected][[email protected]+1]*[email protected][1]; getitem [email protected][0],[email protected][2]; if (.Announce) announce strcharinfo(0)+" has created "+(([email protected][2] > 1)[email protected][2]+"x "+getitemname([email protected][0]):A_An(getitemname([email protected][0])))+"!",0; specialeffect2 EF_FLOWERLEAF; close; case 2: setarray @qe[3], getlook(LOOK_HEAD_BOTTOM), getlook(LOOK_HEAD_TOP), getlook(LOOK_HEAD_MID), getlook(LOOK_ROBE), 1; if ((@qe[1] & 1) || (@qe[1] & 4096)) changelook LOOK_HEAD_BOTTOM, @qe[2]; else if ((@qe[1] & 256) || (@qe[1] & 1024)) changelook LOOK_HEAD_TOP, @qe[2]; else if ((@qe[1] & 512) || (@qe[1] & 2048)) changelook LOOK_HEAD_MID, @qe[2]; else if ((@qe[1] & 4) || (@qe[1] & 8192)) changelook LOOK_ROBE, @qe[2]; break; case 3: close; } } OnEnd: if (@qe[7]) { changelook LOOK_HEAD_BOTTOM, @qe[3]; changelook LOOK_HEAD_TOP, @qe[4]; changelook LOOK_HEAD_MID, @qe[5]; changelook LOOK_ROBE, @qe[6]; } deletearray @qe[0],8; end; function Add { if (getitemname(getarg(1)) == "null") { debugmes "Quest reward #"+getarg(1)+" invalid (skipped)."; return; } setarray [email protected][0],getarg(2),getarg(3),getarg(4); for(set [email protected],5; [email protected]<getargcount(); set [email protected],[email protected]+2) { if (getitemname(getarg([email protected])) == "null") { debugmes "Quest requirement #"+getarg([email protected])+" invalid (skipped)."; return; } else setarray [email protected][[email protected]],getarg([email protected]),getarg([email protected]+1); } copyarray getd(".q_"+getarg(1)+"[0]"),[email protected][0],getarraysize([email protected]); npcshopadditem "qshop"+getarg(0),getarg(1),((.ShowZeny)?getarg(3):0); return; } function Chk { if (getarg(0) < getarg(1)) { set @qe[0],1; return "^FF0000"; } else return "^00FF00"; } function Slot { set [email protected]$,getitemname(getarg(0)); switch(.ShowSlot) { case 1: if (!getitemslots(getarg(0))) return [email protected]$; case 2: if (getiteminfo(getarg(0),2) == 4 || getiteminfo(getarg(0),2) == 5) return [email protected]$+" ["+getitemslots(getarg(0))+"]"; default: return [email protected]$; } } function A_An { setarray [email protected]$[0],"a","e","i","o","u"; set [email protected]$, "_"+getarg(0); for(set [email protected],0; [email protected]<5; set [email protected],[email protected]+1) if (compare([email protected]$,"_"[email protected]$[[email protected]])) return "an "+getarg(0); return "a "+getarg(0); } } function script qshop { deletearray @i[0],getarraysize(@i); for(set [email protected],0; [email protected]<getargcount(); set [email protected],[email protected]+1) set @i[[email protected]],getarg([email protected]); doevent "quest_shop::OnMenu"; end; } // Dummy shop data -- copy as needed. //============================================================ - shop qshop1 -1,909:-1 - shop qshop2 -1,909:-1 - shop qshop3 -1,909:-1 - shop qshop4 -1,909:-1 - shop qshop5 -1,909:-1 Error: