root/npc/custom/banks/kafra_bank.txt

Revision 1, 4.0 kB (checked in by jinshiro, 17 years ago)
Line 
1//===== eAthena Script =======================================
2//= The 2nd Bank of Prontera ( with daily 0.01% income! )
3//===== By: ==================================================
4//= Lupus (1.0)
5//===== Current Version: =====================================
6//= 1.2a
7//===== Compatible With: =====================================
8//= eAthena 1.x
9//===== Description: =========================================
10//= A bank which has an interest %
11//===== Additional Comments: =================================
12// Look for this formula and setup your Bank daily % interest
13// #kafrabank/1000 = 0.1% of interest per day
14// #kafrabank/100  =  1%  of interest per day
15// #kafrabank/10   =  10% of interest per day
16//
17// 1.1 Added log of bank operation -> logmes "some info";
18// 1.2 Set max income to 100,000z. It would help to avoid
19//      zeny exploits when you change DATE at your server
20// 1.2a Corrected bad duplicate names. (bugreport:921) [Samuray22]
21//============================================================
22
23prontera,131,190,1      script  Bank Clerk::bankg       833,{ 
24 mes"[Maniss]";
25 mes strcharinfo(0)+", welcome to the 2nd Bank of Prontera!";
26
27 set @kb_int,(gettime(6)*31)+gettime(5); //today's number
28 set @income,0;
29//calculate %
30 if (#kafrabank<=0 || #kb_int>=@kb_int) goto L_NoIncomeToday;
31 set @income,(#kafrabank/1000)*(@kb_int-#kb_int); //@income == % of the sum
32//max income constant:
33 if (@income>100000) set @income,100000;
34L_NoIncomeToday:
35 set #kb_int,@kb_int; //reset days timer
36 
37 if(#kafrabank==0) mes "We could open you an account.";
38 if(@income>0) mes "Today's income: ^135445" + @income + "^000000 zeny.";
39 set #kafrabank,#kafrabank+@income;
40 if(#kafrabank>0) mes "Your account: ^135445" + #kafrabank + "^000000 zeny.";
41 mes "What would you like?";
42 next;
43 if(#kafrabank==0) menu "-Open an account",-,"-Quit",B_EXIT2;
44 if(#kafrabank>0) menu "-Deposit money",-,"-Withdraw money",M_WITHDRAW,"-Quit",B_EXIT2;
45
46 mes"[Maniss]";
47 mes "Please, tell me how much zeny you would like to deposit.";
48 next;
49 input @kafrabank;
50 
51 if(@kafrabank<1000) goto L_LESS_1000;
52 if(@kafrabank>10000000) goto L_TOO_BIG_AMOUNT;
53 if(@kafrabank>zeny) goto L_NOT_ENOUGH;
54 set zeny,zeny-@kafrabank;
55 set #kafrabank,#kafrabank+@kafrabank;
56 mes"[Maniss]";
57 mes "You've made a deposit of ^135445" + @kafrabank + "z^000000.";
58//we log these zeny operations into the log db
59 logmes "Bank %: " + @income +"z, Deposit: "+ @kafrabank +"z, Final: "+ #kafrabank +"z";
60 goto B_EXIT;
61
62M_WITHDRAW: 
63 if(#kafrabank==0) goto L_ZERO_ACCOUNT;
64 mes"[Maniss]";
65 mes "Your account: ^135445" + #kafrabank + "^000000 zeny.";
66 mes "How much zeny would you like to withdraw?";
67 next;
68 input @kafrabank;
69 
70 if(@kafrabank<1) goto B_EXIT2;
71 if(@kafrabank>10000000) goto L_TOO_BIG_AMOUNT;
72 if(@kafrabank>#kafrabank) goto L_NOT_ENOUGH;
73 set #kafrabank,#kafrabank-@kafrabank;
74 set zeny,zeny+@kafrabank;
75 mes"[Maniss]";
76 mes "Here is your ^135445" + @kafrabank + "z^000000, put your sign here...";
77//we log these zeny operations into the log db
78 logmes "Bank %: " + @income +"z, Withdraw: "+ @kafrabank +"z, Final: "+ #kafrabank +"z";
79 goto B_EXIT;
80 
81L_NOT_ENOUGH: 
82 mes"[Maniss]";
83 mes "You don't have enough zeny for this operation.";
84 next;
85 goto B_EXIT2;
86
87L_ZERO_ACCOUNT: 
88 mes"[Maniss]";
89 mes "You don't have any zeny on your account!";
90 next;
91 goto B_EXIT2;
92
93L_TOO_BIG_AMOUNT: 
94 mes"[Maniss]";
95 mes "Sorry. The maximum deposit you can make on a time is 10,000,000 zeny.";
96 next;
97 goto B_EXIT2;
98
99L_LESS_1000: 
100 mes"[Maniss]";
101 mes "We're sorry, the minimum amount of zeny you can deposit is 1,000 zeny.";
102 next;
103 goto B_EXIT2;
104 
105B_EXIT:
106 mes "Very well... Come again soon!";
107 next;
108
109B_EXIT2: 
110 mes"[Maniss]";
111 mes "Thank you for using our Bank Service. We hope to see you again soon.";
112 close;
113}
114
115geffen,125,73,3 duplicate(bankg)        Bank Clerk#2-1  833
116izlude,145,107,1        duplicate(bankg)        Bank Clerk#3-1  833
117morocc,147,84,7 duplicate(bankg)        Bank Clerk#4-1  833
Note: See TracBrowser for help on using the browser.