Hi,
Ich suche schon seit stunden nach einen guten Login system.
Habe leider bisher noch nichts gefunden.
Es sollte folgendes beinhalten:
Login + register (Spawnen ohne /login =KICK)
-Geld save
-Admin lvl save
-level save
Danke
Hi,
Ich suche schon seit stunden nach einen guten Login system.
Habe leider bisher noch nichts gefunden.
Es sollte folgendes beinhalten:
Login + register (Spawnen ohne /login =KICK)
-Geld save
-Admin lvl save
-level save
Danke
Skin save,Job save usw. save ?
ja usw. hab ich vergessen xD
koppier doch die sahcen einfach ausem GF
http://forum.sa-mp.com/index.php?topic=24634.0
godfather? mh.
kannst mir vill die zeilen hinschreben was ich rauskopieren muss?
MfG
das einfach in dein script einfügen
Login system
forward OnPlayerLogin(playerid,password[]);
das unter public OnPlayerConnect(playerid)
format(string, sizeof(string), "%s.ini", plname);
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
SendClientMessage(playerid, COLOR_YELLOW, "Einwohnermeldeamt: Daten gefunden ");
SendClientMessage(playerid, COLOR_WHITE, "Einwohnermeldeamt: Du kannst dich mit /Login [Passwort] anmelden ");
return 1;
}
else
{
gPlayerAccount[playerid] = 0;
SendClientMessage(playerid,COLOR_YELLOW," Einwohnermeldeamt: Fülle das Formular aus /register [passwort]");
return 1;
}
das unter public OtherTimer()
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(SafeTime[i] > 0)
{
SafeTime[i]--;
}
if(SafeTime[i] == 1)
{
if(gPlayerAccount[i] == 1 && gPlayerLogged[i] == 0)
{
SendClientMessage(i, COLOR_LIGHTRED, "Staat: Datenbank hat ihren Namen gefunden nun anmelden mit /login [Passwort]");
}
das unter public OnPlayerRegister(playerid, password[])
fclose(hFile);
SendClientMessage(playerid, COLOR_YELLOW, "Staat: Bürgerdaten Gefunden! jetzt mit /login [Passwort] anmelden.");
}
}
das irgendwo
if (strcmp(cmd, "/login", true) ==0 )
{
if(IsPlayerConnected(playerid))
{
new tmppass[64];
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "SERVER: Du bist bereits registriert.");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "USAGE: /login [password]");
return 1;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
Encrypt(tmppass);
SetPlayerHealth(playerid, 0);
OnPlayerLogin(playerid,tmppass);
}
return 1;
}
if (strcmp(cmd, "/register", true) ==0 )
{
if(IsPlayerConnected(playerid))
{
if(gPlayerLogged[playerid] == 1)
{
SendClientMessage(playerid, COLOR_WHITE, "SERVER: Du bist bereits eingeloggt.");
return 1;
}
else
{
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "%s.ini", sendername);
new File: hFile = fopen(string, io_read);
if (hFile)
{
SendClientMessage(playerid, COLOR_YELLOW, "Dieser Username ist bereits vergeben, wählen Sie bitte einen anderen.");
fclose(hFile);
return 1;
}
new tmppass[64];
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_YELLOW, "USAGE: /register [password]");
return 1;
}
strmid(tmppass, tmp, 0, strlen(cmdtext), 255);
Encrypt(tmppass);
OnPlayerRegister(playerid,tmppass);
}
}
return 1;
}
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(103) : error 017: undefined symbol "string"
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(103) : error 017: undefined symbol "string"
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(103) : error 029: invalid expression, assumed zero
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(103) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
4 Errors.
Alles anzeigen
??
Hoffe es klappt sonst
format(string, sizeof(string), "%s.ini", plname);
if(fexist(string))
Da fehlt die definition vom string
Wen du es schon rauskopierst dan gescheit
Erstmal ganz oben machst du das rein wen dus nicht drin hast #define MAX_STRING 255
Dan das unter public OnPlayerConnect(playerid)
new string[256];
format(string, sizeof(string), "%s.ini", plname);
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
SendClientMessage(playerid, COLOR_YELLOW, "Einwohnermeldeamt: Daten gefunden ");
SendClientMessage(playerid, COLOR_WHITE, "Einwohnermeldeamt: Du kannst dich mit /Login [Passwort] anmelden ");
return 1;
}
else
{
gPlayerAccount[playerid] = 0;
SendClientMessage(playerid,COLOR_YELLOW," Einwohnermeldeamt: Fülle das Formular aus /register [passwort]");
return 1;
}
WTF?
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(105) : error 017: undefined symbol "plname"
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(108) : error 017: undefined symbol "gPlayerAccount"
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(108) : warning 215: expression has no effect
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(108) : error 001: expected token: ";", but found "]"
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(108) : error 029: invalid expression, assumed zero
D:\DOKUME~1\ONESTA~1\Desktop\RLSERV~1\GAMEMO~1\RLbyCore.pwn(108) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
5 Errors.
Alles anzeigen
hier der code..
//-------------------------------------[LOGIN SYSTEM]-----------------------------------------------------
public OnPlayerConnect(playerid)
{
new string[256];
format(string, sizeof(string), "%s.ini", plname);
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
SendClientMessage(playerid, COLOR_YELLOW, "Einwohnermeldeamt: Daten gefunden ");
SendClientMessage(playerid, COLOR_WHITE, "Einwohnermeldeamt: Du kannst dich mit /Login [Passwort] anmelden ");
return 1;
}
else
{
gPlayerAccount[playerid] = 0;
SendClientMessage(playerid,COLOR_YELLOW," Einwohnermeldeamt: Fülle das Formular aus /register [passwort]");
return 1;
}
GameTextForPlayer(playerid,"~n~ ~n~ ~w~Wilkommen zu ~r~Xtream Reallife ~w~ 0.61",16000,5);
SendPlayerFormattedText(playerid, "___________________________________________________", 0);
SendPlayerFormattedText(playerid, "Wilkommen auf dem XRG Server", 0);
SendPlayerFormattedText(playerid, "Benutze(/newbie)wenn du neu auf diesen Server bist ;)", 0);
SendPlayerFormattedText(playerid, "Für die Regeln benutze (/Rules)", 0);
SendPlayerFormattedText(playerid, "Und für die commands benutze (/cmd)", 0);
SendPlayerFormattedText(playerid, "___________________________________________________", 0);
SendPlayerFormattedText(playerid, ">>> Bitte wähle nun einen Skin <<<", 0);
gActivePlayers[playerid]++;
gLastGaveCash[playerid] = GetTickCount();
return 1;
}
Alles anzeigen
MfG
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(109) : warning 219: local variable "string" shadows a variable at a preceding level
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(110) : error 017: undefined symbol "plname"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(111) : warning 217: loose indentation
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(113) : error 017: undefined symbol "gPlayerAccount"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(113) : warning 215: expression has no effect
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(113) : error 001: expected token: ";", but found "]"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(113) : error 029: invalid expression, assumed zero
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(113) : fatal error 107: too many error messages on one line
Compilation aborted.Pawn compiler 3.2.3664 Copyright (c) 1997-2006, ITB CompuPhase
5 Errors.
ich hab die error:(
Weil es nicht funktioniert Scriptteile aus anderen Scripts rauszukopieren und dann beim eigenen einzufügen, es sind vollkommen andere Sachen definiert, wie das "gLoggedIn" und und und...
Beim "plname" wäre z.B. die logische Konsequenz:
new plname[MAX_PLAYER_NAME];
GetPlayerName(playerid,plname,sizeof(plname));
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(110) : warning 219: local variable "string" shadows a variable at a preceding level
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(114) : error 017: undefined symbol "gPlayerAccount"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(114) : warning 215: expression has no effect
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(114) : error 001: expected token: ";", but found "]"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(114) : error 029: invalid expression, assumed zero
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(114) : fatal error 107: too many error messages on one line
kann mir den jemand erklären wie ich wegens das beheben kann?
-------------------------------------[LOGIN SYSTEM]-----------------------------------------------------
new string[500];
format(string, sizeof(string), "%s.ini", plname);
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
oben bei den new's
new gPlayerAccount[MAX_PLAYERS];
das
new string[500];
rauslöschen
Schon mal 2 Fehler weg
danke für die antwort jetzt kommt das xD
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(115) : error 017: undefined symbol "COLOR_YELLOW"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(116) : error 017: undefined symbol "COLOR_WHITE"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(122) : error 017: undefined symbol "COLOR_YELLOW"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(125) : warning 225: unreachable code
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(126) : error 017: undefined symbol "SendPlayerFormattedText"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(127) : error 017: undefined symbol "SendPlayerFormattedText"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(128) : error 017: undefined symbol "SendPlayerFormattedText"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(129) : error 017: undefined symbol "SendPlayerFormattedText"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(130) : error 017: undefined symbol "SendPlayerFormattedText"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(131) : error 017: undefined symbol "SendPlayerFormattedText"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(132) : error 017: undefined symbol "SendPlayerFormattedText"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(133) : error 017: undefined symbol "gActivePlayers"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(133) : warning 215: expression has no effect
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(133) : error 001: expected token: ";", but found "]"
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(133) : error 029: invalid expression, assumed zero
C:\Program Files\Rockstar Games\gamemodes\TestScript.pwn(133) : fatal error 107: too many error messages on one line
und da sind die fehler
//-------------------------------------[LOGIN SYSTEM]-----------------------------------------------------
format(string, sizeof(string), "%s.ini", plname);
if(fexist(string))
{
gPlayerAccount[playerid] = 1;
SendClientMessage(playerid, COLOR_YELLOW, "Einwohnermeldeamt: Daten gefunden ");
SendClientMessage(playerid, COLOR_WHITE, "Einwohnermeldeamt: Du kannst dich mit /Login [Passwort] anmelden ");
return 1;
}
else
{
gPlayerAccount[playerid] = 0;
SendClientMessage(playerid,COLOR_YELLOW," Einwohnermeldeamt: Fülle das Formular aus /register [passwort]");
return 1;
gPlayerAccount[playerid] = 0;
SendClientMessage(playerid, COLOR_YELLOW," Einwohnermeldeamt: Fülle das Formular aus /register [passwort]");
return 1;
}
GameTextForPlayer(playerid,"~n~ ~n~ ~w~Wilkommen zu ~r~TestScript RL ~w~ 0.61",16000,5);
SendPlayerFormattedText(playerid, "___________________________________________________", 0);
SendPlayerFormattedText(playerid, "Wilkommen auf dem TestScript Server", 0);
SendPlayerFormattedText(playerid, "Benutze(/newbie)wenn du neu auf diesen Server bist ;)", 0);
SendPlayerFormattedText(playerid, "Für die Regeln benutze (/Rules)", 0);
SendPlayerFormattedText(playerid, "Und für die commands benutze (/cmd)", 0);
SendPlayerFormattedText(playerid, "___________________________________________________", 0);
SendPlayerFormattedText(playerid, ">>> Bitte wähle nun einen Skin <<<", 0);
gActivePlayers[playerid]++;
gLastGaveCash[playerid] = GetTickCount();
return 1;
}
//edit: Erstes Problem gelöst. Hab schon wieder ein anderes...