Hiho.
Wie frage ich ab was geklickt wurde wenn ich alle Spieler mit einer for schleife anzeigen lasse ?
Ich kann ja nicht
if(listitem == 0 - 500)
machen das wäre ja sinnlos.
Ich habe sowas schon mal gesehen aber weis nicht mehr wo.
MFG
Hiho.
Wie frage ich ab was geklickt wurde wenn ich alle Spieler mit einer for schleife anzeigen lasse ?
Ich kann ja nicht
if(listitem == 0 - 500)
machen das wäre ja sinnlos.
Ich habe sowas schon mal gesehen aber weis nicht mehr wo.
MFG
Ich werd daraus irgendwie nicht schlau.
Wenn du für jeden einen Dialog anzeigst, wird für jeden Spieler das Callback OnDialogResponse einzeln aufgerufen,
mit all den gefüllten variablen
Ich zeig dir das mal so.
case DIALOG_CONVOY_STRECKE:
{
if(response == 1)
{
if(listitem == 0){
ShowPlayerDialog(playerid, DIALOG_CONVOY_STRECKE, DIALOG_STYLE_LIST, "An wenn soll es geliefert werden?", "Staat\nAmmunation\n", "Aktzeptieren", "Zurück");
}
if(listitem == 0){
new tankstellentext[128];
for(new i;i<MAX_TANKE;i++)
{
if(!strcmp("Staat",TankInfo[i][TankstelleBesitzer],false))
{
format(tankstellentext,sizeof(tankstellentext),"Tankstelle von: %s\nName:%s - Benzin:%d/Diesel:%d",TankInfo[i][TankstelleBesitzer],TankInfo[i][TankstelleName],TankInfo[i][Benzin],TankInfo[i][Diesel]);
ShowPlayerDialog(playerid, DIALOG_CONVOY_STRECKE_1, DIALOG_STYLE_LIST, "An wenn soll es geliefert werden?", tankstellentext, "Aktzeptieren", "Zurück");
}
}
}
}
else ShowPlayerDialog(playerid,DIALOG_CONVOY_1,DIALOG_STYLE_LIST,"{FFFFFF}Convoy","Convoy Member\nStart und Ziel\nConvoy Schließen","Weiter","Schließen");
return 1;
}
Ich lasse alle Tankstellen auslesen und anzeigen, wenn sie gekauft sind.
Nur wie frage ich jetzt ab welche Tankstelle angeklickt wurde ?
Kannste doch einfach per PVar zwischen speichern.
PVars können auch mal nützlich sein^^
also z.b
test[playerid] = listitem;
Oder wie muss ich das verstehen ?
nein - nicht listitem^^
Hier würd ich eher die Tankstellen ID speichern und eine PVar verwenden.
was soll der Sinnlose RAM verbrach?
Du brauchst die Var eh nur kurzzeitig
Ja und wie soll ich die ID raus finden. Die er anklickt ?
#1
Aktueller Status wie es aussieht:
case DIALOG_CONVOY_STRECKE:
{
if(response == 1)
{
if(listitem == 0){
ShowPlayerDialog(playerid, DIALOG_CONVOY_STRECKE, DIALOG_STYLE_LIST, "An wenn soll es geliefert werden?", "Staat\nAmmunation\n", "Aktzeptieren", "Zurück");
}
if(listitem == 1)
{
new tankstellentext[2000];
for(new i;i<MAX_TANKE;i++)
{
format(tankstellentext,sizeof(tankstellentext),"%s\nID:%d | Tankstelle von: %s Benzin:%d/Diesel:%d",tankstellentext,i,TankInfo[i][TankstelleBesitzer],TankInfo[i][TankstelleName],TankInfo[i][Benzin],TankInfo[i][Diesel]);
}
ShowPlayerDialog(playerid, DIALOG_CONVOY_STRECKE_1, DIALOG_STYLE_LIST, "An wenn soll es geliefert werden?", tankstellentext, "Aktzeptieren", "Zurück");
SendClientMessage(playerid,ROT,tankstellentext);
return 1;
}
}
else ShowPlayerDialog(playerid,DIALOG_CONVOY_1,DIALOG_STYLE_LIST,"{FFFFFF}Convoy","Convoy Member\nStart und Ziel\nConvoy Schließen","Weiter","Schließen");
}
case DIALOG_CONVOY_STRECKE_1:
{
new testid[MAX_PLAYERS];
if(response == 1){
testid[playerid] = listitem;
printf("%d", testid[playerid]);
}
}
i wäre die Tankstellen ID.
Ja das ist mir eigentlich soweit auch klar.
Nur helfen tut es nicht grade viel.