//===== eAthena Script ======================================= //= Kunai "Trader" @ que_ng //===== By: ================================================== //= erKURITA //===== Current Version: ===================================== //= 1.0 //===== Compatible With: ===================================== //= eAthena 1.0 //===== Description: ========================================= //= NPC that trades you a few shurikens + ninja stones for //= elemental kunais. //===== Additional Comments: ================================= //= 1.0 Added the npc. It uses a function that sends the item //= id of the 2 required items plus the amount. Can trade //= up to 500 units (5,000 kunais) at once. [erKURITA] //= 1.1 Officialized script [Playtester] //============================================================ que_ng,72,29,3 script Kunai Merchant Kashin 83,{ if(BaseJob != Job_Ninja){ mes "[Kashin]"; mes "I am Kashin of the Wind. I distribute trade items to the shadows."; next; mes "[Kashin]"; mes "It doesn't seem like you are a Ninja... Just take a good look around and be on your way."; close; } mes "[Kashin]"; mes "I'm Kashin!"; mes "If you're ever short on Shurikens, come and see me."; next; mes "[Kashin]"; mes "What will it be?"; mes "Choose what you want."; next; switch(select("Poison Kunais:Frost Kunais:Wind Kunais:Earth Kunais:Fire Kunais:Cancel")) { //Callfunc usage: callfunc "Kunai_Trade",itemreqid1,itemreqct1,itemreqid2,itemreqct2,itemidtrade; case 1: callfunc "Kunai_Trade",13250,20,7524,1,13259; case 2: callfunc "Kunai_Trade",13251,8,7522,2,13255; case 3: callfunc "Kunai_Trade",13252,4,7523,2,13257; case 4: callfunc "Kunai_Trade",13253,2,7524,1,13256; case 5: callfunc "Kunai_Trade",13254,1,7521,2,13258; case 6: goto L_Bye; } L_Bye: mes "[Kashin]"; mes "Hmm~ Ok~"; mes "Come again~"; mes "I, Kashin of the Wind, will always be at this place."; close; } function script Kunai_Trade { mes "[Kashin]"; mes "If you give me "+getarg(1)+" "+getitemname(getarg(0))+" and "+getarg(3)+" "+getitemname(getarg(2))+", I'll give you a pack of 10 "+getitemname(getarg(4))+"."; next; mes "[Kashin]"; mes "You can trade up to 500 packs at a time."; mes "If you don't want to trade, just enter 0 as the amount."; next; input @trade; if(@trade < 1){ mes "[Kashin]"; mes "Hmm~ Ok~"; mes "Come again~"; mes "I, Kashin of the Wind, will always be at this place."; close; } if(@trade > 500){ mes "[Kashin]"; mes "You've exceeded the input amount!"; mes "Enter a valid number next time~!"; close; } if(countitem(getarg(0)) < @trade*getarg(1) || countitem(getarg(2)) < @trade*getarg(3)){ mes "[Kashin]"; mes "Hmm... this is no good~"; mes "You don't have enough materials to trade in for the amount of Kunai's that you want."; mes "Bring some more if you want this amount."; close; } if(checkweight(getarg(4),@trade*10) == 0){ mes "[Kashin]"; mes "Your bag is too full to carry the trade items. Come back after you made room for the traded items."; close; } mes "[Kashin]"; mes "Ok~ Very well!"; mes "Amount verified!"; mes "Here are your traded items."; delitem getarg(0),getarg(1)*@trade; delitem getarg(2),getarg(3)*@trade; getitem getarg(4),10*@trade; close; }