From 24c46bcc42f04084814c823836dceab3117f962e Mon Sep 17 00:00:00 2001 From: Playtester Date: Mon, 2 Apr 2007 17:25:40 +0000 Subject: Officialized Kunai/Shuriken traders git-svn-id: https://rathena.svn.sourceforge.net/svnroot/rathena/trunk@10123 54d463be-8e91-2dee-dedb-b68131a5f0ec --- npc/merchants/kunai_maker.txt | 129 ++++++++++++++++++++++-------------------- npc/merchants/shops.txt | 4 +- 2 files changed, 71 insertions(+), 62 deletions(-) (limited to 'npc/merchants') diff --git a/npc/merchants/kunai_maker.txt b/npc/merchants/kunai_maker.txt index 9d9c65738..7462b65b8 100644 --- a/npc/merchants/kunai_maker.txt +++ b/npc/merchants/kunai_maker.txt @@ -13,85 +13,94 @@ //= 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 Seller 83,{ -mes "[Jin]"; -mes "Hi, I sell elemental enchanted kunais. I'll trade you some elemental stones and one kind of shuriken for a determined elemental Kunai"; -next; -mes "[Jin]"; -mes "What would you like to trade some? It's free"; -switch(select("10 Poison Kunais:10 Icycle Kunais:10 Rough Wind Kunais:10 Black Soil Kunai:10 Explosion Kunai:Nothing at the Moment")) { +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; - goto L_Bye; case 2: callfunc "Kunai_Trade",13251,8,7522,2,13255; - goto L_Bye; case 3: callfunc "Kunai_Trade",13252,4,7523,2,13257; - goto L_Bye; case 4: callfunc "Kunai_Trade",13253,2,7524,1,13256; - goto L_Bye; case 5: callfunc "Kunai_Trade",13254,1,7521,2,13258; - goto L_Bye; case 6: goto L_Bye; } L_Bye: - next; - mes "[Jin]"; - mes "Good bye and hope to see you again then"; + 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 "[Jin]"; - if (MaxWeight*50/100 < Weight) { - if (MaxWeight*90/100 < Weight) { - mes "Sorry but you have more than 90% weight. Your kunais might drop. I can't give you anything."; - return; - } - mes "You have 50% or more weight, do you still want to continue?"; - menu "Yes",-,"No, thanks",L_Return; - } + 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; - mes "Would you like to trade my 10 "+getitemname(getarg(4))+" for your "+getarg(1)+" "+getitemname(getarg(0))+" and "+getarg(3)+" "+getitemname(getarg(2))+" ?"; - switch(select("Yes:I'll think about it")) { - case 1: - next; - mes "[Jin]"; - if (countitem(getarg(0)) < getarg(1) || countitem(getarg(2)) < getarg(3)) { - mes "Sorry but you're missing one of the required items. Please get them"; - close; - } else - mes "How many do you want to trade? I can only trade you ^FF0000500^000000 units at once."; - mes "^00FF001 Unit^000000 ^FF0000=^000000 ^0000FF10 Kunais^000000 of your desire"; - input @trade; - next; - mes "[Jin]"; - if (@trade > 500) { - mes "Sorry, but I told you I could only trade you 500 units at once. Try again"; - close; - } else if (@trade < 1) { - mes "Sorry, but 1 unit is the minimun I can trade. Try again please."; - close; - } else if ((countitem(getarg(0)) < @trade*getarg(1)) || (countitem(getarg(2)) < @trade*getarg(3))) { - mes "Sorry, but you don't have enough items to trade "+@trade+" unit(s). Get more please"; - close; - } else - mes "Here you go, enjoy them"; - delitem getarg(0),getarg(1)*@trade; - delitem getarg(2),getarg(3)*@trade; - getitem getarg(4),10*@trade; - next; - return; - case 2: - return; - } -L_Return: - return; -} \ No newline at end of file + 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; +} diff --git a/npc/merchants/shops.txt b/npc/merchants/shops.txt index 2514f78e3..c8f9de171 100644 --- a/npc/merchants/shops.txt +++ b/npc/merchants/shops.txt @@ -71,8 +71,8 @@ ama_in01,102,28,4 shop Weapon Dealer 766,1207:-1,1216:-1,1107:-1,1122:-1,1116:-1 ama_in01,24,30,4 shop Tool Dealer 763,1750:-1,1770:-1,611:-1,501:-1,502:-1,503:-1,504:-1,506:-1,645:-1,656:-1,601:-1,602:-1,1065:-1 amatsu,205,150,2 shop Ingredient Seller 83,7453:-1,579:-1 //| Official Ninja Shops -que_ng,72,31,2 shop Shuriken Dealer 83,13250:-1,13251:-1,13252:-1,13253:-1,13254:-1 -que_ng,73,26,5 shop Tool Dealer 83,2117:-1,7521:-1,7522:-1,7523:-1,7524:-1 +que_ng,72,31,2 shop Bunji 83,13250:-1,13251:-1,13252:-1,13253:-1,13254:-1 +que_ng,73,26,5 shop Bunrei 83,2117:-1,7521:-1,7522:-1,7523:-1,7524:-1 //======================================================= //AYOTHAYA -- cgit v1.2.3-70-g09d2