Suche ein gutes Wantedsystem!

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 liebe Community!


    Ich suche ein gutes Wantedsystem, am besten als Filterscript!


    So sollte es funktionieren:


    Die Fraktionen SAPD (1), FBI (2) und Bundeswehr (3) sollten Wanteds verteilen!


    Man sollte eingeben als Cop (nur in einem der jeweiligen Fraktionsfahrzeuge) /su(spect) [Spieler ID] [Anzahl der Wanteds] [Grund]


    Bei allen Einheiten sollte dann der Text kommen:


    HQ: Verbrechen: [Der Angegebene Grund] Reporter: [Name des Vergebers]
    HQ: Gesuchter: [Spieler] Wanteds: [Anzahl der Wanteds]


    Jeder Spieler darf maximal 6 Wanteds haben! Das heißt, wenn er erst eins wegen STVO bekommt, hat er 1 Wanted.


    Wenn er dann wieder 4 wegen Beschuss bekommt, sollte er dann 5 haben. Also 1+4 Wanteds = 5!


    Über den Befehl /wanted sollte dann jeder Cop/Agent/Soldat sehen können, wer Wanteds hat und wie viele.


    Vielleicht hat ja jemand Lust und macht mir eins, wäre nett!

  • 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;
    }
    if (PlayerInfo[playerid][pMember] == 13 || PlayerInfo[playerid][pLeader] == 13)
    {
    SendClientMessage(playerid, COLOR_GREY, " Du kannst keine Wanteds austeilen !");
    return 1;
    }
    tmp = strtok(cmdtext, idx);
    if(!strlen(tmp))
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Befehl: (/su)spect [playerid] [Anklage]");
    return 1;
    }
    giveplayerid = ReturnUser(tmp);
    if (gTeam[playerid] == 2 || IsACop(playerid))
    {
    if(IsPlayerConnected(giveplayerid))
    {
    if(giveplayerid != INVALID_PLAYER_ID)
    {
    if (gTeam[giveplayerid] != 2)
    {
    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, "Befehl: (/su)spect [playerid] [Vergehen]");
    return 1;
    }
    if(IsACop(giveplayerid))
    {
    SendClientMessage(playerid, COLOR_WHITE, "Du kannst keinem Staatsbeamten Wanteds geben!");
    return 1;
    }
    if(WantedLevel[giveplayerid] >= 6)
    {
    SendClientMessage(playerid, COLOR_WHITE, "Der Spieler hat schon 6 Wanteds!");
    return 1;
    }
    WantedLevel[giveplayerid]+= 1;
    SetPlayerCriminal(giveplayerid,playerid, result);
    SendClientMessage(playerid, COLOR_WHITE, "Du hast dem Spieler ein WantedLevel gegeben!");
    return 1;
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD2, "Du kannst keinem Beamten ein WantedLevel geben!");
    }
    }
    }
    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 Staatsbeamter !");
    }
    }
    return 1;
    }


    if(strcmp(cmd, "/wanted", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if(IsACop(playerid))
    {
    new x;
    SendClientMessage(playerid, COLOR_GREEN, "Momentan gesuchte Verbrecher:");
    for(new i=0; i < GetMaxPlayers(); i++) {
    if(IsPlayerConnected(i))
    {
    if(WantedLevel[i] > 0)
    {
    GetPlayerName(i, giveplayer, sizeof(giveplayer));
    format(string, sizeof(string), "%s%s: %d", string,giveplayer,WantedLevel[i]);
    x++;
    if(x > 3) {
    SendClientMessage(playerid, COLOR_YELLOW, string);
    x = 0;
    format(string, sizeof(string), "");
    } else {
    format(string, sizeof(string), "%s, ", string);
    }
    }
    }
    }
    if(x <= 3 && x > 0) {
    string[strlen(string)-2] = '.';
    SendClientMessage(playerid, COLOR_YELLOW, string);
    }
    }
    else
    {
    SendClientMessage(playerid, COLOR_GREY, " Du bist kein Polizist / FBI Agent /Armee Mitglied!");
    return 1;
    }
    }//not connected
    return 1;
    }