Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- //2Live Script by ArabBass V.0.0.1
- //Copyright 2013
- //Es ist strafbar die Credits zu Entfernen
- //INCLUDES
- #include <a_samp>
- #include <dini>
- #include <MD5>
- #include <a_mysql>
- //MYSQL
- #define SQL_HOST "127.0.0.1"
- #define MYSQL_USER "root"
- #define MYSQL_DB ""
- #define MYSQL_PASS ""
- //DCMD
- #define dcmd(%1,%2,%3) if ((strcmp((%3)[1], #%1, true, (%2)) == 0) && ((((%3)[(%2) + 1] == 0) && (dcmd_%1(playerid, "")))||(((%3)[(%2) + 1] == 32) && (dcmd_%1(playerid, (%3)[(%2) + 2]))))) return 1
- //ENUMS
- enum SpielerDaten
- {
- Adminlevel,
- Level,
- Fraktion,
- Team,
- sLogin,
- pName[MAX_PLAYER_NAME],
- pLevel,
- pGeld,
- pKills,
- pTode,
- Float:pHealth
- }
- new SpielerInfo[MAX_PLAYERS][SpielerDaten];
- new sSpieler[MAX_PLAYERS][SpielerDaten];
- //Fahrzeuge
- new lspdcar[6];
- //TIMER
- forward minute();
- //FARBEN
- #define GELB 0xFFFA00FF
- #define ROT 0xFF0000FF
- #define GRUEN 0x00FF0AFF
- #define LILA 0xB400FFFF
- #define ROSA 0xFF00C3FF
- #define ORANGE 0xFFA000FF
- #define GREEN 0x00BB65BE
- #define RED 0xB90000FF
- #define BLAU 0x0A00FFFF
- #define BLUE 0x00FFFFFF
- //DEFINE_FRAKTIONEN
- #define sFraktion1 "LSPD"
- #define sFraktion2 "SFPD"
- #define sFraktion3 "LVPD"
- #define sFraktion4 "Ordnungsamt"
- #define sFraktion5 "Sanitter"
- #define sFraktion6 "Transport-GmBH"
- #define sFraktion7 "SAN-NEWS Reporter"
- #define sFraktion8 "Feuerwehr"
- #define sFraktion9 "ADAC"
- #define sFraktion10 "Fahrschule"
- #define sFraktion11 "Auftragsmrder"
- #define sFraktion12 "Grove Street"
- #define sFraktion13 "Ballas"
- #define sFraktion14 "S.F Rifa"
- #define sFraktion15 "Los Chickos Malos"
- #define sFraktion16 "La Cosa Nostra"
- #define sFraktion17 "Yakuza"
- //Dialoge
- #define DIALOG_REGISTER 1
- #define DIALOG_LOGIN 2
- //Define
- #define STATS 3
- //Variabelen
- new Variabele =1, Variabeleleer;
- new array[5];
- //Betretbare gebuden
- new BSNein, BSNaus;
- //SCRIPT DEFINITION
- #if defined FILTERSCRIPT
- //SERVER_ANZEIGE_IM_CHAT_FENSTER
- public OnFilterScriptInit()
- {
- print("\n--------------------------------------");
- print(" Gamemode 2L V.0.0.1");
- print("--------------------------------------\n");
- return 1;
- }
- public OnFilterScriptExit()
- {
- return 1;
- }
- #else
- main()
- {
- print("\n----------------------------------");
- print(" German/Roleplay");
- print("----------------------------------\n");
- }
- #endif
- public OnGameModeInit()
- {
- //MYSQL
- Connect_To_Database();
- mysql_debug(1);
- //Geschfte nicht betretbar
- DisableInteriorEnterExits();
- //ZIVI_SKINS
- SetGameModeText("Blank Script");
- AddPlayerClass(21,1761.2087,-1895.2740,13.5613,267.3274,0,0,0,0,0,0); // SPAWN
- AddPlayerClass(22,1761.2087,-1895.2740,13.5613,267.3274,0,0,0,0,0,0); // SPAWN
- AddPlayerClass(7,1761.2087,-1895.2740,13.5613,267.3274,0,0,0,0,0,0); // SPAWN
- //GEBUDEN BETRETBAR UND PICKUPS
- //Fahrzeuge
- //LSPD_CARS
- lspdcar[0]= AddStaticVehicle(596,1544.0330,-1659.3746,5.6110,90.1882,0,1); // LSPD Auto 0
- lspdcar[1]= AddStaticVehicle(596,1570.2515,-1710.0615,5.6114,180.4794,0,1); // LSPD Auto 1
- lspdcar[2]= AddStaticVehicle(596,1601.0912,-1688.1052,5.6121,269.1663,0,1); // LSPD Auto 2
- lspdcar[3]= AddStaticVehicle(599,1591.5223,-1709.7393,6.0789,179.0553,0,1); // LSPD Ranger 3
- lspdcar[4]= AddStaticVehicle(427,1529.1625,-1687.8181,6.0225,88.4949,0,1); // LSPD SWATWAGEN 4
- lspdcar[5]= AddStaticVehicle(523,1586.1436,-1671.7510,5.4651,91.4611,0,0); // LSPD Motorrad 5
- //BSN
- BSNein = CreatePickup(1239, 2,1199.3615,-919.6981,43.1108, -1);
- BSNaus = CreatePickup(1239, 2,362.9138,-75.2113,1001.5078, -1);
- //3DTexte
- Create3DTextLabel("Spawnpunkt:\n{FFFFFF}El Corona",GREEN, 1761.2087,-1895.2740,13.5613+0.5,40.0, 0, 0);
- printf("%d",Variabele);
- if(array[1] < array[2])
- {
- OnGameModeExit();
- }
- return 1;
- }
- public minute()
- {
- return 1;
- }
- public OnGameModeExit()
- {
- return 1;
- }
- public OnPlayerRequestClass(playerid, classid)
- {
- if(GetPVarInt(playerid,"Eingeloggt") == 0) //Als erstes fragen wir ab ob der Spieler schon eingeloggt ist oder nicht, damit wir nicht bei jeder Skin Auswahl uns neu Einloggen mssen.
- {
- if(mysql_CheckAccount(playerid) == 0)//Wir berprfen ob der Account Existiert, falls nicht Zeigen wir den Dialog zum Registrieren.
- {
- SendClientMessage(playerid,BLUE,"________-> Willkommen auf auf meinem Server <-________");
- SendClientMessage(playerid,ROT,"Dein Account wurde nicht gefunden, bitte Registriere dich!");
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Bitte Gib ein Passwort an:","Register","Exit");
- }
- else if(mysql_CheckAccount(playerid) == 1)//Falls doch zeigen wir den Dialog zum Einloggen.
- {
- SendClientMessage(playerid,BLUE,"________-> Willkommen auf auf meinem Server <-________");
- SendClientMessage(playerid,GELB,"Dein Account wurde gefunden, bitte Log dich nun ein!");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Bitte gib dein Passwort ein:","Login","Abbrechen");
- }
- }
- return 1;
- }
- public OnPlayerConnect(playerid)
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- if(dini_Exists(Spielerdatei))
- {
- SendClientMessage(playerid,BLAU,"Herzlich willkommen zurck auf unserem Server");
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Dein Account wurde gefunden,bitte gib dein Passwort ein um dich Einzuloggen","LOGIN","Abbrechen");
- return 1;
- }
- else
- {
- new string[100];
- Variabeleleer =100;
- SendClientMessage(playerid,GELB,"{00FF00}Herzlich {FEFEFE}Willkommen {FF000F}auf 2Live");
- format(string,sizeof(string),"Wir sind mehr als %d. Spieler! ",Variabeleleer);
- SendClientMessage(playerid,ROSA,string);
- }
- //Dialoge
- //Register/Login System
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Bitte whle dir ein Passwort um dir ein Account zu erstellen","Registrieren","Abbrechen");
- return 1;
- }
- public OnPlayerDisconnect(playerid, reason)
- {
- SavePlayer(playerid);
- DeletePVar(playerid,"Eigentloggt");
- sSpieler[playerid][sLogin] = 0;
- SpielerSpeichern(playerid);
- return 1;
- }
- public OnPlayerSpawn(playerid)
- {
- if(IstSpielerInFraktion(playerid,17)) //Yakuza SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Gangster unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,16)) //La Cosa Nostra SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Gangster unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,15)) //Los Chickos Malos SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Gangster unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,14)) //S.F Rifa SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Gangster unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,13)) //Ballas SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Gangster unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,12)) //Grove Street SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Gangster unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,11)) //Auftragsmrder SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Auftragsmrder unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,10)) //Fahrschule SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Fahrschul-Lehrer unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,9)) //ADAC SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als ADAC mitarbeiter unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,8)) //Feuerwehr SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Feuerwehrmann unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,7)) //SanNews-Reporter SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Reporter unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,6)) //Transport GmBH SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Trucker unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,5)) //Sanitter SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als Sanitter unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,4)) //Ordnungsamt SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als O-Amt unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,3)) //LVPD SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als LVPD unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,2)) //SFPD SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als SFPD unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- if(IstSpielerInFraktion(playerid,1)) //LSPD SPAWN
- {
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);
- SetPlayerColor(playerid,BLAU);
- SendClientMessage(playerid,BLAU,"Du bist als LSPD unterwegs");
- GivePlayerWeapon(playerid,24,500);
- return 1;
- }
- //HIER IST DIE SPAWN CAMERA
- SetPlayerVirtualWorld(playerid,0);
- SetPlayerPos(playerid,1761.2087,-1895.2740,13.5613);//ZIVI SPAWN
- SetPlayerFacingAngle(playerid,267.3274);//SPIELER SPAWNPUNKT RICHTUNG
- return 1;
- }
- public OnPlayerDeath(playerid, killerid, reason)
- {
- SendClientMessage(playerid,ROT,"Du bist Tot");
- return 1;
- }
- public OnVehicleSpawn(vehicleid)
- {
- return 1;
- }
- public OnVehicleDeath(vehicleid, killerid)
- {
- return 1;
- }
- public OnPlayerText(playerid, text[])
- {
- return 1;
- }
- public OnPlayerCommandText(playerid, cmdtext[])
- {
- //BEFEHLE
- dcmd(heal,4,cmdtext);
- dcmd(kick,4,cmdtext);
- dcmd(makeadmin, 9, cmdtext);
- dcmd(makeleader, 10, cmdtext);
- return 1;
- }
- //DCMD BEFEHLE
- //Makeleader Befehl
- dcmd_makeleader(playerid,params[])
- {
- new pid, frakid;
- if(sscanf(params,"ud",pid,frakid))
- {
- return SendClientMessage(playerid,GELB,"Verwendung : /makeleader [ID] [Fraktions ID]");
- }
- if(frakid > 17)
- {
- return SendClientMessage(playerid,ROT,"Es gibt nicht mehr als 17 Fraktionen");
- }
- if(IstSpielerAdmin(playerid, 5))
- {
- if(pid == INVALID_PLAYER_ID)
- {
- return SendClientMessage(playerid,ROT,"Ungltiger Spieler!");
- }
- if(IstSpielerInFraktion(pid,frakid) == frakid)
- {
- return SendClientMessage(playerid,ROT,"Der angegebene Spieler ist schon in der Fraktion!");
- }
- else
- {
- sSpieler[pid][Fraktion] = frakid;
- SendClientMessage(pid,BLUE,"Du bist nun in einer Fraktion!");
- SendClientMessage(pid,ORANGE,"Du hast den Spieler zu einer Fraktion eingeladen!");
- }
- }
- else
- {
- return SendClientMessage(playerid,ROT,"Du bist kein Administrator!");
- }
- return 1;
- }
- //Makeadmin Befehl
- dcmd_makeadmin(playerid, params[])
- {
- new pid,level;
- if(sscanf(params,"ud", pid, level))
- {
- return SendClientMessage(playerid, GELB,"Verwendung : /makeadmin [ID] [Level]");
- }
- if(IstSpielerAdmin(playerid, 5))
- {
- if(pid == INVALID_PLAYER_ID)
- {
- return SendClientMessage(playerid,ROT,"Ungltiger Spieler!");
- }
- if(IstSpielerAdmin(pid,level) == level)
- {
- return SendClientMessage(playerid, LILA,"Der Spieler hat schon das angegebene Adminlevel!");
- }
- else
- {
- sSpieler[pid][Adminlevel] = level;
- SendClientMessage(pid, ORANGE, "Du bist nun ein Administrator!");
- SendClientMessage(playerid,ROSA,"Du hast den angegeben Spieler zum Administrator gemacht!");
- }
- }
- else
- {
- return SendClientMessage(playerid,ROT,"Du bist kein Administrator!");
- }
- return 1;
- }
- //BEFEHL ZUM HEILEN
- dcmd_heal(playerid,params[])
- {
- new i;
- if(strlen(params))
- {
- i = strval(params);
- if(IsPlayerConnected(i))
- {
- SetPlayerHealth(i,100.0);
- SendClientMessage(i,ROT,"Du wurdest geheilt");
- SendClientMessage(playerid,GREEN,"Du hast den Spieler erfolgreich geheilt");
- }
- else
- {
- SendClientMessage(playerid,ROT,"Der spieler ist nicht Online");
- }
- }
- return 1;
- }
- //BEFEHL ZUM KICKEN
- dcmd_kick(playerid,params[])
- {
- new pid, str[64];
- if(sscanf(params, "uS(Kein Grund) [128]", pid, str))
- return SendClientMessage(playerid,RED,"Befehl:/kick [id] [Grund]");
- if(pid ==playerid) return SendClientMessage(playerid,ORANGE,"Du kannst dich nicht Selber kicken");
- if(!IsPlayerConnected(pid)) return SendClientMessage(playerid,ORANGE,"Der spieler ist nicht Online");
- if(IsPlayerAdmin(playerid))
- {
- new Spieler[MAX_PLAYER_NAME], str2[128];
- GetPlayerName(pid,Spieler,sizeof(Spieler));
- format(str2,sizeof(str2),"%s wurde vom Server gekickt! Grund :%S",Spieler,str);
- SendClientMessageToAll(ROT,str2);
- Kick(pid);
- }
- else return SendClientMessage(playerid,RED,"Du bist kein Admin");
- return 1;
- }
- public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
- {
- return 1;
- }
- public OnPlayerExitVehicle(playerid, vehicleid)
- {
- return 1;
- }
- public OnPlayerStateChange(playerid, newstate, oldstate)
- {
- if(newstate == PLAYER_STATE_DRIVER)
- {
- for(new i = 0; i<sizeof(lspdcar); i++)
- {
- if(GetPlayerVehicleID(playerid) == lspdcar[i])
- {
- if(IstSpielerInFraktion(playerid, 1))
- {
- }
- else
- {
- RemovePlayerFromVehicle(playerid);
- SendClientMessage(playerid,ROT,"Du bist kein Mitglied bei der LSPD");
- }
- }
- }
- }
- return 1;
- }
- public OnPlayerEnterCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerEnterRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnPlayerLeaveRaceCheckpoint(playerid)
- {
- return 1;
- }
- public OnRconCommand(cmd[])
- {
- return 1;
- }
- public OnPlayerRequestSpawn(playerid)
- {
- return 1;
- }
- public OnObjectMoved(objectid)
- {
- return 1;
- }
- public OnPlayerObjectMoved(playerid, objectid)
- {
- return 1;
- }
- public OnPlayerPickUpPickup(playerid, pickupid)
- {
- //SPAWNPUNKTE BEIM BETRETEN VOM GEBUDE
- //BSN
- if(pickupid == BSNein)
- {
- SetPlayerPos(playerid,364.2925,-73.7120,1001.5078);
- SetPlayerFacingAngle(playerid,309.6866);
- SetPlayerInterior(playerid,10);
- }
- if(pickupid == BSNaus)
- {
- SetPlayerPos(playerid,1199.9718,-921.0089,43.1037);
- SetPlayerFacingAngle(playerid,187.8334);
- SetPlayerInterior(playerid,0);
- }
- return 1;
- }
- public OnVehicleMod(playerid, vehicleid, componentid)
- {
- return 1;
- }
- public OnVehiclePaintjob(playerid, vehicleid, paintjobid)
- {
- return 1;
- }
- public OnVehicleRespray(playerid, vehicleid, color1, color2)
- {
- return 1;
- }
- public OnPlayerSelectedMenuRow(playerid, row)
- {
- return 1;
- }
- public OnPlayerExitedMenu(playerid)
- {
- return 1;
- }
- public OnPlayerInteriorChange(playerid, newinteriorid, oldinteriorid)
- {
- return 1;
- }
- public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
- {
- return 1;
- }
- public OnRconLoginAttempt(ip[], password[], success)
- {
- return 1;
- }
- public OnPlayerUpdate(playerid)
- {
- return 1;
- }
- public OnPlayerStreamIn(playerid, forplayerid)
- {
- return 1;
- }
- public OnPlayerStreamOut(playerid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamIn(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnVehicleStreamOut(vehicleid, forplayerid)
- {
- return 1;
- }
- public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
- {
- switch(dialogid)
- {
- case DIALOG_REGISTER:
- {
- if(response)
- {
- if(strlen(inputtext) == 0) // Wenn kein Passwort angegebene wurde
- {
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Register","Das angegebene Passwort war zu Kurz...\nBitte Registrier dich jetzt mit einem Passwort:","Register","Abbrechen");
- return 1;
- }
- else
- {
- CreateAccount(playerid, inputtext); //Account wird erstellt
- SetPVarInt(playerid,"Eingeloggt",1); //Die variable wird auf 1 gesetzt, damit wir nun die Skin Auswahl benutzen knnen ohne wieder nach unserem Passwort gefragt zu werden.
- SpawnPlayer(playerid); //Wir lassen den Spieler Spawnen
- return 1;
- }
- }
- else
- {
- Kick(playerid); //Wenn auf Abbrechen geklickt wurde, wird der Spieler gekickt damit man ohne Account nicht Spielen kann.
- }
- }
- case DIALOG_LOGIN:
- {
- if(response)
- {
- if(strlen(inputtext) == 0) // Wenn kein Passwort angegebene wurde
- {
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das Angegebene Passwort war Falsch.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
- return 1;
- }
- else
- {
- if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName(playerid)), true)) // Wir holen uns das Passwort aus der MySQL Datenbank und berprfen es mit dem angegebenen passwort.
- {
- SetPVarInt(playerid,"Eingeloggt",1); //Falls beide passwrter bereinstimmen wird die Variable auf 1 gesetzt damit wir die Skin auswahl benutzen knnen.
- LoadPlayer(playerid); //Der Spieler wird "geladen", speich es werden seine Daten aus der Datenbank geholt und in variablen gespeichert um diese im Skript zu verwenden.
- SpawnPlayer(playerid); //Wir lassen den Spieler Spawnen
- return 1;
- }
- else
- {
- //Wenn das Passwort falsch war, lassen wir erneut das Login fenster erscheinen damit der Spieler das Richtige Passwort eingibt.
- ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login","Das war das Falsche Passwort.\nBitte log dich jetzt mit dem richtigen Passwort ein:","Login","Abbrechen");
- return 1;
- }
- }
- }
- else
- {
- Kick(playerid); //Wenn auf Abbrechen geklickt wurde, wird der Spieler gekickt damit man ohne Account nicht Spielen kann.
- }
- }
- }
- return 1;
- }
- if(dialogid == STATS)
- {
- if(response == 0)
- {
- return 1;
- }
- if(response == 1)
- {
- return 1;
- }
- }
- //REGISTER SYSTEM
- if(dialogid==DIALOG_LOGIN)
- {
- if(response==0)
- {
- SendClientMessage(playerid,BLAU,"Du hast den Login Vorgang abgebrochen");
- Kick(playerid);
- return 1;
- }
- if(response==1)
- {
- Login(playerid,MD5_Hash(inputtext));
- return 1;
- }
- }
- if(dialogid==DIALOG_REGISTER)
- {
- if(response==0)
- {
- SendClientMessage(playerid,BLAU,"Du hast den Vorgang abgebrochen");
- Kick(playerid);
- return 1;
- }
- if(response==1)
- {
- if(!strlen(inputtext))
- {
- SendClientMessage(playerid,BLAU,"Du hast kein Passwort eingegeben");
- ShowPlayerDialog(playerid,DIALOG_REGISTER,DIALOG_STYLE_INPUT,"Registrieren","Bitte whle dir ein Passwort um dir ein Account zu erstellen","Registrieren","Abbrechen");
- return 1;
- }
- else
- {
- Register(playerid,MD5_Hash(inputtext));
- return 1;
- }
- }
- }
- return 1;
- }
- }
- public OnPlayerClickPlayer(playerid, clickedplayerid, source)
- {
- return 1;
- }
- stock mysql_SetInt(Table[], Field[], To, Where[], Where2[])
- {
- new query[128];
- mysql_real_escape_string(Table, Table);
- mysql_real_escape_string(Field, Field);
- mysql_real_escape_string(Where, Where);
- mysql_real_escape_string(Where2, Where2);
- format(query, 128, "UPDATE `%s` SET `%s` = '%d' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
- mysql_query(query);
- return true;
- }
- stock mysql_SetString(Table[], Field[], To[], Where[], Where2[])
- {
- new query[128];
- mysql_real_escape_string(Table, Table);
- mysql_real_escape_string(Field, Field);
- mysql_real_escape_string(To, To);
- mysql_real_escape_string(Where, Where);
- mysql_real_escape_string(Where2, Where2);
- format(query, 128, "UPDATE `%s` SET `%s` = '%s' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
- mysql_query(query);
- return true;
- }
- stock mysql_SetFloat(Table[], Field[], Float:To, Where[], Where2[])
- {
- new query[128];
- mysql_real_escape_string(Table, Table);
- mysql_real_escape_string(Field, Field);
- mysql_real_escape_string(Where, Where);
- mysql_real_escape_string(Where2, Where2);
- format(query, 128, "UPDATE `%s` SET `%s` = '%f' WHERE `%s` = '%s'", Table, Field, To, Where, Where2);
- mysql_query(query);
- return true;
- }
- // mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerInfo[playerid][pName]);
- stock Float:mysql_GetFloat(Table[], Field[], Where[], Is[])
- {
- new query[128], Float:sqlfloat;
- mysql_real_escape_string(Table, Table);
- mysql_real_escape_string(Field, Field);
- mysql_real_escape_string(Where, Where);
- mysql_real_escape_string(Is, Is);
- format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
- mysql_query(query);
- mysql_store_result();
- mysql_fetch_float(sqlfloat);
- mysql_free_result();
- return sqlfloat;
- }
- stock SpielerName(playerid)
- {
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- return name;
- }
- // REGISTERPROGRAMM
- stock Register(playerid,key[])
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- dini_Create(Spielerdatei);
- dini_Set(Spielerdatei,"Passwort",key);
- dini_IntSet(Spielerdatei,"Adminlevel",0);
- dini_IntSet(Spielerdatei,"Level",0);
- dini_IntSet(Spielerdatei,"Fraktion",0);
- dini_IntSet(Spielerdatei,"Team",0);
- SendClientMessage(playerid,BLAU,"Erfolgreich registriert");
- SpielerReset(playerid);
- SpawnPlayer(playerid);
- return 1;
- }
- stock Login(playerid,key[])
- {
- new Spielerdatei[64];
- new name[MAX_PLAYER_NAME];
- GetPlayerName(playerid,name,sizeof(name));
- format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
- if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
- {
- SendClientMessage(playerid,LILA,"Du hast dich erfolgreich eingeloggt");
- SpielerLaden(playerid);
- }
- else
- {
- SendClientMessage(playerid,BLAU,"Du hast ein falsches Passwort eingegeben");
- Kick(playerid);
- }
- return 1;
- }
- stock SpielerSpeichern(playerid)
- {
- new Spieler[64];
- new Sname[MAX_PLAYER_NAME];
- GetPlayerName(playerid,Sname,sizeof(Sname));
- format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
- if(dini_Exists(Spieler))
- {
- dini_IntSet(Spieler,"Adminlevel",sSpieler[playerid][Adminlevel]);
- dini_IntSet(Spieler,"Level",sSpieler[playerid][Level]);
- dini_IntSet(Spieler,"Fraktion",sSpieler[playerid][Fraktion]);
- dini_IntSet(Spieler,"Team",sSpieler[playerid][Team]);
- }
- return 1;
- }
- stock SpielerLaden(playerid)
- {
- new Spieler[64];
- new Sname[MAX_PLAYER_NAME];
- GetPlayerName(playerid,Sname,sizeof(Sname));
- format(Spieler,sizeof(Spieler),"/Spieler/%s.txt",Sname);
- SetPlayerScore(playerid,dini_Int(Spieler,"Level"));
- if(dini_Exists(Spieler))
- {
- SetPlayerScore(playerid,dini_Int(Spieler,"Level"));
- sSpieler[playerid][Adminlevel] = dini_Int(Spieler,"Adminlevel");
- sSpieler[playerid][Level] = dini_Int(Spieler,"Level");
- sSpieler[playerid][Fraktion] = dini_Int(Spieler,"Fraktion");
- sSpieler[playerid][Team] = dini_Int(Spieler,"Team");
- sSpieler[playerid][sLogin] = 1;
- SpawnPlayer(playerid);
- }
- return 1;
- }
- stock SpielerReset(playerid)
- {
- sSpieler[playerid][Adminlevel] = 0;
- sSpieler[playerid][Level] = 0;
- sSpieler[playerid][Fraktion] = 0;
- sSpieler[playerid][Team] = 0;
- return 1;
- }
- //ADMIN_SYSTEM
- stock IstSpielerAdmin(playerid,level)
- {
- if(sSpieler[playerid][Adminlevel] >= level) return 0;
- return 0;
- }
- //Fraktion
- stock IstSpielerInFraktion(playerid, fraktionsid)
- {
- if(sSpieler[playerid][Fraktion] == fraktionsid) return 0;
- return 0;
- }
- //Login
- stock IstSpielerLogged(playerid)
- {
- if(sSpieler[playerid][sLogin] == 1) return 1;
- return 0;
- }
- //MYSQL
- stock Connect_To_Database()
- {
- mysql_connect(SQL_HOST,SQL_USER,SQL_DATE,SQL_PASS);
- if(mysql_ping() == 1)
- {
- print("[MYSQL] Verbindung zur Datenbank wurde erfolgreich hergestellt!");
- return true;
- }
- else
- {
- print("[MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
- print("[MYSQL] Es wird erneut versucht eine Verbindung zur Datenbank herzustellen!");
- mysql_connect(SQL_HOST, SQL_USER, SQL_DATA, SQL_PASS);
- if(mysql_ping() ==1)
- {
- print("[MYSQL] Es konnte im 2 Versuch eine Verbindung hergestellt werden!");
- return true;
- }
- else
- {
- print"[MYSQL] Es konnte keine Verbindung zur Datenbank hergestellt werden!");
- print"[MYSQL] Der Server wird nun beendet!");
- SendRconCommand("exit");
- return true;
- }
- }
- }
- stock mysql_CheckAccount(playerid)
- {
- new Query[128],Name[MAX_PLAYER_NAME],count;
- GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
- mysql_real_escape_string(Name, Name);
- format(Query, sizeof(Query), "SELECT * FROM `accounts`WHERE `Name` = '%s'", Name);
- mysql_query(Query);
- mysql_store_result();
- count = mysql_num_row();
- mysql_fre_result();
- return count;
- }
- stock CreateAccount(playerid, Pass[])
- {
- new query[256],Name[MAX_PLAYER_NAME];
- GetPlayerName(playerid, Name, MAX_PLAYER_NAME);
- mysql_real_escape_string(Name,Name);
- mysql_real_escape_string(pass,pass);
- format(query, sizeof(query),"INSERT INTO `accounts`(`Name`,`Passwort`) VALUES ('%s', '%s')", Name, pass);
- mysql_query(query);
- return true;
- }
- stock mysql_ReturnPasswort(Name[])
- {
- new query[130], Get[130];
- mysql_real_escape_string(Name, Name);
- format(query, 128, "SELECT `passwort` FROM `accounts`WHERE `Name`= '%s'", Name);
- mysql_query(query);
- mysql_store_result();
- mysql_fetch_row(Get);
- mysql_free_result();
- return Get;
- }
- stock LoadPlayer(playerid)
- {
- if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
- {
- GetPlayerName(playerid, SpielerInfo[playerid][pName], MAX_PLAYER_NAME);
- SpielerInfo[playerid][pLevel] = mysql_GetInt("accounts", "Level", "Name", SpielerInfo[playerid][pName]);
- SpielerInfo[playerid][pGeld] = mysql_GetInt("accounts", "Geld", "Name", SpielerInfo[playerid][pName]);
- SpielerInfo[playerid][pKills] = mysql_GetInt("accounts", "Kills", "Name", SpielerInfo[playerid][pName]);
- SpielerInfo[playerid][pTode] = mysql_GetInt("accounts", "Tode", "Name", SpielerInfo[playerid][pName]);
- }
- return 1;
- }
- stock mysql_GetInt(Table[], Field[], Where[], Is[])
- {
- new query[128];
- mysql_real_escape_string(Table, Table);
- mysql_real_escape_string(Field, Field);
- mysql_real_escape_string(Where, Where);
- mysql_real_escape_string(Is, Is);
- format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
- mysql_query(query);
- mysql_store_result();
- new sqlint = mysql_fetch_int();
- mysql_free_result();
- return sqlint;
- }
- mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerInfo[playerid][pName]);
- stock SavePlayer(playerid)
- {
- if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid)) //wir berprfen ob der Spieler berhaupt noch Connected ist und ob er nicht ein NPC ist.
- {
- if(GetPVarInt(playerid,"Eingeloggt") == 1) //Und hier ob er noch eingeloggt ist.
- {
- //Nun speichern wir die Daten in der Datenbank.
- mysql_SetInt("accounts", "Level", SpielerInfo[playerid][pLevel], "Name", SpielerInfo[playerid][pName]);
- mysql_SetInt("accounts", "Geld", SpielerInfo[playerid][pGeld], "Name", SpielerInfo[playerid][pName]);
- mysql_SetInt("accounts", "Kills", SpielerInfo[playerid][pKills], "Name", SpielerInfo[playerid][pName]);
- mysql_SetInt("accounts", "Tode", SpielerInfo[playerid][pTode], "Name", SpielerInfo[playerid][pName]);
- mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
- }
- }
- return 1;
- }
- stock mysql_GetString(Table[], Field[], Where[], Is[])
- {
- new query[128], Get[128];
- mysql_real_escape_string(Table, Table);
- mysql_real_escape_string(Field, Field);
- mysql_real_escape_string(Where, Where);
- mysql_real_escape_string(Is, Is);
- format(query, 128, "SELECT `%s` FROM `%s` WHERE `%s` = '%s'", Field, Table, Where, Is);
- mysql_query(query);
- mysql_store_result();
- mysql_fetch_row(Get);
- mysql_free_result();
- return Get;
- }
- //SSCANF BEFEHLE
- stock sscanf(string[], format[], {Float,_}:...)
- {
- #if defined isnull
- if (isnull(string))
- #else
- if (string[0] == 0 || (string[0] == 1 && string[1] == 0))
- #endif
- {
- return format[0];
- }
- #pragma tabsize 4
- new
- formatPos = 0,
- stringPos = 0,
- paramPos = 2,
- paramCount = numargs(),
- delim = ' ';
- while (string[stringPos] && string[stringPos] <= ' ')
- {
- stringPos++;
- }
- while (paramPos < paramCount && string[stringPos])
- {
- switch (format[formatPos++])
- {
- case '\0':
- {
- return 0;
- }
- case 'i', 'd':
- {
- new
- neg = 1,
- num = 0,
- ch = string[stringPos];
- if (ch == '-')
- {
- neg = -1;
- ch = string[++stringPos];
- }
- do
- {
- stringPos++;
- if ('0' <= ch <= '9')
- {
- num = (num * 10) + (ch - '0');
- }
- else
- {
- return -1;
- }
- }
- while ((ch = string[stringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num * neg);
- }
- case 'h', 'x':
- {
- new
- num = 0,
- ch = string[stringPos];
- do
- {
- stringPos++;
- switch (ch)
- {
- case 'x', 'X':
- {
- num = 0;
- continue;
- }
- case '0' .. '9':
- {
- num = (num << 4) | (ch - '0');
- }
- case 'a' .. 'f':
- {
- num = (num << 4) | (ch - ('a' - 10));
- }
- case 'A' .. 'F':
- {
- num = (num << 4) | (ch - ('A' - 10));
- }
- default:
- {
- return -1;
- }
- }
- }
- while ((ch = string[stringPos]) > ' ' && ch != delim);
- setarg(paramPos, 0, num);
- }
- case 'c':
- {
- setarg(paramPos, 0, string[stringPos++]);
- }
- case 'f':
- {
- new changestr[16], changepos = 0, strpos = stringPos;
- while(changepos < 16 && string[strpos] && string[strpos] != delim)
- {
- changestr[changepos++] = string[strpos++];
- }
- changestr[changepos] = '\0';
- setarg(paramPos,0,_:floatstr(changestr));
- }
- case 'p':
- {
- delim = format[formatPos++];
- continue;
- }
- case '\'':
- {
- new
- end = formatPos - 1,
- ch;
- while ((ch = format[++end]) && ch != '\'') {}
- if (!ch)
- {
- return -1;
- }
- format[end] = '\0';
- if ((ch = strfind(string, format[formatPos], false, stringPos)) == -1)
- {
- if (format[end + 1])
- {
- return -1;
- }
- return 0;
- }
- format[end] = '\'';
- stringPos = ch + (end - formatPos);
- formatPos = end + 1;
- }
- case 'u':
- {
- new
- end = stringPos - 1,
- id = 0,
- bool:num = true,
- ch;
- while ((ch = string[++end]) && ch != delim)
- {
- if (num)
- {
- if ('0' <= ch <= '9')
- {
- id = (id * 10) + (ch - '0');
- }
- else
- {
- num = false;
- }
- }
- }
- if (num && IsPlayerConnected(id))
- {
- setarg(paramPos, 0, id);
- }
- else
- {
- #if !defined foreach
- #define foreach(%1,%2) for (new %2 = 0; %2 < MAX_PLAYERS; %2++) if (IsPlayerConnected(%2))
- #define __SSCANF_FOREACH__
- #endif
- string[end] = '\0';
- num = false;
- new
- name[MAX_PLAYER_NAME];
- id = end - stringPos;
- foreach (Player, playerid)
- {
- GetPlayerName(playerid, name, sizeof (name));
- if (!strcmp(name, string[stringPos], true, id))
- {
- setarg(paramPos, 0, playerid);
- num = true;
- break;
- }
- }
- if (!num)
- {
- setarg(paramPos, 0, INVALID_PLAYER_ID);
- }
- string[end] = ch;
- #if defined __SSCANF_FOREACH__
- #undef foreach
- #undef __SSCANF_FOREACH__
- #endif
- }
- stringPos = end;
- }
- case 's', 'z':
- {
- new
- i = 0,
- ch;
- if (format[formatPos])
- {
- while ((ch = string[stringPos++]) && ch != delim)
- {
- setarg(paramPos, i++, ch);
- }
- if (!i)
- {
- return -1;
- }
- }
- else
- {
- while ((ch = string[stringPos++]))
- {
- setarg(paramPos, i++, ch);
- }
- }
- stringPos--;
- setarg(paramPos, i, '\0');
- }
- default:
- {
- continue;
- }
- }
- while (string[stringPos] && string[stringPos] != delim && string[stringPos] > ' ')
- {
- stringPos++;
- }
- while (string[stringPos] && (string[stringPos] == delim || string[stringPos] <= ' '))
- {
- stringPos++;
- }
- paramPos++;
- }
- do
- {
- if ((delim = format[formatPos++]) > ' ')
- {
- if (delim == '\'')
- {
- while ((delim = format[formatPos++]) && delim != '\'') {}
- }
- else if (delim != 'z')
- {
- return delim;
- }
- }
- }
- while (delim > ' ');
- return 0;
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement