summaryrefslogblamecommitdiff
path: root/npc/functions/banker.txt
blob: 43f6f8796af6c91f09cf1b53acfefea074106c0b (plain) (tree)
1
2
3
4
5
6
7
8
9
10


                                 
                                                   

        



                                     



                                              




                                                      

            
                      












                                                                       
        
                                           
                                 
                                                 
                       




                                                       

             
                      












                                                                       
        
                                                   
                                 
                                                 




                                              
                                   
                     








                                                                      
                     
        



                                                     
 
//

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;
}