From 569a80a41e617ddbaae38faab9892bcfde103e98 Mon Sep 17 00:00:00 2001 From: Jared Adams Date: Wed, 7 Jul 2010 17:26:59 -0600 Subject: Add a well to fill empty bottles with water More wells will be added later. Also fix an indentation error in the banker function. --- npc/functions/banker.txt | 11 +++++++---- npc/functions/water_bottle.txt | 34 ++++++++++++++++++++++++++++++++++ 2 files changed, 41 insertions(+), 4 deletions(-) create mode 100644 npc/functions/water_bottle.txt (limited to 'npc/functions') diff --git a/npc/functions/banker.txt b/npc/functions/banker.txt index 6a43b90d..89551448 100644 --- a/npc/functions/banker.txt +++ b/npc/functions/banker.txt @@ -8,7 +8,8 @@ L_Start: mes "\"Welcome to the bank!"; mes "How can I help you?\""; next; - menu "Deposit", L_Dep, + menu + "Deposit", L_Dep, "Withdraw", L_With, "Check my balance", L_Balance, "Nevermind", L_Nev; @@ -17,7 +18,7 @@ L_Dep: mes "[" + @npcName$ + "]"; mes "\"How much would you like to deposit?\""; next; - menu + menu "Other", L_Dep_Input, "5,000 GP", L_Dep_5k, "10,000 GP", L_Dep_10k, @@ -36,7 +37,8 @@ L_Dep_Input: if (@Amount >= 0) goto L_Dep_Continue; mes "[" + @npcName$ + "]"; mes "\"I need a positive amount. What would you like to do?\""; - menu "Go back", L_Start, + menu + "Go back", L_Start, "Try again", L_Dep_Input, "Deposit all", L_Dep_All, "Quit", -; @@ -115,7 +117,8 @@ L_With_Input: if (@Amount >= 0) goto L_With_Continue; mes "[" + @npcName$ + "]"; mes "\"I need a positive amount. What would you like to do?\""; - menu "Go back", L_Start, + menu + "Go back", L_Start, "Try again", L_With_Input, "Withdraw all", L_With_All, "Quit", -; diff --git a/npc/functions/water_bottle.txt b/npc/functions/water_bottle.txt new file mode 100644 index 00000000..c2d9a1e0 --- /dev/null +++ b/npc/functions/water_bottle.txt @@ -0,0 +1,34 @@ +// Fills empty bottles with water + +function script WaterBottle { + set @COST_PER_BOTTLE, 150; + + mes "How many empty bottles do you want to fill with water? It costs " + @COST_PER_BOTTLE + "gp per bottle."; + input @count; + + if (@count == 0) close; + set @cost, @count * @COST_PER_BOTTLE; + set @empty, countitem("EmptyBottle"); + + if (@empty < @count) goto L_NotEnoughBottles; + if (zeny < @cost) goto L_NotEnoughMoney; + getinventorylist; + if (@inventorylist_count == 100 && countitem("BottleOfWater") == 0 && @empty > @count) goto L_NotEnoughSlots; + + set zeny, zeny - @cost; + delitem "EmptyBottle", @count; + getitem "BottleOfWater", @count; + close; + +L_NotEnoughBottles: + mes "You don't have that many empty bottles!"; + close; + +L_NotEnoughMoney: + mes "You don't have enough gp! You need " + @cost + "gp."; + close; + +L_NotEnoughSlots: + mes "You don't have room for these bottles!"; + close; +} -- cgit v1.2.3-70-g09d2 From 43093b041b6b892d30c936df4f152573a16046b1 Mon Sep 17 00:00:00 2001 From: Helmut Grohne Date: Thu, 8 Jul 2010 16:13:37 +0200 Subject: Fixed banker function to do "quit" correctly. The banker function was lacking a return statement which resulted in "Quit" acting like "retrieve other amount of money". Added the missing return statement. --- npc/functions/banker.txt | 1 + 1 file changed, 1 insertion(+) (limited to 'npc/functions') diff --git a/npc/functions/banker.txt b/npc/functions/banker.txt index 89551448..025647d2 100644 --- a/npc/functions/banker.txt +++ b/npc/functions/banker.txt @@ -31,6 +31,7 @@ L_Dep: "All of my money", L_Dep_All, "I've changed my mind", L_Start, "Quit", -; + return; L_Dep_Input: input @Amount; -- cgit v1.2.3-70-g09d2