O-Amt Anrufe mit Dialog

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • if(strcmp(strget(cmdtext,0), "/calls", true) == 0)
    {
    new playername[256];
    new spielerid;
    for (new i=0;i<MAX_PLAYERS;i++)
    {
    spielerid = i;
    GetPlayerName(i,playername, sizeof(playername));
    if(oamtruf[i] == true)
    {
    format(calls, sizeof(calls), "%s (%i)\n", playername, spielerid);
    }
    }
    ShowPlayerDialog(playerid, 5872, DIALOG_STYLE_LIST, "Diese Leute haben das O-Amt gerufen!",calls,"Annehmen", "Abbrechen");
    return 1;
    }


    Wie bekomme ich das jetzt hin das jeder angerufene User als ein Listitem angezeigt wird?

  • SpielerID kannst du glaube ich auch durch "senderid" austauschen.
    Kommen Errors?

  • Nein keine Errors. Das Problem ist, ich hab einfach keine Idee wie ich aus calls eine Variable mache. Es wird nur der letzte user der einen oamtler gerufen hat ausgegeben. Da ich die Variable calls ja bei jedem user neuladen lasse

  • :D
    Wie soll das so was werden?


    Zeig mir mal wie du oamtruf definiert hast.

  • new bool:oamtruf[MAX_PLAYERS];




    if(strcmp(strget(cmdtext,0), "/oamt", true) == 0)
    {
    if (oamtler[playerid] == false)
    {
    SendClientMessage(playerid,0xFFFF00AA,"Leider ist kein Ordnungshüter Online!");
    return 1;
    }
    SendClientMessage(playerid,0xFFFF00AA,"Ordnungshüter wurde gerufen! Bitte warte hier!");
    SendClientMessage(playerid,0xFFFF00AA,"TIPP: Bei fakeanruf ist eine Strafe von $1000 fällig.");
    new pName[MAX_PLAYER_NAME];
    new msg[256];
    new Float:x;
    new Float:y;
    new Float:z;
    GetPlayerName(playerid,pName,sizeof(pName));
    GetPlayerPos(playerid, x, y, z);
    format(msg,sizeof(msg),"*** %s (id:%d) hat einen Ordnungshüter gerufen ***",pName,playerid);
    for (new i=0;i<MAX_PLAYERS;i++)
    {
    if (oamtler[i] == true)
    {
    SendClientMessage(i,0xFFFF00AA,msg);
    //SetPlayerCheckpoint(playerid, x, y, z, 3.0);
    oamtruf[playerid] = true;
    }
    }
    return 1;
    }

  • Lass mir mal bitte das ganze Script per PM zukommen, alles was dazugehört.

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen