Most of it xD
I'm just doing it very slowly because of my programming college project.
Anyways, my plan is to first do the withdraw and deposit features. For that i'm gonna need two variables of 4050 upwards. Choose 2 convenient variables for you so i can start doing things!
I can't really explain that clearly w/o a script but anyways here's the thing that I want.
First it tries to record the time that you accessed or created your account and stores it to a variable or something like that to save the Information. I don't really know I could do that practically I just want a script that let's you store money and have interest like 3% per week or something like that. I also want the function to let you take money and get money from the balance you have in the bank.
The script that I want is just like something that happens to the money in real-life banks... :3
Ok, so the script is a bit complicated for me to understand nowadays, but if you explain me step by step what you want to do, i'll make the routine and explain it to you :/
NarutoActor provided me with a script for a banking script that makes you create an account and store money and checks the money you have stored.
Here's the script which I fixed some pointers and messages but sadly still doesn't work for me NarutoActor said he made it worked before but when he learned ASM he made one for it I'm not sure if he has the routine for it.
Anyways here's the script:
Spoiler:
#dynamic 0x800000
#org @bank
lock
checkflag 0x60C
if 0x0 goto @create
msgbox @greets 0x4
closeonkeypress
checkgender
compare 0x800D 0x0
if 0x1 goto @boy
compare 0x800D 0x1
if 0x1 goto @girl
end
#org @egg
= My manager said to give this to\nthe first person who ever maxes\lthere account out.\pCongratulations!\pPlease accept, this gift as a\ntoken of our appreciation.
#org @ful
= Wow, looks like you have reached\nthe maximum amount of money that\lone person can store.\pGiggle, you should take me out on\na date sometimes, since you have\lall that money.\pMy gosh, you have a total of\n6,000,000 Poké Dollars in the\lbank.\pThank you for Banking in\nMesotopia, we are grateful for\lyour transaction with us.
#org @welboy
= How may I help you Sir?
#org @welgirl
= How may I help you Ma'dam?
#org @need
= There is an ERROR.\pFor this script to run properly\nyou need Interdepth's Real Time\lClock, and Jpans FireRed Hack\lEngine Applied.\pPlease contact NarutoActor with\nany problems you have encountered\lwith this script.
#org @thk
= Thank you very much.\pYou now have an acount.\pFeel free to deposit money,\nwithdraw money, use our world wide\lATM's and most of all, have fun\lbanking with Mesotopia.
#org @sorry
= I am sorry you feel that way.\pIf you change your mind, do not\nhesitate to come back.
#org @do
= Welcome to Mesotopia Bank.\pI see you do not have an account\nhere with us.\pDo you want to open an account, it\nis only cost \hB75,000.\pOnce you open an account you can\nstart earning interest, it\lpractically pays for itself.\pSo, What do you say, can you agree\nto that?
#org @greets
= Hello, and Welcome back to\nMesotopia Grand Bank.
#org @notenough
= I am sorry, but you do not have\nenough money to start an account.\pPlease, come again.
And if you want a script with an explanation here but it's quite unorganized and has grammar mistakes.
Spoiler:
#dynamic 0x750000
#org @bank
lock
checkflag 0x60C 0x1 'if account has been made.
if 0x0 goto @create 'to creat an account.
msgbox @greets MSG_KEEPOPEN
closeonkeypress
checkgender
compare 0x800D 0x0
if 0x1 goto @boy
compare 0x800D 0x1
if 0x1 goto @girl
end
#org @update
copybyte 0x202E598 0x300553C 'Year DA=10 Also Stores the Year in a temperary Var (0x8000)
copyvar 0x5008 0x8000 ' Copys the temperary var and stores it in a normal var Using this var as current year and comparing it to last updated year(5006)
Writebytetooffset 0x08 0x0203f4d8
Writebytetooffset 0x50 0x0203f4d9
Writebytetooffset 0x06 0x0203f4da
Writebytetooffset 0x50 0x0203f4db
special 0x3F 'Subtracts vars Ex 5008=20(2020)-5006(2010)=10 5008=10
copyvar 0x5006 0x5008 'This makes the current year the last updated year
compare 0x5008 0x0
if true goto @mul1 'gose to comparing seting var 0x5009 so the day var can be multipyed by one(witch will keep the day the same because 2010-2010=0 so we will not be adding more days since the year has been the same since last checked
compare 0x5008 0x1
if true goto @mul2
compare 0x5008 0x2
if true goto @mul3
compare 0x5008 0x3
if true goto @mul4
compare 0x5008 0x4
if true goto @mul5
compare 0x5008 0x5
if true goto @mul6
compare 0x5008 0x6
if true goto @mul7
compare 0x5008 0x7
if true goto @mul8
compare 0x5008 0x8
if true goto @mul9
compare 0x5008 0x9
if true goto @mulA
goto @erro ' the erro can be trigered if the player last updated 10 or more years ago, but seriously would that ever happend.
#org @mul1
setvar 0x5009 0x1
goto @daycheck
#org @mul2
setvar 0x5009 0x2 'Later we will take this var and multiply it by the subtracted day var
goto @daycheck
#org @mul3
setvar 0x5009 0x3
goto @daycheck
#org @mul4
setvar 0x5009 0x4
goto @daycheck
#org @mul5
setvar 0x5009 0x5
goto @daycheck
#org @mul6
setvar 0x5009 0x6
goto @daycheck
#org @mul7
setvar 0x5009 0x7
goto @daycheck
#org @mul8
setvar 0x5009 0x8
goto @daycheck
#org @mul9
setvar 0x5009 0x9
goto @daycheck
#org @mulA 'you can go up to mulB3 which is means the last update was made 179 years ago. 179x365=65,335 in hex 0xFF37 for space purposes I am stoping at 10 years since last update. Come on really who would play a hack go to the bank stop playing put it on again 11 years lator and start playing.
setvar 0x5009 0xA
goto @daycheck
#org @daycheck
copybyte 0x202E59A 0x300553F 'copys the month and stores it in a temperary var (0x8001)
copybyte 0x202E59C 0x3005540 'copys the day and stores it in a tempary var (0x8002)
copyvar 0x500A 0x8002
compare 0x8001 0x0
if 0x1 goto @erro
compare 0x8001 0x2
if 0x1 goto @jan2
compare 0x8001 0x3
if 0x1 goto @feb2
compare 0x8001 0x4
if 0x1 goto @mar2
compare 0x8001 0x5
if 0x1 goto @apr2
compare 0x8001 0x6
if 0x1 goto @may2
compare 0x8001 0x7
if 0x1 goto @jun2
compare 0x8001 0x8
if 0x1 goto @jul2
compare 0x8001 0x9
if 0x1 goto @aug2
compare 0x8001 0xA '10
if 0x1 goto @stp2
compare 0x8001 0xB '11
if 0x1 goto @oct2
compare 0x8001 0xC '12
if 0x1 goto @nov2
compare 0x8001 0xD
if 0x4 goto @erro
setvar 0x500B 0x16D 'one year, 365 days.
Writebytetooffset 0x09 0x0203f4d8
Writebytetooffset 0x50 0x0203f4d9
Writebytetooffset 0x0B 0x0203f4da
Writebytetooffset 0x50 0x0203f4db
special 0x40 '5009x500B(year multiply by 365)
Writebytetooffset 0x09 0x0203f4d8
Writebytetooffset 0x50 0x0203f4d9
Writebytetooffset 0x0B 0x0203f4da
Writebytetooffset 0x50 0x0203f4db
special 0x3F '5009-500B amount of days minous 365( so if there is one year 1x365=365 365-360=0 this may seem dumb but this is to prevent multiplying by 0
Writebytetooffset 0x07 0x0203f4d8
Writebytetooffset 0x50 0x0203f4d9
Writebytetooffset 0x09 0x0203f4da
Writebytetooffset 0x50 0x0203f4db
special 0x3E '5007+5009 last record day pluse amount of days since year
Writebytetooffset 0x07 0x0203f4d8
Writebytetooffset 0x50 0x0203f4d9
Writebytetooffset 0x0A 0x0203f4da
Writebytetooffset 0x50 0x0203f4db
special 0x3F '5007-500A last record day minus just recored
goto @status
#org @status
compare 0x500D 0x0
if 0x4 goto @nostatus
compare 0x500D 0x64
if 0x4 goto @setbasic
compare 0x500D 0x1F4
if 0x4 goto @setbrown
compare 0x500D 0x3E8
if 0x4 goto @setintermeidate
compare 0x500D 0x1388
if 0x4 goto @setsilver
compare 0x500D 0x2710
if 0x4 goto @setgold
compare 0x500D 0xC350
if 0x4 goto @setplatinum
compare 0x500D 0xEA60
if 0x4 goto @max
goto @finalcheck
#org @nostatus
setvar 0x500C 0x2
return
#org @setbasic
setvar 0x500C 0x6
return
#org @setbrown
setvar 0x500C 0x14
return
#org @setintermeidate
setvar 0x500C 0x50
return
#org @setsilver
setvar 0x500C 0xFA '25,000 in intest if you have 500,000 per day :D
return
#org @setgold
setvar 0x500C 0x320
return
#org @setplatinum
setvar 0x500C 0x5DC
return
#org @setmax
setvar 0x500D 0xEA60 'no need for intrest the acount is already at it's max.
goto @wowmax
#org @wowmax
msgbox @ful MSG_KEEPOPEN
closeonkeypress
checkflag 0x60D
if true goto @howmayhelp
msgbox @egg MSG_KEEPOPEN
closeonkeypress
giveegg 0xAF 'togepi
fanfare 0x13E 'Little cute music that plays when ever you get things.
waitfanfare
msgbox @give MSG_KEEPOPEN
closeonkeypress
setflag 0x60D
goto @howmayhelp
goto @finalcheck
Writebytetooffset 0x07 0x0203f4d8
Writebytetooffset 0x50 0x0203f4d9
Writebytetooffset 0x0C 0x0203f4da
Writebytetooffset 0x50 0x0203f4db
special 0x40 '5007x500C amount of intest
Writebytetooffset 0x0D 0x0203f4d8
Writebytetooffset 0x50 0x0203f4d9
Writebytetooffset 0x07 0x0203f4da
Writebytetooffset 0x50 0x0203f4db
special 0x3E '500D+5007 adds amount of intest gained to balance
goto @howmayhelp
#org @creat
showmoney 0x0 0x0 0x0
msgbox @do 0x5
compare LASTRESULT 0x1
if 0x1 goto @yes
compare LASTRESULT 0x0
if 0x1 goto @no
end
#org @yes
checkmoney 0x1388 0x0 'checks if player has 5000
compare LASTRESULT 0x1
if 0x4 goto @continue
msgbox @notenough MSG_KEEPOPEN
closeonkeypress
release
end
#org @no
msgbox @sorry MSG_KEEPOPEN
closeonkeypress
release
end
#org @continue
paymoney 0x1388 0x0
setflag 0x60C 'Acount is now opened
copybyte 0x202E598 0x300553C 'Year DA=10 Also Stores the Year in a temperary Var (0x8000)
copyvar 0x5006 0x8000 ' Copys the temperary var and stores it in a normal var
msgbox @thk MSG_KEEPOPEN
closeonkeypress
copybyte 0x202E59A 0x300553F 'copys the month and stores it in a temperary var (0x8001)
copybyte 0x202E59C 0x3005540 'copys the day and stores it in a tempary var (0x8002)
copyvar 0x5007 0x8002
compare 0x8001 0x0
if 0x1 goto @erro
compare 0x8001 0x2
if 0x1 goto @jan
compare 0x8001 0x3
if 0x1 goto @feb
compare 0x8001 0x4
if 0x1 goto @mar
compare 0x8001 0x5
if 0x1 goto @apr
compare 0x8001 0x6
if 0x1 goto @may
compare 0x8001 0x7
if 0x1 goto @jun
compare 0x8001 0x8
if 0x1 goto @jul
compare 0x8001 0x9
if 0x1 goto @aug
compare 0x8001 0xA '10
if 0x1 goto @stp
compare 0x8001 0xB '11
if 0x1 goto @oct
compare 0x8001 0xC '12
if 0x1 goto @nov
compare 0x8001 0xD
if 0x4 goto @erro
release
end
#org @jan
addvar 0x5007 0x1F 'adds all days in january to the day var. Giving us the amount of days in the year. Instead of month.
return
#org @feb
addvar 0x5007 0x3B 'adds all of Jan + Feb togehter and adds that to the day var.
return
#org @mar
addvar 0x5007 0x5A
return
#org @apr
addvar 0x5007 0x78
return
#org @may
addvar 0x5007 0x97
return
#org @jun
addvar 0x5007 0xB5
return
#org @jul
addvar 0x5007 0xD4
return
#org @aug
addvar 0x5007 0xF3
return
#org @stp
addvar 0x5007 0x111
return
#org @oct
addvar 0x5007 0x130
return
#org @nov
addvar 0x5007 0x14E
return
#org @jan2
addvar 0x500A 0x1F
return
#org @feb2
addvar 0x500A 0x3B
return
#org @mar2
addvar 0x500A 0x5A
return
#org @apr2
addvar 0x500A 0x78
return
#org @may2
addvar 0x500A 0x97
return
#org @jun2
addvar 0x500A 0xB5
return
#org @jul2
addvar 0x500A 0xD4
return
#org @aug2
addvar 0x500A 0xF3
return
#org @stp2
addvar 0x500A 0x111
return
#org @oct2
addvar 0x500A 0x130
return
#org @nov2
addvar 0x500A 0x14E
return
#org @erro
msgbox @need MSG_KEEPOPEN
release
end
#org @give
= [PLAYER] Recevied a togipe egg!
#org @egg
= My maniger said to give this to\nthe first person who ever maxes\lout there account.\pAnd Congradulations you have one.\pPlease exsept this gift as a token\nof our apreaseation.
#org @ful
= Wow, Looks like you have reached\nthe maximum amount of money that\lone person can store.\pHaha, you should take me out on a\ndate sometime, since you have all\lthat money.\pMy gosh you have a total of\n6,000,000 Dollors in the bank.\pThank you for Baning with\nMestopia, we are greatfull for\lyour bissniss.
#org @welboy
= How may I help you sir?
#org @welgirl
= How may I help you madam?
#org @need
= There is an erro.\pFor this script to run properly\nyou need Interdeoth's Real Time\lclock, and Jpans FireRed Hack\lInstaled.\pPlease contact NarutoActor with\nany problems you have receved with\lthis script.
#org @thk
= Thank you very much.\pYou now have an acount.\pFeel free to deposite money,\nwithdraw money, use our world wide\lATM's and most of all, have fun\lbanking with Mestopia.
#org @sorry
= I am sorry you feel that way.\pIf you change your mind, do not\nhesitate to come back.
#org @do
= Welcome to Mestopia Bank.\pI see you do not have an acount\nhere with us.\pDo you want to open an acount, it\nis only cost $5,000.\pOnce you open an acount you can\nstart erning interset, it\lpractialy pays for it's self.\pSo, What do you say, can you agree\nto that?
#org @greets
= Hello, and Welcome back to\nMestopia Grand Bank.
#org @notenough
= I am sorry, but you do not have\nenough money to start an acount.\pPlease come again.