Registieren :
public SpielerRegistrieren(playerid,Kennwort[]){
mysql_real_escape_string(Kennwort,Kennwort);
new Query[255];
format(Query,255,"SELECT `Spielername` FROM `accounts` WHERE `Spielername`='%s'",SpielerInfo[playerid][sName]);
mysql_query(Query);
mysql_store_result();
if(mysql_num_rows() > 0)
{
SendClientMessage(playerid,Farbe_Grau,"MySQL Injection -> Du wurdest gebannt, Grund für dein Ban lautet: MySQL Injection Versuch");
BanEx(playerid,"Create-Account Injection");
SendClientMessageToAll(Farbe_Leuchtrot,"Ein Spieler Wurde gebannt, Grund: Create Account Injection (MySQL).");
}
else
{
format(Query,255,"INSERT INTO `accounts` (`Spielername`,`password`,`IpAdresse`,`Registriert`) VALUES ('%s','%s','%s','Am %s um %s Uhr')",SpielerInfo[playerid][sName],Kennwort,SpielerInfo[playerid][sIp],Datum(),Uhrzeit());
mysql_query(Query);
}
return true;
}
Einloggen :
public SpielerEinloggen(playerid,Kennwort[])
{
MySQLCheckConnection();
new Query[255];
format(Query,sizeof(Query),"SELECT * FROM `accounts` WHERE `Spielername` = '%s'",SpielerInfo[playerid][sName]);
mysql_query(Query);
mysql_store_result();
if(mysql_num_rows())
{
mysql_fetch_field("Password",Query);
if(!strcmp(Query,Kennwort,false))
{
mysql_fetch_field("Adminlevel",Query); SpielerInfo[playerid][sAdminlevel] = strval(Query);
printf("AdminLevel geladen: %s / %d", Query, SpielerInfo[playerid][sAdminlevel]);
mysql_fetch_field("Verwarnungen",Query); SpielerInfo[playerid][sWarns] = strval(Query);
mysql_fetch_field("Premium",Query); SpielerInfo[playerid][sPremium] = strval(Query);
mysql_fetch_field("Spielzeit",Query); SpielerInfo[playerid][sSpielzeit] = strval(Query);
mysql_fetch_field("Geschlecht",Query); SpielerInfo[playerid][sGeschlecht] = strval(Query);
mysql_fetch_field("posX",Query); SpielerInfo[playerid][posX] = floatstr(Query);
mysql_fetch_field("posY",Query); SpielerInfo[playerid][posY] = floatstr(Query);
mysql_fetch_field("posZ",Query); SpielerInfo[playerid][posZ] = floatstr(Query);
mysql_fetch_field("posA",Query); SpielerInfo[playerid][posA] = floatstr(Query);
mysql_fetch_field("Level",Query); SpielerInfo[playerid][sLevel] = strval(Query);
mysql_fetch_field("Tutorial",Query); SpielerInfo[playerid][sTutorial] = strval(Query);
mysql_fetch_field("Aussehen",Query); SpielerInfo[playerid][sSkin] = strval(Query);
mysql_fetch_field("Geld",Query); SpielerInfo[playerid][sGeld] = strval(Query);
mysql_fetch_field("Alter",Query); SpielerInfo[playerid][sAlter] = strval(Query);
mysql_fetch_field("Mats",Query); SpielerInfo[playerid][sMats] = strval(Query);
mysql_fetch_field("Bmod",Query); SpielerInfo[playerid][sBmod] = strval(Query);
mysql_fetch_field("Coints",Query); SpielerInfo[playerid][sCoints] = strval(Query);
mysql_fetch_field("Ticketsopen",Query); SpielerInfo[playerid][sTicketsopen] = strval(Query);
mysql_fetch_field("SaveDrogen",Query); SpielerInfo[playerid][sSaveDrogen] = strval(Query);
mysql_fetch_field("SaveMats",Query); SpielerInfo[playerid][sSaveMats] = strval(Query);
mysql_fetch_field("Drogen",Query); SpielerInfo[playerid][sDrogen] = strval(Query);
mysql_fetch_field("Bank",Query); SpielerInfo[playerid][sBank] = strval(Query);
mysql_fetch_field("Telefon",Query); SpielerInfo[playerid][sTelefon] = strval(Query);
mysql_fetch_field("Telefonnummer",Query); SpielerInfo[playerid][sTelefonnummer] = strval(Query);
mysql_fetch_field("Telefonbuch",Query); SpielerInfo[playerid][sTelefonbuch] = strval(Query);
mysql_fetch_field("Klingelton",Query); SpielerInfo[playerid][sKlingelton] = strval(Query);
mysql_fetch_field("Personalausweis",Query); SpielerInfo[playerid][sPerso] = strval(Query);
mysql_fetch_field("PersonalausweisAntrag",Query); SpielerInfo[playerid][sPersoAntrag] = strval(Query);
mysql_fetch_field("Arbeitslos",Query); SpielerInfo[playerid][sArbeitslos] = strval(Query);
mysql_fetch_field("ArbeitslosAntrag",Query); SpielerInfo[playerid][sArbeitslosAntrag] = strval(Query);
mysql_fetch_field("Job",Query); SpielerInfo[playerid][sJob] = strval(Query);
mysql_fetch_field("Jobzeit",Query); SpielerInfo[playerid][sLastJob] = strval(Query);
mysql_fetch_field("Fahrlizenz",Query); SpielerInfo[playerid][sFahrlizenz] = strval(Query);
mysql_fetch_field("Angellizenz",Query); SpielerInfo[playerid][sAngellizenz] = strval(Query);
mysql_fetch_field("FahrlizenzSperre",Query); SpielerInfo[playerid][sFahrlizenzLock] = strval(Query);
mysql_fetch_field("Fluglizenz",Query); SpielerInfo[playerid][sFlyLic] = strval(Query);
mysql_fetch_field("FluglizenzSperre",Query); SpielerInfo[playerid][sFlyLicLock] = strval(Query);
mysql_fetch_field("Lastkraftwagenlizenz",Query); SpielerInfo[playerid][sLKWLic] = strval(Query);
mysql_fetch_field("LastkraftwagenlizenzSperre",Query); SpielerInfo[playerid][sLKWLicLock] = strval(Query);
mysql_fetch_field("Motorradlizenz",Query); SpielerInfo[playerid][sBikeLic] = strval(Query);
mysql_fetch_field("MotorradlizenzSperre",Query); SpielerInfo[playerid][sBikeLicLock] = strval(Query);
mysql_fetch_field("Schifffahrtslizenz",Query); SpielerInfo[playerid][sBoatLic] = strval(Query);
mysql_fetch_field("SchifffahrtslizenzSperre",Query); SpielerInfo[playerid][sBoatLicLock] = strval(Query);
mysql_fetch_field("Waffenlizenz",Query); SpielerInfo[playerid][sWeaponLic] = strval(Query);
mysql_fetch_field("WaffenlizenzSperre",Query); SpielerInfo[playerid][sWeaponLicLock] = strval(Query);
mysql_fetch_field("Gehalt",Query); SpielerInfo[playerid][sGehalt] = strval(Query);
mysql_fetch_field("Fraktion",Query); SpielerInfo[playerid][sFraktion] = strval(Query);
mysql_fetch_field("Fraktionssperre",Query); SpielerInfo[playerid][sInviteLock] = strval(Query);
mysql_fetch_field("Boss",Query); SpielerInfo[playerid][sBoss] = strval(Query);
mysql_fetch_field("Rang",Query); SpielerInfo[playerid][sRang] = strval(Query);
mysql_fetch_field("Strafpunkte",Query); SpielerInfo[playerid][sPunkte] = strval(Query);
mysql_fetch_field("PaydayZeit",Query); SpielerInfo[playerid][sPaydayZeit] = strval(Query);
mysql_fetch_field("Respektpunkte",Query); SpielerInfo[playerid][sRespektpunkte] = strval(Query);
mysql_fetch_field("Fischskill",Query); SpielerInfo[playerid][sFishSkill] = strval(Query);
mysql_fetch_field("Krankenhaus",Query); SpielerInfo[playerid][sKrankenhaus] = strval(Query);
mysql_fetch_field("Friedhof",Query); SpielerInfo[playerid][sFriedhof] = strval(Query);
if(SpielerInfo[playerid][sKrankenhaus] || SpielerInfo[playerid][sFriedhof])
{
mysql_fetch_field("TotX",Query); SpielerInfo[playerid][sTx] = floatstr(Query);
mysql_fetch_field("TotY",Query); SpielerInfo[playerid][sTy] = floatstr(Query);
mysql_fetch_field("TotZ",Query); SpielerInfo[playerid][sTz] = floatstr(Query);
}
mysql_fetch_field("Tode",Query); SpielerInfo[playerid][sTode] = strval(Query);
mysql_fetch_field("Fische",Query); SpielerInfo[playerid][sFishes] = strval(Query);
mysql_fetch_field("Haus",Query); SpielerInfo[playerid][sHaus] = strval(Query);
mysql_fetch_field("Spawn",Query); SpielerInfo[playerid][sSpawn] = strval(Query);
mysql_fetch_field("Morde",Query); SpielerInfo[playerid][sMorde] = strval(Query);
mysql_fetch_field("Kills",Query); SpielerInfo[playerid][sKills] = strval(Query);
mysql_fetch_field("Verbrechen",Query); SpielerInfo[playerid][sVerbrechen] = strval(Query);
mysql_fetch_field("Wantedlevel",Query); SpielerInfo[playerid][sWantedlevel] = strval(Query);
mysql_fetch_field("Knast",Query); SpielerInfo[playerid][sGefangen] = strval(Query);
mysql_fetch_field("KnastZeit",Query); SpielerInfo[playerid][sGefangenZeit] = strval(Query);
mysql_free_result();
format(Query,sizeof(Query),"UPDATE `accounts` SET `Online`='1',`Eingeloggt`='Am %s um %s Uhr' WHERE `Spielername`='%s'",Datum(),Uhrzeit(),SpielerInfo[playerid][sName]);
mysql_query(Query);
format(Query,sizeof(Query),"%s hat sich mit der IP %s angemeldet.",SpielerInfo[playerid][sName],SpielerInfo[playerid][sIp]);
EnterToLog("Einloggen",Query);
if(SpielerInfo[playerid][sKrankenhaus] || SpielerInfo[playerid][sFriedhof])
SpielerInfo[playerid][sTotenkopf] = CreatePickup(1254,1,SpielerInfo[playerid][sTx],SpielerInfo[playerid][sTy],SpielerInfo[playerid][sTz],-1);
SetPlayerScore(playerid,SpielerInfo[playerid][sLevel]);
GivePlayerMoney(playerid,SpielerInfo[playerid][sGeld]);
TextDrawShowForPlayer(playerid,UhrDraw);
TextDrawShowForPlayer(playerid,DatumDraw);
TextDrawShowForPlayer(playerid,NewsText);
SpielerInfo[playerid][sEingeloggt] = true;
format(Query,sizeof(Query),"Zukunft Reallife -> Willkommen %s Zurück.",SpielerInfo[playerid][sName]);
SendClientMessage(playerid,Farbe_Weiß,Query);
if(SpielerInfo[playerid][sAdminlevel])
{
format(Query,sizeof(Query),"Teammitglied -> Du hast dich mit dem Adminlevel '%d' eingeloggt.",SpielerInfo[playerid][sAdminlevel]);
printf("Query: %s", Query);
SendClientMessage(playerid,Farbe_Blau,Query);
for(new si;si<sizeof(SupportInfo);si++)
{
TextDrawShowForPlayer(playerid,SupportInfo[si][S_Nummern]);
TextDrawShowForPlayer(playerid,SupportInfo[si][S_Text]);
}
TextDrawShowForPlayer(playerid,SupportBubble);
}
for(new fs;fs<sizeof(FightSystem);fs++)
{
GangZoneShowForPlayer(playerid,FightSystem[fs][fsZoneID],GetZoneColorOfFaction(FightSystem[fs][fsOwnerFaction]));
if(FightSystem[fs][fsAttackFaction] != -255 && FightSystem[fs][fsFightTime])
{
GangZoneFlashForPlayer(playerid,FightSystem[fs][fsZoneID],GetZoneColorOfFaction(FightSystem[fs][fsAttackFaction]));
if(SpielerInfo[playerid][sFraktion] == FightSystem[fs][fsOwnerFaction] || SpielerInfo[playerid][sFraktion] == FightSystem[fs][fsAttackFaction])
{
TextDrawShowForPlayer(playerid,Fight);
TextDrawShowForPlayer(playerid,FightOverline);
TextDrawShowForPlayer(playerid,FightUnderline);
TextDrawShowForPlayer(playerid,FightSystem[fs][fsWinFaction]);
TextDrawShowForPlayer(playerid,FightSystem[fs][fsLoseFaction]);
TextDrawShowForPlayer(playerid,FightSystem[fs][fsWinKills]);
TextDrawShowForPlayer(playerid,FightSystem[fs][fsLoseKills]);
TextDrawShowForPlayer(playerid,FightSystem[fs][fsTime]);
}
}
}
if(SpielerInfo[playerid][sPremium])
{
if(SpielerInfo[playerid][sPremium] < gettime())
{
SpielerInfo[playerid][sPremium] = 0;
SendClientMessage(playerid,Farbe_Leuchtrot,"Premium -> Deine Premiumzeit ist nun abgelaufen, kaufe erneut das Paket zu aktivierung.");
}
else
SendClientMessage(playerid,Farbe_Blau,"Premium -> Du bist Donator Benutzer. Für Details schau im Forum vorbei");
}
for(new a;a<sizeof(Autohaus);a++)
SetPlayerMapIcon(playerid,a,Autohaus[a][ahX],Autohaus[a][ahY],Autohaus[a][ahZ],55,0,MAPICON_LOCAL);
if(SpielerInfo[playerid][sWantedlevel])
{
if(SpielerInfo[playerid][sWantedlevel] > 6)
SetPlayerWantedLevel(playerid,6);
else
SetPlayerWantedLevel(playerid,SpielerInfo[playerid][sWantedlevel]);
}
PlayerPlaySound(playerid,1063,0.0,0.0,0.0);
SpawnPlayer(playerid);
SetPlayerPos(playerid, SpielerInfo[playerid][posX], SpielerInfo[playerid][posY], SpielerInfo[playerid][posZ]);
SetPlayerFacingAngle(playerid, SpielerInfo[playerid][posA]);
LadeSpielerAutos(playerid);
return 1;
}
else
{
mysql_free_result();
SetPVarInt(playerid,"WrongPasswort",GetPVarInt(playerid,"WrongPasswort")+1);
if(GetPVarInt(playerid,"WrongPasswort") >= 3)
{
Kick(playerid);
return 0;
}
ShowPlayerDialog(playerid,Dialog_Einloggen,DIALOG_STYLE_PASSWORD,"Zukunft Reallife: Anmeldung","Das angegebene Passwort ist falsch, bite versuche es nochmal","->","<.");
}
}
else
Kick(playerid);
mysql_free_result();
return 0;
}
Speichern:
public SpielerSpeichern(playerid){
if(!IsPlayerNPC(playerid) && SpielerInfo[playerid][sEingeloggt]){
GetPlayerPos(playerid,SpielerInfo[playerid][sLogoutPos][0],SpielerInfo[playerid][sLogoutPos][1],SpielerInfo[playerid][sLogoutPos][2]);
MySQLCheckConnection();
new Float:lx,Float:ly,Float:lz,Float:la;
GetPlayerPos(playerid,lx,ly,lz);
GetPlayerFacingAngle(playerid,la);
new Query[2048];
format(Query,sizeof(Query),"UPDATE `accounts` SET `Ausgeloggt`='%d',`IpAdresse`='%s',`Adminlevel`='%d',`Helper`='%d',`Verwarnungen`='%d',`Premium`='%d',`Spielzeit`='%d',`Geschlecht`='%d',`Level`='%d',`Tutorial`='%d',`Aussehen`='%d',`Geld`='%d',`Bank`='%d',`Telefon`='%d',`Telefonnummer`='%d',`Telefonbuch`='%d',`Klingelton`='%d',`Personalausweis`='%d',`PersonalausweisAntrag`='%d',`Arbeitslos`='%d',`ArbeitslosAntrag`='%d',`Job`='%d',`Jobzeit`='%d',",
gettime(),
SpielerInfo[playerid][sIp],
SpielerInfo[playerid][sAdminlevel],
SpielerInfo[playerid][sWarns],
SpielerInfo[playerid][sPremium],
SpielerInfo[playerid][sSpielzeit],
SpielerInfo[playerid][sGeschlecht],
SpielerInfo[playerid][sLevel],
SpielerInfo[playerid][sTutorial],
SpielerInfo[playerid][sSkin],
GetPlayerMoney(playerid),
SpielerInfo[playerid][sBank],
SpielerInfo[playerid][sTelefon],
SpielerInfo[playerid][sTelefonnummer],
SpielerInfo[playerid][sTelefonbuch],
SpielerInfo[playerid][sKlingelton],
SpielerInfo[playerid][sPerso],
SpielerInfo[playerid][sPersoAntrag],
SpielerInfo[playerid][sArbeitslos],
SpielerInfo[playerid][sArbeitslosAntrag],
SpielerInfo[playerid][sJob],
SpielerInfo[playerid][sLastJob]);
format(Query,sizeof(Query),"%s`Fahrlizenz`='%d',`Angellizenz`='%d',`FahrlizenzSperre`='%d',`Fluglizenz`='%d',`FluglizenzSperre`='%d',`Lastkraftwagenlizenz`='%d',`LastkraftwagenlizenzSperre`='%d',`Motorradlizenz`='%d',`MotorradlizenzSperre`='%d',`Schifffahrtslizenz`='%d',`SchifffahrtslizenzSperre`='%d',`Waffenlizenz`='%d',`WaffenlizenzSperre`='%d',",
Query,
SpielerInfo[playerid][sFahrlizenz],
SpielerInfo[playerid][sAngellizenz],
SpielerInfo[playerid][sFahrlizenzLock],
SpielerInfo[playerid][sFlyLic],
SpielerInfo[playerid][sFlyLicLock],
SpielerInfo[playerid][sLKWLic],
SpielerInfo[playerid][sLKWLicLock],
SpielerInfo[playerid][sBikeLic],
SpielerInfo[playerid][sBikeLicLock],
SpielerInfo[playerid][sBoatLic],
SpielerInfo[playerid][sBoatLicLock],
SpielerInfo[playerid][sWeaponLic],
SpielerInfo[playerid][sWeaponLicLock]);
format(Query,sizeof(Query),"%s`Gehalt`='%d',`Fraktion`='%d',`Fraktionssperre`='%d',`Boss`='%d',`Rang`='%d',`Strafpunkte`='%d',`PaydayZeit`='%d',`Respektpunkte`='%d',`Fischskill`='%d',`SaveMats`='%d',`SaveDrogen`='%d',`Mats`='%d',`Bmod`='%d',`Coints`='%d',`Ticketsopen`='%d',`Drogen`='%d',",
Query,
SpielerInfo[playerid][sGehalt],
SpielerInfo[playerid][sFraktion],
SpielerInfo[playerid][sInviteLock],
SpielerInfo[playerid][sBoss],
SpielerInfo[playerid][sRang],
SpielerInfo[playerid][sPunkte],
SpielerInfo[playerid][sPaydayZeit],
SpielerInfo[playerid][sRespektpunkte],
SpielerInfo[playerid][sFishSkill],
SpielerInfo[playerid][sSaveMats],
SpielerInfo[playerid][sSaveDrogen],
SpielerInfo[playerid][sMats],
SpielerInfo[playerid][sBmod],
SpielerInfo[playerid][sCoints],
SpielerInfo[playerid][sTicketsopen],
SpielerInfo[playerid][sDrogen]);
format(Query,sizeof(Query),"%s`Krankenhaus`='%d',`Friedhof`='%d',`TotX`='%f',`TotY`='%f',`TotZ`='%f',`Tode`='%d',`LogoutX`='%f',`LogoutY`='%f',`LogoutZ`='%f',`Fische`='%d',`Haus`='%d',`Spawn`='%d',`Morde`='%d',`Kills`='%d',`Verbrechen`='%d',`Wantedlevel`='%d',`Knast`='%d',`KnastZeit`='%d',`posX`='%f',`posY`='%f',`posZ`='%f',`posA`='%f' WHERE `Spielername`='%s'",
Query,
SpielerInfo[playerid][sKrankenhaus],
SpielerInfo[playerid][sFriedhof],
SpielerInfo[playerid][sTx],
SpielerInfo[playerid][sTy],
SpielerInfo[playerid][sTz],
SpielerInfo[playerid][sTode],
SpielerInfo[playerid][sLogoutPos][0],
SpielerInfo[playerid][sLogoutPos][1],
SpielerInfo[playerid][sLogoutPos][2],
SpielerInfo[playerid][sFishes],
SpielerInfo[playerid][sHaus],
SpielerInfo[playerid][sSpawn],
SpielerInfo[playerid][sMorde],
SpielerInfo[playerid][sKills],
SpielerInfo[playerid][sVerbrechen],
SpielerInfo[playerid][sWantedlevel],
SpielerInfo[playerid][sGefangen],
SpielerInfo[playerid][sGefangenZeit],
lx,
ly,
lz,
la,
SpielerInfo[playerid][sName]);
mysql_query(Query);
return 1;
}
return 0;
}
LG Trabuhot