Liebe Community,
Ich wollte mal Fragen wie ich die Wanteds die gespeichert worden sind wieder als Wanted aufzurufen, die dann als Wanteds auch im Spiel dann gelten.
Ich habe es so gespeichert:
pInfo
pWanteds,
OnPlayerConnect
PlayerInfo[playerid][pWanteds] = 0;
OnPlayerRegister
format(var, 32, "Wanteds=%d\n",PlayerInfo[playerid][pWanteds]);fwrite(hFile, var);
OnPlayerLogin
PlayerInfo[playerid][pWanteds] = dini_Int(string2, "Wanteds");
SavePlayer
format(var, 32, "Wanteds=%d\n",PlayerInfo[playerid][pWanteds]);fwrite(hFile, var);
Dies steht bei dem Befehl /su
if(strcmp(cmd, "/suspect", true) == 0 || strcmp(cmd, "/su", true) == 0)
{
if(IsPlayerConnected(playerid))
{
if(PlayerInfo[playerid][pGangJailed] == 1)
{
SendClientMessage(playerid, COLOR_GRAD1, "Du kannst keine Wanteds erstellen, weil du im Gangjail bist.");
return 1;
}
if(PlayerInfo[playerid][pMauled] == 1)
{
SendClientMessage(playerid, COLOR_GRAD1, "Dir wurde dein Mund zugeklebt, du kannst nichts sagen.");
return 1;
}
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "Verwendung: /su [PlayerID] [Wanted-Anzahl] [Verbrechen]");
return 1;
}
giveplayerid = ReturnUser(tmp);
tmp = strtok(cmdtext, idx);
if(!strlen(tmp))
{
SendClientMessage(playerid, COLOR_GRAD1, "Verwendung: /su [PlayerID] [Wanted-Anzahl] [Verbrechen]");
return 1;
}
new WantedAnzahl;
WantedAnzahl = strval(tmp);
if(PlayerInfo[playerid][pMember] == 1 || PlayerInfo[playerid][pMember] == 2 || PlayerInfo[playerid][pMember] == 3 || PlayerInfo[playerid][pLeader] == 1 || PlayerInfo[playerid][pLeader] == 2 || PlayerInfo[playerid][pLeader] == 3 || PlayerInfo[playerid][pAdmin] == 2000)
{
if(IsPlayerConnected(giveplayerid))
{
if(giveplayerid != INVALID_PLAYER_ID)
{
if(PlayerInfo[giveplayerid][pJailed] > 0)
{
SendClientMessage(playerid, COLOR_GRAD1, "Der Spieler ist im Gefängnis!");
return 1;
}
if(WantedLevel[giveplayerid] >= 101)
{
SendClientMessage(playerid, COLOR_GRAD1, "Der Spieler hat bereits 100 oder mehr Wanteds!");
return 1;
}
if (gTeam[giveplayerid] != 2 && !IsACop(giveplayerid))
{
GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
GetPlayerName(playerid, sendername, sizeof(sendername));
new length = strlen(cmdtext);
while ((idx < length) && (cmdtext[idx] <= ' '))
{
idx++;
}
new offset = idx;
new result[64];
while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
{
result[idx - offset] = cmdtext[idx];
idx++;
}
result[idx - offset] = EOS;
if(!strlen(result))
{
SendClientMessage(playerid, COLOR_GRAD2, "Verwendung: /su [PlayerID] [Wanted-Anzahl] [Verbrechen]");
return 1;
}
WantedLevel[giveplayerid] += WantedAnzahl;
PlayerInfo[playerid][pWanteds] = WantedAnzahl; //<----------------------------------------------------------
format(string, sizeof(string), "{4C66FF}Du hast ein Verbrechen begangen, {FF0000}%s{4C66FF}. Zeuge: {FF0000}%s{4C66FF}.",result,sendername);
SendClientMessage(giveplayerid, COLOR_IWANTED, string);
format(string, sizeof(string), "{4C66FF}Vergebene Wanteds: {FF0000}%d{4C66FF}, Neues Wantedlevel: {FF0000}%d{4C66FF}.", WantedAnzahl, WantedLevel[giveplayerid]);
SendClientMessage(giveplayerid, COLOR_YELLOW, string);
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsACop(i))
{
format(string, sizeof(string), "{4C66FF}[ZENTRALE]: Alle Einheiten, Reporter: {FF0000}%s{4C66FF}, Vergebene Wanteds: {FF0000}%d{4C66FF}",sendername, WantedAnzahl);
SendClientMessage(i, COLOR_IWANTED, string);
format(string, sizeof(string), "{4C66FF}[ZENTRALE]: Verbrechen: {FF0000}%s{4C66FF}, Gesuchter: {FF0000}%s{4C66FF}, Aktuelle Wanteds: {FF0000}%d{4C66FF}",result,giveplayer, WantedLevel[giveplayerid]);
SendClientMessage(i, COLOR_IWANTED, string);
}
}
return 1;
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Du kannst keinen Officer anklagen!");
}
}
}
else
{
format(string, sizeof(string), "%d ist kein aktiver Spieler.", giveplayerid);
SendClientMessage(playerid, COLOR_GRAD1, string);
return 1;
}
}
else
{
SendClientMessage(playerid, COLOR_GRAD1, "Du hast keine Berechtigung.");
}
}
return 1;
}
Ich hoffe ihr könnt mir helfen.
MfG
James.