Wanteds ausgeben - Textdraw?

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
  • Guten Morgen allerseits,


    Ich habe auf meinem Selfmade Script ein Wanted System gemacht und würde nun gerne unter der Geldanzeige die aktuelle Wanted anzahl ausgeben.
    Vielleicht mit einem Stern Icon und die Zahl (wobei die Zahl wichtiger ist^^)


    Leider habe ich keine Ahnung von TextDraws...
    Sollte es eine andere bessere/einfachere Möglichkeit dafür geben, würde ich mich freuen, wenn Ihr mir diese nicht verschweigt.


    Ich würde mich sehr freuen, wenn mir hier jemand helfen könnte.



    Freundliche Grüße
    chris

  • Du hast ein Selfmade Script aber weisst nicht wie man die Wanted Zahl anzeigen lassen kann? Finde ich ein bisschen Koemisch. Bin leider am Handy kann dir nicht so viel Helfen aber eins weiss ich geh auf die SA:MP Wiki. Dort ist es bestimmt erklaert.

    Mit freundlichen Grüßen

  • Nein nicht so. Ich habe ein eigenes Wantedsystem..
    Das Standart system geht ja nur bis 6 wanteds.



    Aber das Problem ist nicht das auslesen der Wanteds.
    Sondern generell das erstellen/aktualisieren der Textdraws.
    Ich hab in meinem Script noch kein Textdraw eingebaut, bin auch noch kein Profi was PAWN angeht^^

  • Das hab ich oben im Script
    new Text3D:WantedText[MAX_PLAYERS];


    Und das bei OnGameModeInit
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    WantedDraw[i] = TextDrawCreate(43.000000,321.000000,sSpielerdatei[i][pWantedLevel]);
    TextDrawAlignment(WantedDraw[i],0);
    TextDrawBackgroundColor(WantedDraw[i],0x0000ff33);
    TextDrawFont(WantedDraw[i],2);
    TextDrawLetterSize(WantedDraw[i],0.499999,0.899999);
    TextDrawColor(WantedDraw[i],0x000000cc);
    TextDrawSetProportional(WantedDraw[i],1);
    TextDrawSetShadow(WantedDraw[i],1);
    TextDrawShowForPlayer(i,WantedDraw[i]);
    }


    Und das bei meinem Befehl um die Wanteds zu erhöhen
    TextDrawSetString(WantedDraw[playerid],sSpielerdatei[pID][pWantedLevel]);

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Sry das mit dem 3D war mein Fehler. Habe das falsche gepostet^^


    Also habe oben im Script
    new Text:WantedDraw[MAX_PLAYERS];


    bei OnGameModeInit()
    for(new i = 0;i<MAX_PLAYERS;i++)
    {
    new string[20];
    format(string, sizeof(string), "Wanteds: %i", sSpielerdatei[i][pWantedLevel]);
    WantedDraw[i] = TextDrawCreate(43.000000,321.000000,string);
    TextDrawAlignment(WantedDraw[i],0);
    TextDrawBackgroundColor(WantedDraw[i],ROT);
    TextDrawFont(WantedDraw[i],2);
    TextDrawLetterSize(WantedDraw[i],0.499999,0.899999);
    TextDrawColor(WantedDraw[i],0x000000cc);
    TextDrawSetProportional(WantedDraw[i],1);
    TextDrawSetShadow(WantedDraw[i],1);
    TextDrawShowForPlayer(i,WantedDraw[i]);
    }


    und beim /su Befehl zur Wantedvergabe (Dass das Textdraw aktualisiert wird, wenn der Spieler Wantedes dazu bekommt.
    new string4[20];
    format(string4, sizeof(string4), " Wanteds: %i", sSpielerdatei[playerid][pWantedLevel]);
    TextDrawSetString(WantedDraw[playerid],string4);

  • ocmd:su(playerid,params[])
    {
    new pID, anzahl, reason[64];
    if(sscanf(params, "uis", pID, anzahl, reason))
    {
    return SendClientMessage(playerid, WEISS, "Verwendung: /su(spect) [id/PartOfName][Anzahl][Grund]");
    }
    if(IstSpielerInFraktion(playerid, 1) || IstSpielerInFraktion(playerid, 2))
    {
    sSpielerdatei[pID][pWantedLevel] = anzahl+sSpielerdatei[pID][pWantedLevel];
    Delete3DTextLabel(WantedText[pID]);
    new str[64];
    format(str, sizeof(str), "Wantedanzahl: %i", sSpielerdatei[pID][pWantedLevel]);
    WantedText[pID] = Create3DTextLabel(str, DUNKELROT, 0, 0, 0, 120, 0, 0);
    Attach3DTextLabelToPlayer(WantedText[pID], pID, 0, 0, 0);
    new string4[20];
    format(string4, sizeof(string4), " Wanteds: %i", sSpielerdatei[pID][pWantedLevel]);
    TextDrawSetString(WantedDraw[pID],string4);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i))
    {
    if(IstSpielerInFraktion(i, 1) || IstSpielerInFraktion(i, 2))
    {
    new string[128];
    new string2[128];
    new string3[40];
    format(string, sizeof(string), "HQ: An alle Einheiten: Zeuge: %s",adminPlayerName(playerid));
    SendClientMessage(i, TEAM_BLUE_COLOR, string);
    format(string, sizeof(string), "HQ: Verbrechen: %s, Täter: %s", reason, adminPlayerName(pID));
    SendClientMessage(i, TEAM_BLUE_COLOR, string);
    format(string2, sizeof(string2), " * Du hast ein Verbrechen begangen: %s, Zeuge: %s *", reason, adminPlayerName(playerid));
    SendClientMessage(pID, DUNKELROT, string2);
    format(string3, sizeof(string3), "Aktuelles Wantedlevel: %i", sSpielerdatei[pID][pWantedLevel]);
    SendClientMessage(pID, GELB, string3);
    }
    }
    }
    }
    return 1;
    }


    Mein Wantedsystem ist soweit fertig ich will nur noch, dass unter der Geldanzeige das aktuelle Wantedlevel angezeigt wird.