#define TEAM_OAMT 0
#define TEAM_ZIVI 1 // Zivilist
static gTeam[MAX_PLAYERS];
enum spieler_daten
{
wanted,
skin,
Float:lastx,Float:lasty,Float:lastz,
eingeloggt,
Admin,
leader,
team,
aFuhrerschein
}
public OnPlayerDisconnect(playerid, reason)
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"%s.datei",pname);
if(fexist(accFormat) && Spieler[playerid][eingeloggt])
{
dini_IntSet(accFormat,"Admin",Spieler[playerid][Admin]);
dini_IntSet(accFormat,"team",Spieler[playerid][team]);
dini_IntSet(accFormat,"leader",Spieler[playerid][leader]);
dini_IntSet(accFormat,"aFuhrerschein",Spieler[playerid][aFuhrerschein]);
dini_IntSet(accFormat,"wanted",Spieler[playerid][wanted]);
dini_IntSet(accFormat,"skin",Spieler[playerid][skin]);
dini_FloatSet(accFormat,"lastx",Spieler[playerid][lastx]);
dini_FloatSet(accFormat,"lasty",Spieler[playerid][lasty]);
dini_FloatSet(accFormat,"lastz",Spieler[playerid][lastz]);
dini_IntSet(accFormat,"Geld",GetPlayerMoney(playerid));
dini_IntSet(accFormat,"Score",GetPlayerScore(playerid));
}
Spieler[playerid][Admin] = 0;
Spieler[playerid][team] = 0;
Spieler[playerid][leader] = 0;
Spieler[playerid][eingeloggt] = 0;
Spieler[playerid][aFuhrerschein] = 0;
Spieler[playerid][wanted] = 0;
Spieler[playerid][skin] = 0;
Spieler[playerid][lastx] = (0.0);
Spieler[playerid][lasty] = (0.0);
Spieler[playerid][lastz] = (0.0);
public OnPlayerSpawn(playerid)
{
//SetPlayerPos(playerid, 1230.5754,-1825.4458,13.4117);
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"%s.datei",pname);
//if(dini_Isset(accFormat,"lastx"))
{
// SetPlayerPos(playerid,Spieler[playerid][lastx],Spieler[playerid][lasty],Spieler[playerid][lastz]);
}
if(gTeam[playerid] == TEAM_OAMT)
{
SetPlayerPos(playerid, 2078.3069,-2052.3438,13.5469);
SetPlayerInterior(playerid, 0);
}
if(gTeam[playerid] == TEAM_ZIVI)
{
SetPlayerPos(playerid, 2817.3821,-1171.2654,1025.5703);
SetPlayerInterior(playerid, 0);
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"%s.datei",pname);
if(response)
{
switch(dialogid) // dialogid auswählen
{
case DIALOG_LOGIN: // ID Login
{
if(!strlen(inputtext))
{
ShowPlayerDialog(playerid,DIALOG_LOGIN,1,"Login","Bitte logge dich ein","Weiter","Abbrechen");
return SendClientMessage(playerid,0xFFFFFFFF,"Kein Passwort angegeben!");
}
if(strcmp(inputtext,dini_Get(accFormat,"Passwort")) == 0) // Passwort Direkt aus der Datei Laden
{
Spieler[playerid][Admin] = dini_Int(accFormat,"Admin");
Spieler[playerid][team] = dini_Int(accFormat,"team");
Spieler[playerid][leader] = dini_Int(accFormat,"leader");
Spieler[playerid][wanted] = dini_Int(accFormat,"wanted");
Spieler[playerid][aFuhrerschein] = dini_Int(accFormat,"aFuhrerschein");
Spieler[playerid][skin] = dini_Int(accFormat,"skin");
Spieler[playerid][lastx] = dini_Float(accFormat,"lastx");
Spieler[playerid][lasty] = dini_Float(accFormat,"lasty");
Spieler[playerid][lastz] = dini_Float(accFormat,"lastz");
GivePlayerMoney(playerid,dini_Int(accFormat,"Geld"));
SetPlayerScore(playerid,dini_Int(accFormat,"Score"));
Spieler[playerid][eingeloggt] = 1; // Spieler ist nun erfolgreich eingeloggt
SendClientMessage(playerid,0xFFFFFFFF,"Du wurdest erfolgreich eingeloggt.");
}
else
{
if(!strcmp(strget(cmdtext,0),"/makeleader"))
{
if(Spieler[playerid][Admin] >= 4 )
{
if(!strlen(strget(cmdtext,1)))
return
SendClientMessage(playerid,COLOR_GREY,"Benutze: /makeleader [ID] [FraktionsID]");
//new string[128];
new id3 = strval(strget(cmdtext,1));
new admin3[MAX_PLAYER_NAME];
new gang = strval(strget(cmdtext,2));
GetPlayerName(id3,admin3,sizeof(admin3));
format(string, sizeof(string), "*** Du wurdest von Admin %s zum Leader der Fraktionsnummer %d gemacht.", admin3, gang);
SendClientMessage(id3, COLOR_LIGHTRED, string);
format(string, sizeof(string), "*** Du hast %s zum Leader der Fraktionsnummer %d gemacht.", id3, gang);
SendClientMessage(playerid, COLOR_LIGHTRED, string);
if(gang==1) { SetPlayerSkin(id3,0);gTeam[playerid] = TEAM_ZIVI; }
if(gang==0) { SetPlayerSkin(id3,71);gTeam[playerid] = TEAM_OAMT; }
PlayerInfo[id3][leader] = gang;
}
else
{
SendClientMessage(playerid, COLOR_LIGHTRED,"Du darfst diesen Befehl nicht benutzen !");
}
return 1;
}
Wenn ich mich mit /makeleader in eine fraktion gebe und ich dann restarte wird das nicht abgespeichert warum nicht ?? (selfmade)
alles andere funkt nur team, und leader, nicht