Hier mein Code:
public OnPlayerConnect(playerid)
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/jobs/%s.ini",pname);
if(fexist(accFormat))
{
new number = dini_Int("accFormat", "job"); // 0 = Keiner 1 = Busfahrer 2 = Pilot
if(number == 2)
{
pilot[playerid] =1;
busfahrer[playerid] =0;
}
if(number == 1)
{
busfahrer[playerid] =1;
pilot[playerid] =0;
}
if(number == 0)
{
busfahrer[playerid] =0;
pilot[playerid] =0;
}
}
else
{
dini_Create(accFormat);
dini_IntSet(accFormat, "job", 0);
}
return 1;
}
public OnPlayerDisconnect(playerid, reason)
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"accFormat",pname);
if(fexist(accFormat))
{
}
return 1;
}
public OnPlayerPickUpPickup(playerid, pickupid)
{
if(pickupid == arbeitsamt)
{
ShowPlayerDialog(playerid, Arbeitsamt, DIALOG_STYLE_LIST, "Arbeitsamt - Wähle einen Beruf:", "Busfahrer\nPilot\nBeruf kündigen.", "Auswählen", "Abbrechen");
}
return 1;
}
public OnDialogResponse(playerid, dialogid, response, listitem, inputtext[])
{
new pname[MAX_PLAYERS],accFormat[128];
GetPlayerName(playerid,pname,sizeof pname);
format(accFormat,sizeof accFormat,"/jobs/%s.ini",pname);
if(dialogid == Arbeitsamt)
{
if(response == 1)
{
if(listitem == 0) // Busfahrer
{
if(busfahrer[playerid] == 0)
{
if(pilot[playerid] == 1)
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast den Beruf Pilot gekündigt und bist nun Busfahrer.");
pilot[playerid] =0;
busfahrer[playerid] =1;
dini_IntSet("accFormat", "job", 1);
}
else
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du bist ab jetzt Busfahrer.");
pilot[playerid] =0;
busfahrer[playerid] =1;
dini_IntSet("accFormat", "job", 1);
}
}
else
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du bist bereits Busfahrer.");
dini_IntSet("accFormat", "job", 1);
}
}
if(listitem == 1) // Pilot
{
if(pilot[playerid] == 0)
{
if(busfahrer[playerid] == 1)
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast den Beruf Busfahrer gekündigt und bist nun Pilot.");
pilot[playerid] =1;
busfahrer[playerid] =0;
dini_IntSet("accFormat", "job", 2);
}
else
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du bist ab jetzt Pilot.");
pilot[playerid] =1;
busfahrer[playerid] =0;
dini_IntSet("accFormat", "job", 2);
}
}
else
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du bist bereits Pilot.");
dini_IntSet("accFormati", "job", 2);
}
}
if(listitem == 2) // Beruf-Kündigen
{
if(pilot[playerid] == 1)
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast deinen Beruf gekündigt.");
pilot[playerid] =0;
busfahrer[playerid] =0;
dini_IntSet("accFormat", "job", 0);
}
else
{
if(busfahrer[playerid] == 1)
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du hast deinen Beruf gekündigt.");
pilot[playerid] =0;
busfahrer[playerid] =0;
dini_IntSet("accFormat", "job", 0);
}
else
{
SendClientMessage(playerid, COLOR_LIGHTGREEN, "Du bist bereits arbeitslos.");
dini_IntSet("accFormat", "job", 0);
}
}
}
}
if(response == 0)
{
return 1;
}
}
return 1;
}
Die .ini Datei soll speichern welchen Job ein Spieler macht...
Dies funktioniert auch, jedoch wird keine Datei erstellt!
Nach einem Server-Neustart ist alles Futschikato!
Ein- und Ausloggen funktioniert... Dann bleibt alles gespeichert...
Mfg Peter_Party