//
function script Banker {
if (BankAccount > 0) callsub S_MoveAccount;
L_Start:
mes "[" + @npcName$ + "]";
mes "\"Welcome to the bank!";
mes "How can I help you?\"";
next;
menu "Deposit", L_Dep,
"Withdraw", L_With,
"Check my balance", L_Balance,
"Nevermind", L_Nev;
L_Dep:
mes "[" + @npcName$ + "]";
mes "\"How much would you like to deposit?\"";
next;
L_Dep_Input:
input @Amount;
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,
"Try again", L_Dep_Input,
"Deposit all", L_Dep_All,
"Quit", -;
goto L_Nev;
L_Dep_All:
set @Amount, zeny;
L_Dep_Continue:
if (zeny < @Amount) goto L_NoMoney;
set zeny, zeny - @Amount;
set #BankAccount, #BankAccount + @Amount;
goto L_Balance;
L_With:
mes "[" + @npcName$ + "]";
mes "\"How much would you like to withdraw?\"";
next;
L_With_Input:
input @Amount;
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,
"Try again", L_With_Input,
"Withdraw all", L_With_All,
"Quit", -;
goto L_Nev;
L_With_All:
set @Amount, zeny;
L_With_Continue:
if (#BankAccount < @Amount) goto L_NoMoney;
set zeny, zeny + @Amount;
set #BankAccount, #BankAccount - @Amount;
goto L_Balance;
L_Balance:
mes "[" + @npcName$ + "]";
mes "\"Your current bank balance is:";
mes #BankAccount + " GP\"";
goto L_Start;
L_Nev:
mes "[" + @npcName$ + "]";
mes "\"Goodbye then.\"";
return;
L_NoMoney:
mes "[" + @npcName$ + "]";
mes "\"Oh dear, it seems that you don't have enough money.\"";
goto L_Start;
S_MoveAccount:
set #BankAccount, #BankAccount + BankAccount;
set BankAccount, 0;
return;
}