Wanted

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 Tag liebes Breadfish,
    Ich bräuchte mal eure Hilfe. Ich habe ein Wanted System entbuggt von meinem Godfather aber es will nicht gehen, wie ich es gehen sollte. Ich kann zwar nur bis 12 Wanteds vergeben was auch so sein soll aber wenn ich dann nochmal 12 Wanted gebe dann hat derjenige 24 Wanteds obwohl ich das so gescriptet habe das man nur Max 12 Wanteds haben kann und nicht mehr vergeben kann.
    Könnte mir jemand helfen?


    if(strcmp(cmd, "/suspect", true) == 0 || strcmp(cmd, "/su", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(OnDuty[playerid] != 1 && PlayerInfo[playerid][pMember] == 1)
    {
    SendClientMessage(playerid, COLOR_RED, "Du bist nicht im Dienst!");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutzung: /su [Spieler ID/ Name] [Anzahl] [Verbrechen]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutze: /su [Spieler ID] [Anzahl] [Verbrechen]");
    return 1;
    }
    new WantedAnzahl;
    WantedAnzahl = strval(tmp);
    if (gTeam[playerid] == 2 || IsACop(playerid))
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (gTeam[giveplayerid] != 2 && !IsACop(giveplayerid))
    {
    if(WantedLevel[playerid] > 12) return SendClientMessage(playerid,COLOR_RED,"Du kannst nicht mehr als 12 Wanteds vergeben!");
    new level;
    level = strval(tmp);
    if(level < 1 || level > 12) { SendClientMessage(playerid, COLOR_GREY, "Du kannst nur 12 Wanteds vergeben"); return 1; }
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    GetPlayerName(playerid, sendername, sizeof(sendername));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[64];
    while ((idx < length) && ((idx - offset) < (sizeof(result) - 1)))
    {
    result[idx - offset] = cmdtext[idx];
    idx++;
    }
    result[idx - offset] = EOS;
    if(!strlen(result))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Benutzung: /su [Spieler ID / Name] [Anzahl] [Verbrechen]");
    return 1;
    }
    WantedLevel[giveplayerid] += WantedAnzahl;
    format(string, sizeof(string), "Du hast ein Verbrechen begangen ( %s ). Zeuge: %s.",result,sendername);
    SendClientMessage(giveplayerid, COLOR_LIGHTRED, string);
    format(string, sizeof(string), "Vergebene Wanteds: %d. Neues Wantedlevel: %d", WantedAnzahl, WantedLevel[giveplayerid]);
    SendClientMessage(giveplayerid, COLOR_YELLOW, string);
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsACop(i))
    {
    format(string, sizeof(string), "HQ: Alle Einheiten: Reporter: %s, Vergebene Wanteds: %d",sendername, WantedAnzahl);
    SendClientMessage(i, TEAM_BLUE_COLOR, string);
    format(string, sizeof(string), "HQ: Verbrechen: %s, Gesuchter: %s, Aktuelle Wanteds: %d",result,giveplayer, WantedLevel[giveplayerid]);
    SendClientMessage(i, TEAM_BLUE_COLOR, string);
    }
    }
    return 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du kannst keinen Polizisten anklagen!");
    }
    }
    }
    else
    {
    format(string, sizeof(string), "%d ist kein aktiver Spieler.", giveplayerid);
    SendClientMessage(playerid, COLOR_GRAD1, string);
    return 1;
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_RED, "Du bist kein Polizist!");
    }
    }
    return 1;
    }

  • Ändere
    if(level < 1 || level > 12) { SendClientMessage(playerid, COLOR_GREY, "Du kannst nur 12 Wanteds vergeben"); return 1; }
    zu
    if(level < 1 || level > 12 || WantedLevel[giveplayerid]+level > 12) { SendClientMessage(playerid, COLOR_GREY, "Du kannst nur 12 Wanteds vergeben"); return 1; } ab.


    Das verhindert, dass wenn ein User 11 Wanteds hat, und man ihm weitere 12 gibt, dass er nacher 23 Wanteds hat.


    MfG
    Wepper

    Mit freundlichem Gruß
    Weper