Sers.
Scripte nun seit gestern mit enums.
hier mal eine frage, wie man ein Login sys mit enums aufbaut.
Voher der stock LoadAccount:
//Stocks
stock Register(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dini_Create(Spielerdatei);
dini_Set(Spielerdatei,"Passwort",key);
SendClientMessage(playerid,Blau,"Erfolgreich registriert.");
SetPlayerScore(playerid,0);
SetPVarInt(playerid,"loggedin",1);
return 1;
}
stock Login(playerid,key[])
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
if(!strcmp(key,dini_Get(Spielerdatei,"Passwort"),false))
{
LoadAccount(playerid);
SendClientMessage(playerid,Blau,"Erfolgreich eingeloggt.");
SetPVarInt(playerid,"Flug",1);
return 1;
}
else
{
SendClientMessage(playerid,Blau,"Falsches Passwort.");
ShowPlayerDialog(playerid,DIALOG_LOGIN,DIALOG_STYLE_PASSWORD,"Login","Dein Account wurde gefunden. Gib bitte das Passwort ein.","Login","Abbrechen");
return 1;
}
}
stock LoadAccount(playerid)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
SetPlayerScore(playerid,dini_Int(Spielerdatei,"Level"));
GivePlayerMoney(playerid,dini_Int(Spielerdatei,"Geld"));
SetPVarInt(playerid,"Adminlevel",dini_Int(Spielerdatei,"Adminlevel"));
SetPVarInt(playerid,"Fraktion",dini_Int(Spielerdatei,"Fraktion"));
SetPVarInt(playerid,"Warn",dini_Int(Spielerdatei,"Warn"));
SetPVarInt(playerid,"Autolic",dini_Int(Spielerdatei,"Autolic"));
SetPVarInt(playerid,"Bikeli",dini_Int(Spielerdatei,"Bikeli"));
SetPVarInt(playerid,"Flugli",dini_Int(Spielerdatei,"Flugli"));
SetPVarInt(playerid,"Truckli",dini_Int(Spielerdatei,"Truckli"));
SetPVarInt(playerid,"Boatli",dini_Int(Spielerdatei,"Boatli"));
SetPVarInt(playerid,"Tutorial",dini_Int(Spielerdatei,"Tutorial"));
if(GetPVarInt(playerid,"Baned")==1)
{
SendClientMessage(playerid,Rot,"Du bist vom Server gebannt.");
Kick(playerid);
}
SetPVarInt(playerid,"loggedin",1);
return 1;
}
stock SpielerSpeichern(playerid)
{
if(GetPVarInt(playerid,"loggedin")==1)
{
new Spielerdatei[64];
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
format(Spielerdatei,sizeof(Spielerdatei),"/Accounts/%s.txt",name);
dini_IntSet(Spielerdatei,"Level",GetPlayerScore(playerid));
dini_IntSet(Spielerdatei,"Geld",GetPlayerMoney(playerid));
dini_IntSet(Spielerdatei,"Adminlevel",GetPVarInt(playerid,"Adminlevel"));
dini_IntSet(Spielerdatei,"Fraktion",GetPVarInt(playerid,"Fraktion"));
dini_IntSet(Spielerdatei,"Warn",GetPVarInt(playerid,"Warn"));
dini_IntSet(Spielerdatei,"Autolic",GetPVarInt(playerid,"Autolic"));
dini_IntSet(Spielerdatei,"Bikeli",GetPVarInt(playerid,"Bikeli"));
dini_IntSet(Spielerdatei,"Flugli",GetPVarInt(playerid,"Flugli"));
dini_IntSet(Spielerdatei,"Truckli",GetPVarInt(playerid,"Truckli"));
dini_IntSet(Spielerdatei,"Boatli",GetPVarInt(playerid,"Boatli"));
dini_IntSet(Spielerdatei,"Tutorial",GetPVarInt(playerid,"Tutorial"));
}
return 1;
}
stock SpielerName(playerid)
{
new name[MAX_PLAYER_NAME];
GetPlayerName(playerid,name,sizeof(name));
return name;
}
//Stocks ende
so, wie mache ich das jetzt zu enum?
Hier mal wie meine enums aussehen, von dem Spieler:
enum Spieler
{
pLevel,
pGeld,
pAdmin,
pSupporter,
pMember,
pLeader,
pJob,
pNebenjob
}
new sInfo[MAX_PLAYERS][Spieler];
wie macht man das dann?
also zbsp so?
sInfo[playerid][pAdmin] = dini_Int(Spielerdatei,"Adminlevel");