Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #include <a_samp>
- #include <dini>
- forward __OnPlayerSpawn(playerid);
- forward __OnPlayerDisconnect(playerid, reason);
- forward __OnPlayerCommandText(playerid, cmdtext[]);
- forward __OnDialogResponse(playerid, dialogid, response, listitem, inputtext[]);
- enum BankPlayer
- {
- pInhalt,
- pPin,
- pErstellt
- }
- new PlayerBank[MAX_PLAYERS][BankPlayer];
- #define DiaBankErstell 700
- #define DiaBankPinErstell 701
- #define DiaBankMenu 702
- #define DiaBankPin 703
- #define DiaKontoAuszug 704
- #define DiaKontoAbheben 705
- #define DiaKontoEinzahlen 706
- public OnPlayerDisconnect(playerid, reason)
- {
- new pname[MAX_PLAYER_NAME], path[64];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(path, sizeof(path), "/PlayerKonto/%s.cfg", pname);
- if(dini_Exists(path))
- {
- dini_IntSet(path,"Pin",PlayerBank[playerid][pPin]);
- dini_IntSet(path,"Inhalt",PlayerBank[playerid][pInhalt]);
- }
- PlayerBank[playerid][pErstellt]=0;
- PlayerBank[playerid][pPin]=0;
- PlayerBank[playerid][pInhalt]=0;
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- PlayerBank[playerid][pErstellt]=0;
- PlayerBank[playerid][pPin]=0;
- PlayerBank[playerid][pInhalt]=0;
- new pname[MAX_PLAYER_NAME], path[64];
- GetPlayerName(playerid, pname, sizeof(pname));
- format(path, sizeof(path), "/PlayerKonto/%s.cfg", pname);
- if(dini_Exists(path))
- {
- PlayerBank[playerid][pErstellt]=1;
- PlayerBank[playerid][pPin]=dini_Int(path,"Pin");
- PlayerBank[playerid][pInhalt]=dini_Int(path,"Inhalt");
- }
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- if (strcmp("/bank", cmdtext, true, 10) == 0)
- {
- if(PlayerBank[playerid][pErstellt]==1)
- {
- ShowPlayerDialog(playerid,DiaBankPin,DIALOG_STYLE_PASSWORD,"Pin Abfrage","Wilkommen\nBitte gebe dein Pin ein\num Das Bankmenü zu öffnen","Weiter","Abbruch");
- }
- else
- {
- ShowPlayerDialog(playerid,DiaBankErstell,DIALOG_STYLE_MSGBOX,"Konto erstellen","Du besitzt kein Konto.\nMöchtest du dir eins erstellen?","Ja","Nein");
- }
- return 1;
- }
- return 0;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- new pname[MAX_PLAYER_NAME], path[64];
- GetPlayerName(playerid, pname, sizeof(pname));
- if(dialogid==DiaBankErstell)
- {
- if(response)
- {
- format(path, sizeof(path), "/PlayerKonto/%s.cfg", pname);
- dini_Create(path);
- dini_IntSet(path,"Inhalt",0);
- ShowPlayerDialog(playerid,DiaBankPinErstell,DIALOG_STYLE_INPUT,"Pin eingabe","Gebe jetzt dein Pin ein.\nMerke ihn dir gut","Weiter","");
- }
- }
- if(dialogid==DiaBankPinErstell)
- {
- if(response)
- {
- if(strval(inputtext) == 0)
- {
- ShowPlayerDialog(playerid,DiaBankPinErstell,DIALOG_STYLE_INPUT,"Pin eingabe","Fehler\nDu hast keine eingabe gemacht!\n\nGebe jetzt dein Pin ein.\nMerke ihn dir gut","Weiter","");
- }
- else
- {
- format(path, sizeof(path), "/PlayerKonto/%s.cfg", pname);
- dini_IntSet(path,"Pin",strval(inputtext));
- PlayerBank[playerid][pPin]=strval(inputtext);
- ShowPlayerDialog(playerid,DiaBankPin,DIALOG_STYLE_PASSWORD,"Pin Abfrage","Glückwunsch zum Neuen Konto\nBitte gebe dein Pin ein\num Das Bankmenü zu öffnen","Weiter","Abbruch");
- }
- }
- else
- {
- ShowPlayerDialog(playerid,DiaBankPinErstell,DIALOG_STYLE_INPUT,"Pin eingabe","Gebe jetzt dein Pin ein.\nMerke ihn dir gut","Weiter","");
- }
- }
- if(dialogid==DiaBankPin)
- {
- if(response)
- {
- if(strval(inputtext) == PlayerBank[playerid][pPin])
- {
- ShowPlayerDialog(playerid,DiaBankMenu,DIALOG_STYLE_LIST,"Bankkonto","Inhalt\nEinzahlen\nAuszahlen","Wählen","Abbruch");
- }
- else
- {
- ShowPlayerDialog(playerid,DiaBankPin,DIALOG_STYLE_PASSWORD,"Pin Abfrage","Fehler\nPin war falsch\nBitte gebe dein Pin ein\num Das Bankmenü zu öffnen","Weiter","Abbruch");
- }
- }
- }
- if(dialogid==DiaBankMenu)
- {
- if(response)
- {
- if(listitem==0)Konto(playerid);
- if(listitem==1)ShowPlayerDialog(playerid,DiaKontoAbheben,DIALOG_STYLE_INPUT,"Abheben","Gebe jetzt den Betrag an, den du abheben möchtest","Auszahlen","Menü");
- if(listitem==2)ShowPlayerDialog(playerid,DiaKontoEinzahlen,DIALOG_STYLE_INPUT,"Einzahlen","Gebe jetzt den Betrag an, den du einzahlen möchtest","Einzahlen","Menü");
- }
- }
- if(dialogid==DiaKontoAuszug)
- {
- if(!response)
- {
- ShowPlayerDialog(playerid,DiaBankMenu,DIALOG_STYLE_LIST,"Bankkonto","Inhalt\nEinzahlen\nAuszahlen","Wählen","Abbruch");
- }
- }
- if(dialogid==DiaKontoAbheben)
- {
- if(response)
- {
- if(strval(inputtext)<0)return ShowPlayerDialog(playerid,DiaKontoAbheben,DIALOG_STYLE_INPUT,"Abheben","Gebe jetzt ein\nwas du auszahlen möchtest\nbitte nicht unter 0$","Auszahlen","Menü");
- if(strval(inputtext)>PlayerBank[playerid][pInhalt])return ShowPlayerDialog(playerid,DiaKontoAbheben,DIALOG_STYLE_INPUT,"Abheben","Gebe jetzt ein\nwas du auszahlen möchtest\nFehler: So viel hast du nicht","Auszahlen","Menü");
- GivePlayerMoney(playerid,strval(inputtext));
- PlayerBank[playerid][pInhalt]-=strval(inputtext);
- Konto2(playerid,strval(inputtext));
- }
- else
- {
- ShowPlayerDialog(playerid,DiaBankMenu,DIALOG_STYLE_LIST,"Bankkonto","Inhalt\nEinzahlen\nAuszahlen","Wählen","Abbruch");
- }
- }
- if(dialogid==DiaKontoEinzahlen)
- {
- if(response)
- {
- if(strval(inputtext)<0)return ShowPlayerDialog(playerid,DiaKontoEinzahlen,DIALOG_STYLE_INPUT,"Einzahlen","Gebe jetzt ein\nwas du einzahlen möchtest\nbitte nicht unter 0$","Einzahlen","Menü");
- if(strval(inputtext)>GetPlayerMoney(playerid))return ShowPlayerDialog(playerid,DiaKontoEinzahlen,DIALOG_STYLE_INPUT,"Einzahlen","Gebe jetzt ein\nwas du einzahlen möchtest\nFehler: So viel hast du nicht","Einzahlen","Menü");
- GivePlayerMoney(playerid,-strval(inputtext));
- PlayerBank[playerid][pInhalt]+=strval(inputtext);
- Konto3(playerid,strval(inputtext));
- }
- else
- {
- ShowPlayerDialog(playerid,DiaBankMenu,DIALOG_STYLE_LIST,"Bankkonto","Inhalt\nEinzahlen\nAuszahlen","Wählen","Abbruch");
- }
- }
- return 1;
- }
- //DiaKontoAbheben
- stock Konto(playerid)
- {
- new string[128],name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof name);
- format(string,128,"Hallo %s\n\nKontostand:\t%d$",name,PlayerBank[playerid][pInhalt]);
- ShowPlayerDialog(playerid,DiaKontoAuszug,DIALOG_STYLE_MSGBOX,"Kontoauszug",string,"Ok","Menü");
- return 1;
- }
- stock Konto2(playerid,val)
- {
- new string[128],name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof name);
- format(string,128,"Hallo %s\n\nKontostand:\t%d$\nAbgehoben:\t-%d$\n\nGesamt:\t%d$",name,PlayerBank[playerid][pInhalt]+val,val,PlayerBank[playerid][pInhalt]);
- ShowPlayerDialog(playerid,DiaKontoAuszug,DIALOG_STYLE_MSGBOX,"Kontoauszug",string,"Ok","Menü");
- return 1;
- }
- stock Konto3(playerid,val)
- {
- new string[128],name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof name);
- format(string,128,"Hallo %s\n\nKontostand:\t%d$\nEingezahlt:\t+%d$\n\nGesamt:\t%d$",name,PlayerBank[playerid][pInhalt]-val,val,PlayerBank[playerid][pInhalt]);
- ShowPlayerDialog(playerid,DiaKontoAuszug,DIALOG_STYLE_MSGBOX,"Kontoauszug",string,"Ok","Menü");
- return 1;
- }
- //Als sachen
- //Spawn
- #if defined _ALS_OnPlayerSpawn
- #undef OnPlayerSpawn
- #else
- #define _ALS_OnPlayerSpawn
- #endif
- #define OnPlayerSpawn __OnPlayerSpawn
- //connect
- #if defined _ALS_OnPlayerDisconnect
- #undef OnPlayerDisconnect
- #else
- #define _ALS_OnPlayerDisconnect
- #endif
- #define OnPlayerDisconnect __OnPlayerDisconnect
- //CMD
- #if defined _ALS_OnPlayerCommandText
- #undef OnPlayerCommandText
- #else
- #define _ALS_OnPlayerCommandText
- #endif
- #define OnPlayerCommandText __OnPlayerCommandText
- //OnDialog
- #if defined _ALS_OnDialogResponse
- #undef OnDialogResponse
- #else
- #define _ALS_OnDialogResponse
- #endif
- #define OnDialogResponse __OnDialogResponse
Add Comment
Please, Sign In to add comment