Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /*
- Dieses Filterscript wurde von K3VIN am 11.06.2013
- um 13:40 erstellt.
- Ihr könnt hiermit machen was ihr wollt, lediglich gebe ich
- nur Support zu diesem Filterscript, wenn dadurch Bugs mit
- eurem Gamemode enstehen müsst ihr diese selber ausbaden.
- Greetz K3VIN
- PS: Kommt nicht auf dumme gedanken es wieder als eures auszugeben.
- */
- #include <a_samp>
- #include <ocmd>
- #include <dini>
- #include <streamer>
- #define Rot 0xFF2D35FF
- #define Weiss 0xFFFFFFFF
- #define Orange 0xFF9C00FF
- #define Gruen 0x4BB400FF
- #define DIALOG_PORTEN 0
- #define DIALOG_BANK 1
- #define DIALOG_DATEN 2
- #define DIALOG_VERWALTEN 3
- #define DIALOG_EINZAHLEN 4
- #define DIALOG_PINABFRAGE 5
- #define DIALOG_AUSZAHLEN 6
- #define DIALOG_ATM 7
- #define Function%0(%1) forward%0(%1); public%0(%1)//
- #define String(%0,%1,%2,%3) do {new _msg[128]; format(_msg,sizeof(_msg),%2,%3); SendClientMessage(%0,%1,_msg); } while(FALSE)
- new bool:FALSE = false;
- #define KEY_N 131072
- #define Geschenk 25
- stock CreatePickupEx(modelid, spawntype, Float:x, Float:y, Float:z, text[])
- {
- CreateDynamic3DTextLabel(text, Weiss, x, y, z, 15.0);
- return CreatePickup(modelid, spawntype, x, y, z);
- }
- main()
- {
- }
- enum SpielerKonto
- {
- Konto,
- Kontostand,
- Beantragt,
- Pin,
- Kontonummer,
- Abholen
- }
- new Bank[MAX_PLAYERS][SpielerKonto],
- GlobalString[1024];
- new Float:ATMS[][3] =
- {
- {1507.69995, -1276.09998, 14.2}
- };
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print("Bank System by K3VIN ");
- print("--------------------------------------\n");
- CreatePickupEx(1274, 1, 1501.8632,-1277.8013,14.5625,"Sparkasse\nbenutze die Taste 'N'");
- // ============== [ Atm ] ============== //
- CreateDynamicObject(2942, 1507.69995, -1276.09998, 14.2, 0, 0, 0);
- for(new o=0; o<sizeof(ATMS); o++)
- {
- format(GlobalString,sizeof(GlobalString),"Geldautomat\nBenutze die Taste 'N'",ATMS[o][0],ATMS[o][1],ATMS[o][2]);
- Create3DTextLabel(GlobalString,Weiss,ATMS[o][0],ATMS[o][1],ATMS[o][2]+1,25,0,1);
- }
- return 1;
- }
- public OnFilterScriptExit()
- {
- for(new i=0; i<MAX_PLAYERS; i++)
- {
- BankSpeichern(i);
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- BankLaden(playerid);
- String(playerid,Orange,"Willkommen %s, Banksystem by K3VIN",SpielerName(playerid));
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- BankSpeichern(playerid);
- Bank[playerid][Konto] = 0;
- Bank[playerid][Kontostand] = 0;
- Bank[playerid][Beantragt] = 0;
- Bank[playerid][Pin] = 0;
- Bank[playerid][Kontonummer] = 0;
- return 1;
- }
- // ==================================================================== //
- ocmd:porten(playerid,params[])
- {
- ShowPlayerDialog(playerid,DIALOG_PORTEN,DIALOG_STYLE_LIST,"Wohin ?","Los Santos Bank","Auswahl","Abbrechen");
- return 1;
- }
- ocmd:geld(playerid,params[])
- {
- #pragma unused params
- GivePlayerMoney(playerid,500);
- return 1;
- }
- // ==================================================================== //
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- if(newkeys & KEY_N)
- {
- if(IsPlayerInRangeOfPoint(playerid,2.0,1501.8632,-1277.8013,14.5625))
- {
- ShowPlayerDialog(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Sparkasse","Konto erstellen\nKonto abholen\nVerwalten","Auswahl","Abbrechen");
- return 1;
- }
- for(new o=0; o<sizeof(ATMS); o++)
- {
- if(IsPlayerInRangeOfPoint(playerid,3.0,ATMS[o][0],ATMS[o][1],ATMS[o][2]))
- {
- if(Bank[playerid][Konto] == 0)return SendClientMessage(playerid,Orange,"Du besitzt noch kein Konto!");
- ShowPlayerDialog(playerid,DIALOG_VERWALTEN,DIALOG_STYLE_LIST,"Konto Verwaltung","Kontostand\nEinzahlen\nAuszahlen","Auswahl","Abbrechen");
- return 1;
- }
- }
- }
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- if(dialogid==DIALOG_PORTEN)
- {
- if(response)
- {
- if(listitem==0)
- {
- SetPlayerPos(playerid,1521.3539,-1284.2428,14.4892);
- SetPlayerInterior(playerid,0);
- SetCameraBehindPlayer(playerid);
- SetPlayerFacingAngle(playerid,37.2782);
- SendClientMessage(playerid,Weiss,"Du hast dich erfolgreich zur Los Santos Bank geportet!");
- return 1;
- }
- }
- }
- if(dialogid==DIALOG_BANK)
- {
- if(response)
- {
- if(listitem==0)
- {
- if(Bank[playerid][Konto] == 1)return SendClientMessage(playerid,Orange,"Du besitzt bereits ein Konto!");
- String(playerid,Weiss,"Vielen Danke %s, das Sie sich für die Sparkasse entschieden habe.",SpielerName(playerid));
- SetTimerEx("Kontobeantragt",10000,0,"d",playerid);
- Bank[playerid][Beantragt] = 1;
- return 1;
- }
- if(listitem==1)
- {
- new string[512];
- if(Bank[playerid][Konto] == 1)return SendClientMessage(playerid,Orange,"Du besitzt bereits ein Konto!");
- if(Bank[playerid][Beantragt] == 0)return SendClientMessage(playerid,Orange,"Du hast kein Konto beantragt!");
- if(Bank[playerid][Abholen] == 0)return SendClientMessage(playerid,Orange,"Dein Konto ist noch nicht fertig!");
- new pin = random(8999) + 1000, nummer = random(18999) + 1000;
- Bank[playerid][Abholen] = 0;
- Bank[playerid][Beantragt] = 0;
- Bank[playerid][Konto] = 1;
- Bank[playerid][Pin] = pin;
- Bank[playerid][Kontonummer] = nummer;
- Bank[playerid][Kontostand] += Geschenk;
- format(string,sizeof(string),"{FEFEFE}Dein Konto ist fertiggestellt.\n\nDeine Kontonummer lautet: {23FF00}%i{FEFEFE}\nDein Bankpin lautet: {23FF00}%i{FEFEFE}\n\nGib auf dein Bankpin gut acht!",pin,nummer);
- ShowPlayerDialog(playerid,DIALOG_DATEN,DIALOG_STYLE_MSGBOX,"Dein Konto",string,"Fertig","");
- String(playerid,Gruen,"Als Geschenk erhälst du von uns %i$ auf dein Konto gutgeschrieben.",Geschenk);
- return 1;
- }
- if(listitem==2)
- {
- if(Bank[playerid][Konto] == 0)return SendClientMessage(playerid,Orange,"Du besitzt kein Konto!");
- ShowPlayerDialog(playerid,DIALOG_PINABFRAGE,DIALOG_STYLE_INPUT,"Sparkasse - Konto Verwalten","Um auch wirklich sicher zu gehen, dass das dein Konto ist,\ngib bitte den Konto Pin an!","Absenden","Abbrechen");
- return 1;
- }
- }
- }
- if(dialogid==DIALOG_PINABFRAGE)
- {
- if(!response)return ShowPlayerDialog(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Sparkasse","Konto erstellen\nKonto abholen\nVerwalten","Auswahl","Abbrechen");
- if(response)
- {
- if(strval(inputtext) != Bank[playerid][Pin])return ShowPlayerDialog(playerid,DIALOG_PINABFRAGE,DIALOG_STYLE_INPUT,"Sparkasse - Konto Verwalten","{E10000}Falscher Pin!\n\n{FEFEFE}Bitte gib den Korrekten Pin ein!","Absenden","Abbrechen");
- ShowPlayerDialog(playerid,DIALOG_VERWALTEN,DIALOG_STYLE_LIST,"Konto Verwaltung","Kontostand\nEinzahlen\nAuszahlen","Auswahl","Abbrechen");
- return 1;
- }
- }
- if(dialogid==DIALOG_VERWALTEN)
- {
- if(!response)return ShowPlayerDialog(playerid,DIALOG_BANK,DIALOG_STYLE_LIST,"Sparkasse","Konto erstellen\nKonto abholen\nVerwalten","Auswahl","Abbrechen");
- if(response)
- {
- if(listitem==0)
- {
- SendClientMessage(playerid,Weiss, " ");
- SendClientMessage(playerid,Orange,"| ==================== |");
- SendClientMessage(playerid,Weiss, " ");
- String(playerid,Weiss,"Aktueller Kontostand: {23FF00}%i$",Bank[playerid][Kontostand]);
- SendClientMessage(playerid,Weiss, " ");
- SendClientMessage(playerid,Orange,"| ==================== |");
- ShowPlayerDialog(playerid,DIALOG_VERWALTEN,DIALOG_STYLE_LIST,"Konto Verwaltung","Kontostand\nEinzahlen\nAuszahlen","Auswahl","Abbrechen");
- return 1;
- }
- if(listitem==1)
- {
- ShowPlayerDialog(playerid,DIALOG_EINZAHLEN,DIALOG_STYLE_INPUT,"Geld einzahlen","Wieviel Geld möchtest du auf dein Konto einzahlen ?","Einzahlen","Abbrechen");
- return 1;
- }
- if(listitem==2)
- {
- ShowPlayerDialog(playerid,DIALOG_AUSZAHLEN,DIALOG_STYLE_INPUT,"Geld auszahlen","Wieviel Geld möchtest du von deinem Konto auszahlen ?","Auszahlen","Abbrechen");
- return 1;
- }
- }
- }
- if(dialogid==DIALOG_EINZAHLEN)
- {
- if(!response)return ShowPlayerDialog(playerid,DIALOG_VERWALTEN,DIALOG_STYLE_LIST,"Konto Verwaltung","Kontostand\nEinzahlen\nAuszahlen","Auswahl","Abbrechen");
- if(strval(inputtext) > GetPlayerMoney(playerid))return ShowPlayerDialog(playerid,DIALOG_EINZAHLEN,DIALOG_STYLE_INPUT,"Geld einzahlen","{E10000}So viel Geld besitzt du nicht!\n{FEFEFE}Bitte gib einen Betrag an den du auch besitzt!","Einzahlen","Abbrechen");
- GivePlayerMoney(playerid,-strval(inputtext));
- Bank[playerid][Kontostand] += strval(inputtext);
- SendClientMessage(playerid,Weiss, " ");
- String(playerid,Weiss,"Du hast {23FF00}%i${FEFEFE} in dein Konto eingezahlt!",strval(inputtext));
- String(playerid,Weiss,"Aktueller Kontostand: {23FF00}%i$",Bank[playerid][Kontostand]);
- return 1;
- }
- if(dialogid==DIALOG_AUSZAHLEN)
- {
- if(!response)return ShowPlayerDialog(playerid,DIALOG_VERWALTEN,DIALOG_STYLE_LIST,"Konto Verwaltung","Kontostand\nEinzahlen\nAuszahlen","Auswahl","Abbrechen");
- if(strval(inputtext) > Bank[playerid][Kontostand])return ShowPlayerDialog(playerid,DIALOG_AUSZAHLEN,DIALOG_STYLE_INPUT,"Geld auszahlen","{E10000}So viel Geld besitzt du nicht!\n{FEFEFE}Bitte gib einen Betrag an den du auch besitzt!","Auszahlen","Abbrechen");
- Bank[playerid][Kontostand] -= strval(inputtext);
- GivePlayerMoney(playerid, GetPlayerMoney(playerid) +strval(inputtext));
- SendClientMessage(playerid,Weiss," ");
- String(playerid,Weiss,"Du hast dir {23FF00}%i${FEFEFE} von deinem Konto ausgezahlt!",strval(inputtext));
- String(playerid,Weiss,"Aktueller Kontostand: {23FF00}%i$",Bank[playerid][Kontostand]);
- return 1;
- }
- return 1;
- }
- Function Kontobeantragt(playerid)
- {
- String(playerid,Orange,"Die Sparkasse meldet, das Ihr Konto fertig ist %s",SpielerName(playerid));
- Bank[playerid][Abholen] = 1;
- return 1;
- }
- stock SpielerName(playerid)
- {
- new Name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,Name,sizeof(Name));
- return Name;
- }
- stock BankLaden(playerid)
- {
- new Name[MAX_PLAYER_NAME],Datei[64];
- GetPlayerName(playerid,Name,sizeof(Name));
- format(Datei,sizeof(Datei),"/Spieler/%s.txt",Name);
- Bank[playerid][Konto] = dini_Int(Datei,"Konto");
- Bank[playerid][Kontostand] = dini_Int(Datei,"Kontostand");
- Bank[playerid][Beantragt] = dini_Int(Datei,"Beantragt");
- Bank[playerid][Pin] = dini_Int(Datei,"Pin");
- Bank[playerid][Kontonummer] = dini_Int(Datei,"Kontonummer");
- Bank[playerid][Abholen] = dini_Int(Datei,"Abholen");
- return 1;
- }
- stock BankSpeichern(playerid)
- {
- new Name[MAX_PLAYER_NAME],Datei[64];
- GetPlayerName(playerid,Name,sizeof(Name));
- if(!fexist(Datei))
- {
- format(Datei,sizeof(Datei),"/Spieler/%s.txt",Name);
- dini_Create(Datei);
- }
- dini_IntSet(Datei,"Konto",Bank[playerid][Konto]);
- dini_IntSet(Datei,"Kontostand",Bank[playerid][Kontostand]);
- dini_IntSet(Datei,"Beantragt",Bank[playerid][Beantragt]);
- dini_IntSet(Datei,"Pin",Bank[playerid][Pin]);
- dini_IntSet(Datei,"Kontonummer",Bank[playerid][Kontonummer]);
- dini_IntSet(Datei,"Abholen",Bank[playerid][Abholen]);
- return 1;
- }
- stock IsNumeric(const string[]) {
- new length=strlen(string);
- if (length==0) return false;
- for (new i = 0; i < length; i++) {
- if (
- (string[i] > '9' || string[i] < '0' && string[i]!='-' && string[i]!='+')
- || (string[i]=='-' && i!=0)
- || (string[i]=='+' && i!=0)
- ) return false;
- }
- if (length==1 && (string[0]=='-' || string[0]=='+')) return false;
- return true;
- }
Add Comment
Please, Sign In to add comment