Verwarnungssystem

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 Leute,
    bin neu hier, ich scripte seit 9h ca. und spiele SAMP seit ca. grade einmal einem Monat =D.


    Ach wie fang ich denn an -.-', frohes neues Jahr erstmal an alle, hab hier viel gelesen, doch dann hab ich mich
    doch entschieden dieser Community beizutreten. Wie gesagt, scripte ich noch nicht lange, beherrsche allerdings sehr weit-ausreichende
    C++ Kentnisse, von daher sind lange Codes nichts neues für mich. Naja, nun zu meinem "Problem".


    Ich hocke gerade an meinem Server, und habe vor ein Polizeisystem zu basteln.
    Das mit den Skins ist alles schon geregelt, funktioniert alles - kein Problem.
    Nur steh ich jetzt aufm' Schlauch, und er explodiert gleich...


    Ich will ein Verwarnungssystem erstellen, das man mit "/warn <playerid> <grund>" jemanden Verwarnen kann.
    Praktisch wäre es, wenn er die Verwarnung im Chat sehen würde, und wenn jeder Player mit "/warnings" seine Verwarnungen einsehen kann.
    Ich will kein GUI, nur eine simple Chat-Steuerung^^.


    Also, ich hoffe ich habe eine frohe Community gefunden, die bereit ist mir zu helfen =D.
    Liebe Grüße =)!
    s1con :*

  • Wenn du mit PVar arbeitest ist das das richtige


    ocmd:warn(playerid,params[])//Verwarnung aussprechen
    {
    new string[128],string2[128];
    new pID,warns,grund[128];
    if(!IsPlayerAnAdmin(playerid,3)) return SendClientMessage(playerid,ROT,"Du bist kein Admin");
    if(sscanf(params,"uis",pID,warns,grund)) return SendClientMessage(playerid,0x00FF00,"Benutzung: /warn [ID/Name] [Warns] [Grund]");
    if(warns < 1 || warns > 3) return SendClientMessage(playerid,0xB300A9,"Du kannst nur Warns zwischen 1 und 3 vergeben.");
    {
    format(string,sizeof(string),"Du hast %s verwarnt. Grund: %s",SpielerName(pID),grund);
    SendClientMessage(playerid,0x00FF00,string);
    format(string2,sizeof(string2),"Du wurdest von %s mit %i Warns, verwarnt.\nGrund: %s",(SpielerName(playerid),warns,grund));
    SendClientMessage(pID,ROT,string2);
    SetPVarInt(pID,"Warn",GetPVarInt(pID,"Warn")+warns);
    if(GetPVarInt(pID,"Warn") == 1)
    {
    SendClientMessage(pID,ROT,"Du hast deinen 1. Warn erhalten. [1/3]");
    }
    else if(GetPVarInt(pID,"Warn") == 2)
    {
    SendClientMessage(pID,ROT,"Du hast deinen 2. Warn erhalten. [2/3]");
    SendClientMessage(pID,ROT,"Wenn du noch einen Warn erhälst wirst du gebannt");
    }
    else if(GetPVarInt(pID,"Warn") >= 3)
    {
    SendClientMessage(pID,ROT,"Du hast deinen 3. Warn erhalten. [3/3]");
    SendClientMessage(pID,ROT,"Du wirst jetzt gebannt, Bye.");
    SetPVarInt(pID,"Baned",1);
    Kick(pID);
    }
    }
    return 1;
    }
    ocmd:unwarn(playerid,params[])//verwarnung wegnehmen
    {
    new string[128],string2[128];
    new pID,warns,grund[128];
    if(!IsPlayerAnAdmin(playerid,3)) return SendClientMessage(playerid,ROT,"Du bist kein Admin");
    if(sscanf(params,"uis",pID,warns,grund)) return SendClientMessage(playerid,0x00FF00,"Benutzung: /unwarn [ID/Name] [Warns] [Grund]");
    if(warns < 1 || warns > 3) return SendClientMessage(playerid,0xB300A9,"Du kannst nur Warns zwischen 1 und 3 wegmachen.");
    {
    format(string,sizeof(string),"Du hast %s, %i Warns abgezogen. Grund: %s",SpielerName(pID),warns,grund);
    SendClientMessage(playerid,0x00FF00,string);
    format(string2,sizeof(string2),"Dir wurden von %s, %i Warns abgezogen.\nGrund: %s",(SpielerName(playerid),warns,grund));
    SendClientMessage(pID,ROT,string2);
    SetPVarInt(pID,"Warn",GetPVarInt(pID,"Warn")-warns);
    }
    return 1;
    }


    ich hoffe, das du damit was anfangen kannst


    MFG
    schnarre

  • Ja
    Das ist ein SAMP Script,
    Und dafür Brauchst du Pawno,
    Also die Frage war Unnötig
    Wenn du hier was Suchst, für ein GTA Script, dann sollte Klar sein, das du da mit Pawno Arbeiten musst!!!

  • 'Schuldigung =(
    ;D


    Ich weiß dafür sollte ich einen neuen Thread erstellen aber ist es auch möglich ein kleines WantedSystem zu coden?
    Ich will einfach nur Spielern Wanteds geben und wieder wegnehmen können...


    Danke für den Code, ich versuche das meinem Skript anzupassen ;)


  • Wenn du hier was Suchst, für ein GTA Script, dann sollte Klar sein, das du da mit Pawno Arbeiten musst!!!


    Die Ausdage ist falsch,
    du schreibst das Script in der Scriptsprache pawn.
    Pawno ist lediglich ein Editor mit Compiler.
    man muss Pawno nicht zwangsweise verwenden, es gibt auch andere, auch schönere als Pawno.


    Zu den WTDs,
    an sich ist das so ähnlich,
    wie mit den Warns,
    du gibst dem Spieler z.B via PVar eine Variable, mit der anzahl, der Wanteds.


    Du kannst die WTDs mit der Function SetPlayerWantrdLevel setzen.
    Weiteres dazu hiet:
    http://www.wiki.sa-mp.com/wiki/SetPlayerWantedLevel
    Gruß,
    Dennis

    Wer Rechtschreibfehler findet, darf sie behalten ;)
    -> Forentechniker | WBB Entwickler pn

  • Danke für die Antworten, ich hock mich jetzt mal dran, nur noch eine Frage:
    Soll ich das Wanted-System in den Gamemode schreiben oder als Filterscript schreiben ?


    // Edit:
    Außerdem hab ich noch eine zusätzliche Frage - wie mach ich es das ich SPIELERN Wanteds geben kann?
    Ich meine - klar - mit dem Code:

    if
    (strcmp(cmdtext, "/wanted6", true) == 0)
    {
    SetPlayerWantedLevel(playerid, 6);
    SendClientMessage(playerid, 0x33CCFFAA, "Du hast nun 6 Sterne!");
    return 1;
    }


    hab ich mir mal eben ganz schnell 6 Wanteds gegeben. Aber wie mache ich es das ich es anderen geben kann? Und vorallem möchte ich auch die Menge der Wanteds in einem extra Parameter festlegen, z.B. "/givewanted <id> <wantedmenge>" - Irgendjemand ne Idee ?

    3 Mal editiert, zuletzt von s1con1337 ()

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Sorry aber ich versteh da nicht ganz die Syntax =/, könnte mir bitte einer erklären wie ich anderen Wanteds geben kann =/ ?
    N kleiner Codeschnipsel reicht, ich verstehe nur die einzelnen Befehle nicht ganz, das war jetzt in keinster Weise bestimment gemeint ;D