Anti Teleport system funktioniert nicht

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 zusammen



    Ich überarbeite zurzeit mein Anticheat und bin an einen Punkt angekommen wo ich verzweifel
    Ich habe vor, das man Sich nicht mit Sobeit Teleportieren kann da habe ich das gemacht:


    enum Homer
    {
    H_Geld,
    H_Ban,
    H_Spam,
    H_Waffe,
    H_X,
    H_Y,
    H_Z,
    }
    new Homer_Simpson[MAX_PLAYERS][Homer];


    stock Homer_SetPos(playerid,Float:x,Float:y,Float:z)
    {
    Homer_Simpson[playerid][H_X] += x;
    Homer_Simpson[playerid][H_Y] += y;
    Homer_Simpson[playerid][H_Z] += z;
    SetPlayerPos(playerid,Float:x,Float:y,Float:z);
    }


    das reagiert aber nicht und ich versteh nicht wiso..
    er setzt den Spieler da nicht hin und auch bei der Abfrage ob was passiert ist scheitert es
    das habe ich so gemacht wo er das überprüft:

    //Timer abfrage
    new Float:x, Float:y, Float:z;
    if(GetPlayerPos(i,x,y,z) > Homer_Simpson[i][H_X], Homer_Simpson[i][H_Y], Homer_Simpson[i][H_Z])
    {
    new string[128];
    format(string,sizeof(string),"%s hat %s gebannt. {FF8000}Grund: Teleport Hack",botname, SpielerName(i));
    SendClientMessageToAll(cRed,string);
    SendClientMessage(i,cRed,"Du wurdest gebannt! {FF8000}Grund: Teleport Hack");
    Ban_Int(SpielerName(i),"1");
    Kick(i);
    }


    Nur er bannt auch nicht wenn ich SetPlayerPos nehme


    Ich hoffe, das ihr mir evtl dabei helfen könnt
    MFG


    Merte

  • Hi,


    dein SetPos-Stock kann so garnicht funktionieren.
    Du möchtest nämlich die Koordinaten der neuen Position dazu addieren.
    H_X, H_Y, H_Z müssen Floats sein, dann die Variablen bei einem Teleport direkt auf die neue Position setzen.


    if(GetPlayerPos(i,x,y,z) > Homer_Simpson[i][H_X], Homer_Simpson[i][H_Y], Homer_Simpson[i][H_Z])


    Hierbei musst du GetPlayerPos zuerst benutzen, dies liefert 3 Variablen zurück, daher kannst du nicht abfragen, ob diese höher sind als X.


    Viele Grüße,
    Alva

  • Ich hab es schon hinbekommen nur funzen tut es nicht...


    brauchst dich niht bewegen und bist schon gebannt