WaffenCheat System?

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 ich habe mir ein Eigenes Simples Anti WaffenCheat System gescriptet.
    Nur eine Zeile die makiert ist , ist ein Empty Statement?
    Ausserdem ist das Richtig kann man das so abfragen?
    forward Blub(playerid);
    public Blub(playerid)
    {//36 //39 37 16 38
    if(GetPlayerWeapon(playerid) == 16 || 37 || 39 || 36 || 38);//Die Zeile
    {
    format(ALLESTRINGS,sizeof(ALLESTRINGS),"AntiCheat:%s wurde gebannt. Grund: Waffenhack",SpielerName(playerid));
    SendClientMessageToAll(ROT,ALLESTRINGS);
    }
    }

  • forward Blub(playerid);
    public Blub(playerid)
    {//36 //39 37 16 38
    if(GetPlayerWeapon(playerid) == 16 || 37 || 39 || 36 || 38)
    {
    format(ALLESTRINGS,sizeof(ALLESTRINGS),"AntiCheat:%s wurde gebannt. Grund: Waffenhack",SpielerName(playerid));
    SendClientMessageToAll(ROT,ALLESTRINGS);
    }
    }Das ; weg ^^

  • Gar nicht :D
    Die Abfrage wird IMMER Wahr sein.
    Du musst nämlich immer eine prüfung von etwas machen wenn du etwas abfragst.
    Das hateißt du kannst nicht einfach
    if(GetPlayerWeapon(playerid) == 16 || 37 || 39 || 36 || 38)
    machen, weil 37 etc immer != 0 sind.
    du müsstest also immer wieder die waffe abfragen ;)

    "Bevor ich mir Informationen aus der "Bild" hole,
    werde ich anfangen, Wahlergebnisse danach vorauszusagen,
    neben welchen Busch unsere Katze gepinkelt hat."

    Margarete Stokowski

  • if(GetPlayerWeapon(playerid) == 16 || 37 || 39 || 36 || 38)


    machs mal so:


    if(GetPlayerWeapon(playerid) == 16 ||GetPlayerWeapon(playerid) == 37 || GetPlayerWeapon(playerid) == 39 || GetPlayerWeapon(playerid) == 36 || GetPlayerWeapon(playerid) == 38)


    mfg. :thumbup:

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Dann wird er aber auch gekickt, wenn du die von einem Admin bekommst.
    Musst du halt noch eine Abfrage reinmachen, dass wenn er sie von einem Admin bekommt, der Code abgebrochen wird.

    PN Support? Kannste knicken!

  • forward Blub(playerid);
    public Blub(playerid)
    {//36 //39 37 16 38
    if(GetPlayerWeapon(playerid) == 16 ||GetPlayerWeapon(playerid) == 37 || GetPlayerWeapon(playerid) == 39 || GetPlayerWeapon(playerid) == 36 || GetPlayerWeapon(playerid) == 38)
    {
    format(ALLESTRINGS,sizeof(ALLESTRINGS),"AntiCheat:%s wurde gebannt. Grund: Waffenhack",SpielerName(playerid));
    SendClientMessageToAll(ROT,ALLESTRINGS);
    KickPlayer(playerid);
    SetPVarInt(playerid,"Gebannt",1);
    }
    }
    Ich habe es so gemacht und es passiert aber nix Ingame . Man wird nicht gebannt

  • Wieso nutzt die nicht die neuen Funktionen von 0.3d 8)


    OnPlayerGiveDamage oder OnPlayerTakeDamage


    Ich würde es ungefähr so machen:
    public OnPlayerTakeDamage(playerid, issuerid, Float: amount, weaponid)
    {
    new string[128], opfer[MAX_PLAYER_NAME], angreifer[MAX_PLAYER_NAME];
    new weaponname[24];
    GetPlayerName(playerid, opfer, sizeof (opfer));
    GetPlayerName(issuerid, angreifer, sizeof (angreifer));

    GetWeaponName(weaponid, weaponname, sizeof (weaponname));
    if(weaponid == 38)
    {
    format(string, sizeof(string), "ANTI-CHEAT: %s griff %s mit einer %s an. Er wurde gebannt.", angreifer, opfer,weaponame);
    SendClientMessageToAll(COLOR_GREY,string);
    SendClientMessage(playerid,COLOR_RED," Du wurdest gebannt/gekickt, da Du dir eine Minigun ercheatest hast. ");
    Kick(issuerid);
    }
    return 1;
    }