[Problem] Wanted - Drigend Hilfe!

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 Community,


    seit einigen Tagen sitze ich schon daran, einen guten /su(spect) befehl zu scripten.
    Er soll wie folgt aussehen:


    /su [playerid][WantedMenge][Grund]
    /su 7 6 Massenmord zb.


    Das heißt, dass der Verbrecher mit der ID:7 seine Wanteds auf 6 gesetzt bekommt mit dem Grund: Massenmord.
    Sollte er davor schon 2 Wanteds haben, sollte er trotzdem am Ende 6 haben und nicht 8. Die Wanteds sollen also nicht addiert werden, sondern nur gesettet. Wenn man aber 2 Wanteds hat, und man /su playerid 1 GRUND macht, bleibt das Wanted level auf 2, weil das neue Verbrechen nicht größer ist als das zuvorige!


    Ich hoffe ich konnte euch erklären was ich meine ...


    Freue mich auf eine baldige Antwort,


    Mit freundlichen Grüßen,
    Rocco

  • hier is der ganze /su befehl


    if(strcmp(cmd, "/suspect", true) == 0 || strcmp(cmd, "/su", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "{6E6E6E}Verwendung: {AFAFAF}(/su)spect [spielerid/Spielername] [beschreibungdesverbrechens]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if (IsACop(playerid))
    {
    if(OnDuty[playerid] != 1)
    {
    SendClientMessage(playerid, COLOR_GREY, "Du bist nicht im Dienst!");
    return 1;
    }
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (!IsACop(giveplayerid))
    {
    if(!ProxDetectorS(175.0, playerid, giveplayerid))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Der Spieler ist nicht in deiner Nähe!");
    return 1;
    }
    GetPlayerName(giveplayerid, giveplayer, sizeof(giveplayer));
    new length = strlen(cmdtext);
    while ((idx < length) && (cmdtext[idx] <= ' '))
    {
    idx++;
    }
    new offset = idx;
    new result[60];
    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, "{6E6E6E}Verwendung: {AFAFAF}(/su)spect [spielerid/Spielername] [text]");
    return 1;
    }
    WantedLevel[giveplayerid]+= 1;
    SetPlayerCriminal(giveplayerid,playerid, result);
    return 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du kannst keinen Cop verdächtigen!");
    }
    }
    }
    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 Cop / FBI Agent / Nationlgarde !");
    }
    }
    return 1;
    }


    wie gesagt, hab ich das bis jez so, dass er 1 wanted immer dazu bekommt wenn man /su eingibt.
    ( WantedLevel[giveplayerid]+= 1; )


  • bitte ^ ^ist aber im mrmonat system muste dan bisen umschreiben