ausserdem würde ich /contractlist so machen
ocmd:contractlist(playerid,params[])
{
new Spieler[64];
new Spieler2[64];
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
if(dini_Int(Spieler,"Fraktion")==3)
{
new string[600];
format(string, 600, "Contracts:");
for(new i=0; i<MAX_PLAYERS; i++)
{
format(Spieler2,sizeof(Spieler2),"Spieler/%s.txt",PlayerName(i));
if(IsPlayerConnected(i) && dini_Int(Spieler2,"Kopfgeld")>0)format(string,sizeof(string),"%s\n%s %i€",string,PlayerName(i),dini_Int(Spieler2,"Kopfgeld"));
}
ShowPlayerDialog(playerid,Dialog_Contracts,DIALOG_STYLE_MSGBOX,"Contracts:",string,"Okay","");
}
return 1;
}
//edit contract
ocmd:contract(playerid,params[])
{
new Spieler[64],Spieler2[64],pID,kopfgeld;
format(Spieler,sizeof(Spieler),"Spieler/%s.txt",PlayerName(playerid));
if(dini_Int(Spieler,"Fraktion")==3)return SendClientMessage(playerid,Rot,"Du bist selber Hitman!");
if(sscanf(params,"ui",pID,kopfgeld))return SendClientMessage(playerid,Rot,"Fehler: /contract [ID/Name] [Kopfgeld]");
format(Spieler2,sizeof(Spieler2),"Spieler/%s.txt",PlayerName(pID));//pID ist null bevor sscanf ?!!!!!!!!!!
if(dini_Int(Spieler2, "Kopfgeld") > 0)return SendClientMessage(playerid, Rot, "Auf den Spieler ist bereits kopfgeld ausgesetzt worden.");
if(kopfgeld<999 && kopfgeld>50001)return SendClientMessage(playerid,Rot,"Das Kopfgeld muss mindestens 1000€ und höchstens 50.000€ betragen!");
GivePlayerMoney(playerid,-kopfgeld);
dini_IntSet(Spieler2,"Kopfgeld",kopfgeld);
new string[128];
format(string,sizeof(string),"Du hast einen Contract auf %s gesetzt. Kopfgeld: %i€",PlayerName(pID),kopfgeld);
SendClientMessage(playerid, Rot, string);
return 1;
}
MFG Piet