Hallo,
da ich bei meinem DM-Gamemode mit Dini arbeite habe ich nun ein Problem. Beim Disconnect von neuen Accounts werden die Daten anderer einfach kopiert, so hat der spieler Alex die stats von ADMIN reasoN...
Hier die Stocks:
stock Register(playerid, key[])
{
new Spieler[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spieler,sizeof(Spieler),"/Spieler/%s.ini",name);
dini_Create(Spieler);
dini_Set(Spieler,"Password",key);
SetPlayerScore(playerid,0);
SendClientMessage(playerid,Color_Lightblue,"** Dein Account wurde angelegt");
return 1;
}
stock einloggen(playerid,key[])
{
new Spieler[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spieler,sizeof(Spieler),"/Spieler/%s.ini",name);
if(!strcmp(key,dini_Get(Spieler,"Password"),false))
{
accounts(playerid);
SendClientMessage(playerid,Color_White,"Server: Du hast dich eingeloggt.");
if(AdminLevel[playerid] == 1)
{
SendClientMessage(playerid, Color_White, "Server: Du bist als Administrator Level 1 eingeloggt!");
}
else if(AdminLevel[playerid] == 2)
{
SendClientMessage(playerid, Color_White, "Server: Du bist als Administrator Level 2 eingeloggt!");
}
else if(AdminLevel[playerid] == 3)
{
SendClientMessage(playerid, Color_White, "Server: Du bist als Administrator Level 3 eingeloggt!");
}
else if(AdminLevel[playerid] == 1337)
{
SendClientMessage(playerid, Color_White, "Server: Du bist als Scripter Level 1337 eingeloggt!");
}
ShowPlayerDialog(playerid, DIALOG_MOTD, DIALOG_STYLE_MSGBOX, "Message of the Day", "{00FF00}Herzlich Wilkommen auf dem Yakuza DM Server von reasoN und Alex.\nDie wichtigsten Befehle siehst du unter /help :)\n Derzeit läuft Version {FF00FF}1.0\n\n\n{00FFFF}Bei Fragen und Wünschen bitte eine PN an reasoN im [RGR] Forum :)", "Schließen", "");
}
else
{
SendClientMessage(playerid,Color_Red,"Falsches Password");
new pname[64], string2[256];
GetPlayerName(playerid,pname,sizeof(pname));
format(string2,sizeof(string2),"Hallo %s musst du dich einloggen!",pname);
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_INPUT,"Login",string2,"Einloggen","abbrechen");
return 1;
}
return 1;
}
stock accounts(playerid)
{
new Spieler[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spieler,sizeof(Spieler),"/Spieler/%s.ini",name);
SetPlayerScore(playerid,dini_Int(Spieler,"Kills"));
AdminLevel[playerid] = dini_Int(Spieler,"Adminlevel");
Kills[playerid] = dini_Int(Spieler,"Kills");
return 1;
}
stock speichern(playerid)
{
new Spieler[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spieler,sizeof(Spieler),"/Spieler/%s.ini",name);
dini_IntSet(Spieler,"Adminlevel",AdminLevel[playerid]);
dini_IntSet(Spieler,"Kills",Kills[playerid]);
return 1;
}
Beim Disconnecten wird der stock speichern aufgerufen..
ich hoffe auf hilfe
lg,
reason