SHOW:
|
|
- or go back to the newest paste.
| 1 | / / Bank system by OzSasson iRaiDeN | |
| 2 | # include <a_samp> | |
| 3 | # include <YSI\y_ini> | |
| 4 | # include <YSI\y_commands> | |
| 5 | ||
| 6 | / / ======== [ Define ] ======== | |
| 7 | ||
| 8 | # define DIALOG_BANK (random (200)) | |
| 9 | # define DIALOG_DEPOSIT (random (300)) | |
| 10 | # define DIALOG_WITHDRAW (random (100)) | |
| 11 | # define MAX_DEPOSIT (1000000000) | |
| 12 | # define MAX_WITHDRAW (500000) | |
| 13 | ||
| 14 | / / ====== [ News ] ======== | |
| 15 | ||
| 16 | enum pInfo | |
| 17 | {
| |
| 18 | - | pBankAccount , |
| 18 | + | pBankAccount , |
| 19 | - | pAccountdata |
| 19 | + | pAccountdata |
| 20 | } | |
| 21 | ||
| 22 | new PlayerInfo [MAX_PLAYERS] [pInfo], | |
| 23 | gName [MAX_PLAYERS] [MAX_PLAYER_NAME +1], | |
| 24 | szString [256]; | |
| 25 | ||
| 26 | public OnPlayerConnect (playerid) | |
| 27 | {
| |
| 28 | - | INI_ParseFile (gAccountFile (playerid), "LoadUser_% s",. BExtra = true,. Extra = playerid); |
| 28 | + | INI_ParseFile (gAccountFile (playerid), "LoadUser_% s",. BExtra = true,. Extra = playerid); |
| 29 | - | if (! PlayerInfo [playerid] [pAccountdata]) |
| 29 | + | if (! PlayerInfo [playerid] [pAccountdata]) |
| 30 | - | {
|
| 30 | + | {
|
| 31 | - | new INI: File = INI_Open (gAccountFile (playerid)); |
| 31 | + | new INI: File = INI_Open (gAccountFile (playerid)); |
| 32 | - | INI_WriteInt (File, "BankAccount", 0); |
| 32 | + | INI_WriteInt (File, "BankAccount", 0); |
| 33 | - | INI_WriteInt (File, "DataSaved", 1); |
| 33 | + | INI_WriteInt (File, "DataSaved", 1); |
| 34 | - | INI_Close (File); |
| 34 | + | INI_Close (File); |
| 35 | } | |
| 36 | - | return GetPlayerName (playerid, gName [playerid], MAX_PLAYER_NAME +1), 1; |
| 36 | + | return GetPlayerName (playerid, gName [playerid], MAX_PLAYER_NAME +1), 1; |
| 37 | } | |
| 38 | ||
| 39 | public OnPlayerDisconnect (playerid, reason) | |
| 40 | {
| |
| 41 | - | new INI: File = INI_Open (gAccountFile (playerid)); |
| 41 | + | new INI: File = INI_Open (gAccountFile (playerid)); |
| 42 | - | INI_WriteInt (File, "BankAccount", PlayerInfo [playerid] [pBankAccount]); |
| 42 | + | INI_WriteInt (File, "BankAccount", PlayerInfo [playerid] [pBankAccount]); |
| 43 | - | INI_WriteInt (File, "Datasaved", PlayerInfo [playerid] [pAccountdata]); |
| 43 | + | INI_WriteInt (File, "Datasaved", PlayerInfo [playerid] [pAccountdata]); |
| 44 | - | INI_Close (File); |
| 44 | + | INI_Close (File); |
| 45 | - | return 1 ; |
| 45 | + | return 1 ; |
| 46 | } | |
| 47 | ||
| 48 | YCMD: bank (playerid, params [], help) | |
| 49 | {
| |
| 50 | - | # pragma unused help |
| 50 | + | # pragma unused help |
| 51 | - | ShowPlayerDialog (playerid, DIALOG_BANK, DIALOG_STYLE_LIST, "Bank", "Deposit - control \ nWithdraw - Remove \ nBalance - Balance " , "Cancel" , "Select " ) ; |
| 51 | + | ShowPlayerDialog (playerid, DIALOG_BANK, DIALOG_STYLE_LIST, "Bank", "Deposit - control \ nWithdraw - Remove \ nBalance - Balance " , "Cancel" , "Select " ) ; |
| 52 | } | |
| 53 | ||
| 54 | public OnDialogResponse (playerid, dialogid, response, listitem, inputtext []) | |
| 55 | {
| |
| 56 | - | if (dialogid == DIALOG_BANK) |
| 56 | + | if (dialogid == DIALOG_BANK) |
| 57 | {
| |
| 58 | - | if ( ! response ) return 0; |
| 58 | + | if ( ! response ) return 0; |
| 59 | - | if ( response ) |
| 59 | + | if ( response ) |
| 60 | {
| |
| 61 | - | switch (listitem) |
| 61 | + | switch (listitem) |
| 62 | {
| |
| 63 | - | case 1: ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", " Please enter the amount " , "Cancel" , " control " ) ; |
| 63 | + | case 1: ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", " Please enter the amount " , "Cancel" , " control " ) ; |
| 64 | - | case 2: ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Withdraw", " Please enter the amount " , "Cancel" , " pull " ) ; |
| 64 | + | case 2: ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Withdraw", " Please enter the amount " , "Cancel" , " pull " ) ; |
| 65 | - | case 3 : |
| 65 | + | case 3 : |
| 66 | {
| |
| 67 | - | format (szString, 50, "Your Balance:% d", PlayerInfo [playerid] [pBankAccount]); |
| 67 | + | format (szString, 50, "Your Balance:% d", PlayerInfo [playerid] [pBankAccount]); |
| 68 | - | ShowPlayerDialog (playerid, 123, DIALOG_STYLE_MSGBOX, "Balance", szString, " Cancel" , "OK " ) ; |
| 68 | + | ShowPlayerDialog (playerid, 123, DIALOG_STYLE_MSGBOX, "Balance", szString, " Cancel" , "OK " ) ; |
| 69 | } | |
| 70 | } | |
| 71 | } | |
| 72 | } | |
| 73 | - | if (dialogid == DIALOG_DEPOSIT) |
| 73 | + | if (dialogid == DIALOG_DEPOSIT) |
| 74 | {
| |
| 75 | - | if ( ! response ) return 0; |
| 75 | + | if ( ! response ) return 0; |
| 76 | - | if ( response ) |
| 76 | + | if ( response ) |
| 77 | {
| |
| 78 | - | if (! strlen (inputtext)) return ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", " Please enter the amount " , "Cancel" , " control " ) ; |
| 78 | + | if (! strlen (inputtext)) return ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", " Please enter the amount " , "Cancel" , " control " ) ; |
| 79 | - | if (GetPlayerMoney (playerid) <strval (inputtext)) return ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", " you do not have the amount requested , please type a new amount " , "Cancel" , " control " ) ; |
| 79 | + | if (GetPlayerMoney (playerid) <strval (inputtext)) return ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", " you do not have the amount requested , please type a new amount " , "Cancel" , " control " ) ; |
| 80 | - | format (szString, 256, " You can deposit up to % d", MAX_DEPOSIT); |
| 80 | + | format (szString, 256, " You can deposit up to % d", MAX_DEPOSIT); |
| 81 | - | if (strval (inputtext)> MAX_DEPOSIT) return ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", szString, " Cancel" , " control " ) ; |
| 81 | + | if (strval (inputtext)> MAX_DEPOSIT) return ShowPlayerDialog (playerid, DIALOG_DEPOSIT, DIALOG_STYLE_INPUT, "Deposit", szString, " Cancel" , " control " ) ; |
| 82 | - | GivePlayerMoney (playerid,-strval (inputtext)); |
| 82 | + | GivePlayerMoney (playerid,-strval (inputtext)); |
| 83 | - | PlayerInfo [playerid] [pBankAccount] + = strval (inputtext); |
| 83 | + | PlayerInfo [playerid] [pBankAccount] + = strval (inputtext); |
| 84 | - | SendClientMessage (playerid, -1, " Deposition successfully " ) ; |
| 84 | + | SendClientMessage (playerid, -1, " Deposition successfully " ) ; |
| 85 | - | } |
| 85 | + | } |
| 86 | - | } |
| 86 | + | } |
| 87 | - | if (dialogid == DIALOG_WITHDRAW && response) |
| 87 | + | if (dialogid == DIALOG_WITHDRAW && response) |
| 88 | - | {
|
| 88 | + | {
|
| 89 | - | if ( ! response ) return 0; |
| 89 | + | if ( ! response ) return 0; |
| 90 | - | if ( response ) |
| 90 | + | if ( response ) |
| 91 | {
| |
| 92 | - | if (! strlen (inputtext)) return ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Withdraw", " Please enter the amount " , "Cancel" , " pull " ) ; |
| 92 | + | if (! strlen (inputtext)) return ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Withdraw", " Please enter the amount " , "Cancel" , " pull " ) ; |
| 93 | - | if (PlayerInfo [playerid] [pBankAccount]> = strval (inputtext)) return ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Withdraw", " you do not have the amount requested , please type a new amount " , "Cancel" , " pull " ) ; |
| 93 | + | if (PlayerInfo [playerid] [pBankAccount]> = strval (inputtext)) return ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Withdraw", " you do not have the amount requested , please type a new amount " , "Cancel" , " pull " ) ; |
| 94 | - | format (szString, 256, " You can pull up to % d", MAX_WITHDRAW); |
| 94 | + | format (szString, 256, " You can pull up to % d", MAX_WITHDRAW); |
| 95 | - | if (strval (inputtext)> MAX_WITHDRAW) return ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Deposit", szString, " Cancel" , " pull " ) ; |
| 95 | + | if (strval (inputtext)> MAX_WITHDRAW) return ShowPlayerDialog (playerid, DIALOG_WITHDRAW, DIALOG_STYLE_INPUT, "Deposit", szString, " Cancel" , " pull " ) ; |
| 96 | - | GivePlayerMoney (playerid, strval (inputtext)); |
| 96 | + | GivePlayerMoney (playerid, strval (inputtext)); |
| 97 | - | PlayerInfo [playerid] [pBankAccount] - = strval (inputtext); |
| 97 | + | PlayerInfo [playerid] [pBankAccount] - = strval (inputtext); |
| 98 | - | SendClientMessage (playerid, -1, " You pulled successfully " ) ; |
| 98 | + | SendClientMessage (playerid, -1, " You pulled successfully " ) ; |
| 99 | - | } |
| 99 | + | } |
| 100 | } | |
| 101 | - | return 1 ; |
| 101 | + | return 1 ; |
| 102 | } | |
| 103 | ||
| 104 | forward public LoadUser_data (playerid, name [], value []); | |
| 105 | public LoadUser_data (playerid, name [], value []) | |
| 106 | {
| |
| 107 | - | INI_Int ("BankAccount", PlayerInfo [playerid] [pBankAccount]);
|
| 107 | + | INI_Int ("BankAccount", PlayerInfo [playerid] [pBankAccount]);
|
| 108 | - | INI_Int ("Datasaved", PlayerInfo [playerid] [pAccountdata]);
|
| 108 | + | INI_Int ("Datasaved", PlayerInfo [playerid] [pAccountdata]);
|
| 109 | - | return 1 ; |
| 109 | + | return 1 ; |
| 110 | } | |
| 111 | ||
| 112 | stock gAccountFile (playerid) | |
| 113 | {
| |
| 114 | - | new gFile [50]; |
| 114 | + | new gFile [50]; |
| 115 | - | format (gFile, 50, "/ Users /% s.ini", gName [playerid]); |
| 115 | + | format (gFile, 50, "/ Users /% s.ini", gName [playerid]); |
| 116 | - | return gFile ; |
| 116 | + | return gFile ; |
| 117 | } |