Hey, ich bin derzeit dabei ein neues Sanitäter System zu machen
if(strcmp(cmd,"/aufträge", true) == 0) // jobchat
{
if(PlayerInfo[playerid][sMember] != 4)
{
SendClientMessage(playerid, COLOR_GRAD2, "Du bist kein Sanitäter!");
return 1;
}
new mvstring[800];
for(new i = 0; i < MAX_PLAYERS; i++)
{
if(IsPlayerConnected(i))
{
if(PlayerInfo[i][pTot] == 1)
{
new LocationZone[MAX_ZONE_NAME];
GetPlayer2DZone(i, LocationZone, MAX_ZONE_NAME);
format(mvstring,800,"%s%s Position: %s, Restliche Zeit: %d\n",mvstring,GetName(i),LocationZone,PlayerInfo[i][pTotTime]);
}
}
}
ShowPlayerDialog(playerid,DIALOG_AUFTRAGE,DIALOG_STYLE_LIST,"Sanitäter Aufträge",mvstring,"Auswählen","Abbrechen");
return 1;
}
Das Funktioniert so auch Problemlos allerdings weiß ich nicht wie ich an die playerid unter "OnDialogResponse" kommen soll weil Listitem listet ja nicht die playerid auf
if(dialogid == DIALOG_AUFTRAGE)
{
new i = INVALID_PLAYER_ID;
sscanf(inputtext, "'ID: 'd", i);
SetPlayerCheckpoint(playerid, PlayerInfo[i][pPos_x],PlayerInfo[i][pPos_y],PlayerInfo[i][pPos_z], 3.0);// Timer als Gametext setten wenn auftrag angenommen wird
new stringd[128];
format(stringd,128,"<< %s %s hat den Auftrag von %s angenommen! >>",GetFrakRang(PlayerInfo[playerid][pRank],PlayerInfo[playerid][sMember]),GetName(playerid),GetName(i));
SendFamilyMessage(4, COLOR_LIGHTRED, stringd);
format(stringd, sizeof(stringd), "* Du hast den Auftrag von %s angenommen! Du hast nun %d Sekunden Zeit.", GetName(i),PlayerInfo[i][pTotTime]);
SendClientMessage(playerid, COLOR_LIGHTBLUE, stringd);
PlayerInfo[playerid][pAuftrag] = PlayerInfo[i][pTotTime];
return 1;
}
Bei "i" Muss ja die Playerid von dem angeklicken spieler hin
Wie mache ich das ? Mfg