Hilfe bei Wanteds

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
  • Hallo liebes Community,


    Ich brauche hilfe man kann auf mein Server Unendlich Wanteds Vergeben ich möchte aber das es Max
    6 Stück sind bitte um hilfe.


    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_GREY, "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(PlayerInfo[giveplayerid][pJailed] > 0)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Der Spieler ist im Gefängnis!");
    return 1;
    }
    if (gTeam[giveplayerid] != 2 && !IsACop(giveplayerid))
    {
    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_GRAD2, "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_GRAD2, "Du bist kein Polizist!");
    }
    }
    return 1;
    }

  • frag doch einfach


    WantedLevel[giveplayerid] >6 dann setzt
    WantedLevel[giveplayerid]=6

  • WantedLevel[giveplayerid] += WantedAnzahl;
    format(string, sizeof(string), "Du hast ein Verbrechen begangen ( %s ). Zeuge: %s.",result,sendername);
    in der zeile oben setzt du jedes ma die wanteds des player + die wanteds die du ihm gibts


    d.h. er bekommt jedes ml welle druff


    jetzt kannst du ja nach
    WantedLevel[giveplayerid] += WantedAnzahl;
    abfrage
    if (WantedLevel[giveplayerid]>6)WantedLevel[giveplayerid]=6 // Wenn Wantedlevel größer 6 dann setzt Wantedlevel auf 6


    somit bekommt der User nicht mehr als 6 Wanteds

  • if (WantedLevel[giveplayerid]>6)WantedLevel[giveplayerid]=6 // Wenn Wantedlevel größer 6 dann setzt Wantedlevel auf 6


    das über



    das einsetzten?


    WantedLevel[giveplayerid] += WantedAnzahl;



  • lesen ftw

  • So habe und ich teste es
    //edit


    man kann immer noh soviele verteilen

    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_GREY, "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(PlayerInfo[giveplayerid][pJailed] > 0)
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Der Spieler ist im Gefängnis!");
    return 1;
    }
    if (gTeam[giveplayerid] != 2 && !IsACop(giveplayerid))
    {
    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;
    }
    if (WantedLevel[giveplayerid]>6)WantedLevel[giveplayerid]=6; // Wenn Wantedlevel größer 6 dann setzt Wantedlevel auf 6
    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_GRAD2, "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_GRAD2, "Du bist kein Polizist!");
    }
    }
    return 1;
    }


    hier nochmal zeilen

    2 Mal editiert, zuletzt von Emre.aka.Doktrin () aus folgendem Grund: Verbesserung

  • if (WantedLevel[giveplayerid]>6)WantedLevel[giveplayerid]=6; // Wenn Wantedlevel größer 6 dann setzt Wantedlevel auf 6
    WantedLevel[giveplayerid] += WantedAnzahl;


    wie gesagt


    NACH dem



    WantedLevel[giveplayerid] += WantedAnzahl;
    if (WantedLevel[giveplayerid]>6)WantedLevel[giveplayerid]=6; // Wenn Wantedlevel größer 6 dann setzt Wantedlevel auf 6