Hallo,
habe ein Problem bei diesem Account System, was ich aus einem Tutorial abgeschrieben habe.
Meine Probleme sind:
- das Geld wird nicht gespeichert
- wenn ich /register eingebe, werde ich registriert, ohne nach einem Passwort verlangt zu werden
- das Warning
Hier die ganzen Zeilen aus meinem Script:
[pwn]enum Info
{
passwort[128],
};[/pwn]
[pwn]#pragma unused ret_memcpy
#pragma unused pInfo
new pInfo[MAX_PLAYERS][Info];
new bool:loggedin[MAX_PLAYERS]; [/pwn]
[pwn]public OnPlayerConnect(playerid)
{
new name[128], save[256];
GetPlayerName(playerid,name,sizeof(name));
format(save,sizeof(save),"/spieler/%s.ini",name);
if(dini_Exists(save))
{
SendClientMessage(playerid, 0xFFFFFFAA, "Dein Account wurde wiedererkannt.");
SendClientMessage(playerid, 0xFFFFFFAA, "Du kannst dich mit /login [passwort] einloggen, um deine Statistiken zu speichern!");
GivePlayerMoney(playerid,dini_Int(save,"Geld"));
}
else
{
if(!dini_Exists(save))
{
SendClientMessage(playerid, 0xFFFFFFAA, "Registriere dich mit /register [passwort], um deine Statistiken zu speichern!");
}
}
return 1;
}[/pwn]
[pwn]public OnPlayerDisconnect(playerid, reason)
{
new name[128], save[256]; // Die Zeile 645, wo das Warning ist!
GetPlayerName(playerid,name,sizeof(name));
format(save,sizeof(save),"/spieler/%s.ini",name);
if(dini_Exists(save))
{
dini_IntSet(save,"Geld",GetPlayerMoney(playerid));
}
return 1;
}[/pwn]
[pwn]
public OnPlayerCommandText(playerid, cmdtext[])
{
new spieler[MAX_PLAYER_NAME];
if(strcmp(strget(cmdtext,0), "/register", true) == 0)
{
new save[256];
GetPlayerName(playerid,spieler,sizeof(spieler));
format(save, sizeof(save),"Spieler/%s.ini",spieler);
if(!dini_Exists(save))
{
dini_Create(save);
dini_IntSet(save,"passwort",udb_hash(strget(cmdtext,1)));
SendClientMessage(playerid, 0x33AA33AA, "***Dein Account wurde erfolgreich registriert***");
SendClientMessage(playerid, 0x33AA33AA, "***Nutze /login [Passwort] um dich einzuloggen***");
}
else
{
if(dini_Exists(save))
{
SendClientMessage(playerid, 0xAA3333AA, "Der Account ist bereits registriert");
}
}
return 1;
}
if(strcmp(strget(cmdtext,0), "/login", true) == 0)
{
new save[256], s2[256];
GetPlayerName(playerid,spieler,sizeof(spieler));
format(save,sizeof(save),"spieler/%s.ini",spieler);
if(dini_Exists(save))
{
s2=dini_Get(save,"passwort");
if(strval(s2)==udb_hash(strget(cmdtext,1)))
{
loggedin[playerid] = true;
SendClientMessage(playerid, 0x33CCFFAA, "***Du hast dich erfolgreich eingeloggt***");
}
else
{
SendClientMessage(playerid, 0xAA3333AA, "Passwort Falsch!");
}
}
return 1;
}[/pwn]
Hier das Warning:
[pwn]
C:\Dokumente und Einstellungen\user\Desktop\San Andreas Server\gamemodes\deathmatch.pwn(645) : warning 225: unreachable code
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Warning.[/pwn]
Ich hoffe ihr könnt mir helfen.
habe ein Problem bei diesem Account System, was ich aus einem Tutorial abgeschrieben habe.
Meine Probleme sind:
- das Geld wird nicht gespeichert
- wenn ich /register eingebe, werde ich registriert, ohne nach einem Passwort verlangt zu werden
- das Warning
Hier die ganzen Zeilen aus meinem Script:
[pwn]enum Info
{
passwort[128],
};[/pwn]
[pwn]#pragma unused ret_memcpy
#pragma unused pInfo
new pInfo[MAX_PLAYERS][Info];
new bool:loggedin[MAX_PLAYERS]; [/pwn]
[pwn]public OnPlayerConnect(playerid)
{
new name[128], save[256];
GetPlayerName(playerid,name,sizeof(name));
format(save,sizeof(save),"/spieler/%s.ini",name);
if(dini_Exists(save))
{
SendClientMessage(playerid, 0xFFFFFFAA, "Dein Account wurde wiedererkannt.");
SendClientMessage(playerid, 0xFFFFFFAA, "Du kannst dich mit /login [passwort] einloggen, um deine Statistiken zu speichern!");
GivePlayerMoney(playerid,dini_Int(save,"Geld"));
}
else
{
if(!dini_Exists(save))
{
SendClientMessage(playerid, 0xFFFFFFAA, "Registriere dich mit /register [passwort], um deine Statistiken zu speichern!");
}
}
return 1;
}[/pwn]
[pwn]public OnPlayerDisconnect(playerid, reason)
{
new name[128], save[256]; // Die Zeile 645, wo das Warning ist!
GetPlayerName(playerid,name,sizeof(name));
format(save,sizeof(save),"/spieler/%s.ini",name);
if(dini_Exists(save))
{
dini_IntSet(save,"Geld",GetPlayerMoney(playerid));
}
return 1;
}[/pwn]
[pwn]
public OnPlayerCommandText(playerid, cmdtext[])
{
new spieler[MAX_PLAYER_NAME];
if(strcmp(strget(cmdtext,0), "/register", true) == 0)
{
new save[256];
GetPlayerName(playerid,spieler,sizeof(spieler));
format(save, sizeof(save),"Spieler/%s.ini",spieler);
if(!dini_Exists(save))
{
dini_Create(save);
dini_IntSet(save,"passwort",udb_hash(strget(cmdtext,1)));
SendClientMessage(playerid, 0x33AA33AA, "***Dein Account wurde erfolgreich registriert***");
SendClientMessage(playerid, 0x33AA33AA, "***Nutze /login [Passwort] um dich einzuloggen***");
}
else
{
if(dini_Exists(save))
{
SendClientMessage(playerid, 0xAA3333AA, "Der Account ist bereits registriert");
}
}
return 1;
}
if(strcmp(strget(cmdtext,0), "/login", true) == 0)
{
new save[256], s2[256];
GetPlayerName(playerid,spieler,sizeof(spieler));
format(save,sizeof(save),"spieler/%s.ini",spieler);
if(dini_Exists(save))
{
s2=dini_Get(save,"passwort");
if(strval(s2)==udb_hash(strget(cmdtext,1)))
{
loggedin[playerid] = true;
SendClientMessage(playerid, 0x33CCFFAA, "***Du hast dich erfolgreich eingeloggt***");
}
else
{
SendClientMessage(playerid, 0xAA3333AA, "Passwort Falsch!");
}
}
return 1;
}[/pwn]
Hier das Warning:
[pwn]
C:\Dokumente und Einstellungen\user\Desktop\San Andreas Server\gamemodes\deathmatch.pwn(645) : warning 225: unreachable code
Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
1 Warning.[/pwn]
Ich hoffe ihr könnt mir helfen.

Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von BadBoy ()