Hallo Community,
Ich habe da ein kleines Problemchen!
Ich muss dazu sagen, das ich erst seit neustem mit MySQL angefangen habe.
Nungut, hier zu meinem Problem.
Ich lasse die gesamten spieler daten über MySQL speichern, und laden!
Ich habe es jetzt schon hinbekommen, das die lezte Position von dem Spieler gespeichert wird.
Doch wen man sich wieder einloggt, wird man nicht dort gespawn.
Hier mal mein Code, ich hoffe ihr könnt mir helfen!
stock LoadPlayer
Alles anzeigen
stock SavePlayer
Alles anzeigen
das enum
Alles anzeigen
und zu guterlezt, wo loadplayer ausgeführt wird
Alles anzeigen
Hoffe, das ihr mir helfen könnt..
Hochachtungsvoll und mit freundlichen Grüßen - Scripter-oNE
Ich habe da ein kleines Problemchen!
Ich muss dazu sagen, das ich erst seit neustem mit MySQL angefangen habe.
Nungut, hier zu meinem Problem.
Ich lasse die gesamten spieler daten über MySQL speichern, und laden!
Ich habe es jetzt schon hinbekommen, das die lezte Position von dem Spieler gespeichert wird.
Doch wen man sich wieder einloggt, wird man nicht dort gespawn.
Hier mal mein Code, ich hoffe ihr könnt mir helfen!
stock LoadPlayer
SQL-Abfrage
- 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]);
- SpielerInfo[playerid][pAdmin] = mysql_GetInt("accounts", "Admin", "Name", SpielerInfo[playerid][pName]);
- SetPlayerPos(playerid,SpielerInfo[playerid][xKord], SpielerInfo[playerid][yKord], SpielerInfo[playerid][zKord]); //Unter den anderen Sache
- SetPlayerHealth(playerid,SpielerInfo[playerid][pHealth]);
- }
- return 1;
- }
stock SavePlayer
SQL-Abfrage
- stock SavePlayer(playerid)
- {
- if(IsPlayerConnected(playerid) && !IsPlayerNPC(playerid))
- {
- if(GetPVarInt(playerid,"Eingeloggt") == 1)
- {
- new Float:xxKord,Float:yyKord,Float:zzKord;
- GetPlayerPos(playerid,xxKord,yyKord,zzKord);
- 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_SetInt("accounts", "Admin", SpielerInfo[playerid][pAdmin], "Name", SpielerInfo[playerid][pName]);
- GetPlayerHealth(playerid,SpielerInfo[playerid][pHealth]);
- mysql_SetFloat("accounts", "Health", SpielerInfo[playerid][pHealth], "Name", SpielerInfo[playerid][pName]);
- /* mysql_SetFloat("accounts", "xKord", SpielerInfo[playerid][xKord], "Name", SpielerInfo[playerid][pName]);
- mysql_SetFloat("accounts", "yKord", SpielerInfo[playerid][yKord], "Name", SpielerInfo[playerid][pName]);
- mysql_SetFloat("accounts", "zKord", SpielerInfo[playerid][zKord], "Name", SpielerInfo[playerid][pName]);*/
- mysql_SetFloat("accounts","xKord",xxKord,"Name",SpielerInfo[playerid][pName]);
- mysql_SetFloat("accounts","yKord",yyKord,"Name",SpielerInfo[playerid][pName]);
- mysql_SetFloat("accounts","zKord",zzKord,"Name",SpielerInfo[playerid][pName]);
- }
- }
- return 1;
- }
das enum
SQL-Abfrage
und zu guterlezt, wo loadplayer ausgeführt wird
SQL-Abfrage
- case DIALOG_LOGIN:
- {
- if(response)
- {
- if(strlen(inputtext) == 0)
- {
- 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
- {
- new SpielerName[MAX_PLAYER_NAME];
- GetPlayerName(playerid, SpielerName, MAX_PLAYER_NAME);
- if(!strcmp(inputtext, mysql_ReturnPasswort(SpielerName), true))
- {
- SetPVarInt(playerid,"Eingeloggt",1);
- LoadPlayer(playerid);
- SpawnPlayer(playerid);
- return 1;
- }
- else
- {
- 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);
- }
- }
- }
- return 1;
- }
Hoffe, das ihr mir helfen könnt..
Hochachtungsvoll und mit freundlichen Grüßen - Scripter-oNE