Problem mit Waned Show

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
  • Hey mal ne Frage


    Ich hab da ein Wanted Show system mit Chat Bubble


    Hier sit das forward:
    forward WantedShow();


    Und hier das public
    public WantedShow()
    {
    for(new i=0; i<MAX_PLAYERS; i++)
    {
    if(WantedLevel[i] == 0)
    {
    return 1;
    }
    if(WantedLevel[i] == 1)
    {
    SetPlayerChatBubble(i,"Wanted: 1", COLOR_YELLOW, 20.0, 6000);
    return 1;
    }
    if(WantedLevel[i] == 2)
    {
    SetPlayerChatBubble(i,"Wanted: 2", COLOR_YELLOW, 20.0, 6000);
    return 1;
    }
    if(WantedLevel[i] == 3)
    {
    SetPlayerChatBubble(i,"Wanted: 3", COLOR_YELLOW, 20.0, 6000);
    return 1;
    }
    if(WantedLevel[i] == 4)
    {
    SetPlayerChatBubble(i,"Wanted: 4", COLOR_YELLOW, 20.0, 6000);
    return 1;
    }
    if(WantedLevel[i] == 5)
    {
    SetPlayerChatBubble(i,"Wanted: 5", COLOR_YELLOW, 20.0, 6000);
    return 1;
    }
    if(WantedLevel[i] == 6)
    {
    SetPlayerChatBubble(i,"Wanted: 6", COLOR_YELLOW, 20.0, 6000);
    return 1;
    }
    }
    return 1;
    }


    Aber wenn ingame jemand wanteds hat zeigt er es nicht Oo

    ik bin der vito c:

  • Du musst es auch immer Updaten lassen sprich per Timer.


    Mach einen Timer bei OnGameModeInit der das Callback jede Sekunde Updaten lässt.

  • Warum global? Warum nen extra Timer?
    Du kannst einfach, sofern sich die Wantedanzahl ändert, z.B erhöht oder verringert die Funktion aufrufen (dann aber bitte spielerbezogen).


    Nur ein Vorschlag meinerseits, aber nun zu dem eigentlichen Problem, wo rufst du diese Funktion denn auf?

  • Oh da ist garnicht gut, vor allem wenn der alle Spieler durchgeht, und das wird ja für jeden spieler in xy ms aufgerufen raus damit.


    Ich kann dir meine Methode ja mal näherbringen.


    stock ShowPlayerWanted(playerid)
    {
    new string[32];
    if(WantedLevel[playerid] > 0)
    {
    format(string, sizeof string, "Wanted: %d",WantedLevel[playerid]);
    SetPlayerChatBubble(playerid,string, COLOR_YELLOW, 20.0, 6000);
    }
    else
    {
    SetPlayerChatBubble(playerid,"", COLOR_YELLOW, 20.0, 1);
    }
    }


    Sollte richtig sein.


    Die Funktion rufst du dann auf wenn sich der Wantedwert eines Spielers ändert, z.B wenn ein Spieler wanteds kriegt, durch die Polizei oder ähnliches.

  • mit ShowPlayerWanted(playerid)


    playerid ist halt der Übergabeparameter, wenn du z.B die Wanteds eines anderes Spieler erhöhst, z.B bei diesem Polizeibefehl wo man Wanteds vergibt, muss dann natürlich die ID des Täters hin, meistens bei solchen Befehlen giveplayerid.