[FilterScript] Example Anti-Teleport Vehicle
#1

This is Example Anti-Teleport Vehicle. (Anti-Cheat system).
Only SAMP 0.3c R3
Code:
/*
        Example Anti-Teleport Vehicle
                by AirKite
        Not finished!!!
*/
 
new Float:OldVehiclePos[2000][4];
new LastCar[500];
#include <a_samp>
stock Float:GetDistanceBetweenPoints(Float:x,Float:y,Float:z,Float:x2,Float:y2,Float:z2)
{
        return floatsqroot(floatpower(floatabs(floatsub(x2,x)),2)+floatpower(floatabs(floatsub(y2,y)),2)+floatpower(floatabs(floatsub(z2,z)),2));
}
public OnUnoccupiedVehicleUpdate(vehicleid, playerid, passenger_seat)
{
        new string[128], Float:vpos_x, Float:vpos_y, Float:vpos_z, Float:vpos_a;
        GetVehiclePos(vehicleid, vpos_x, vpos_y, vpos_z); GetVehicleZAngle(vehicleid,vpos_a);
        if(OldVehiclePos[vehicleid][0] != 0.0 && OldVehiclePos[vehicleid][1] != 0.0 && OldVehiclePos[vehicleid][2] != 0.0 && OldVehiclePos[vehicleid][3] != 0.0)
        {
                new Float:vehicledistance = GetDistanceBetweenPoints(vpos_x, vpos_y, vpos_z, OldVehiclePos[vehicleid][0], OldVehiclePos[vehicleid][1], OldVehiclePos[vehicleid][2]);
                //format(string, sizeof(string), "Update Distance: %f", vehicledistance);
                //SendClientMessage(playerid, 0xFFFFFFFF, string);
                if(vehicledistance > 15.0)
                {
                        SetVehiclePos(vehicleid, OldVehiclePos[vehicleid][0], OldVehiclePos[vehicleid][1], OldVehiclePos[vehicleid][2]);
                        SetVehicleZAngle(vehicleid,OldVehiclePos[vehicleid][3]);
                        return;
                }
        }
        OldVehiclePos[vehicleid][0]=vpos_x;
        OldVehiclePos[vehicleid][1]=vpos_y;
        OldVehiclePos[vehicleid][2]=vpos_z;
        OldVehiclePos[vehicleid][3]=vpos_a;
}
public OnPlayerStateChange(playerid,newstate,oldstate)
{
        if(newstate == PLAYER_STATE_DRIVER)
        {
                LastCar[playerid]=GetPlayerVehicleID(playerid);
        }
        else if(oldstate == PLAYER_STATE_DRIVER)
        {
                new lastveh = LastCar[playerid];
                GetVehiclePos(lastveh,OldVehiclePos[lastveh][0],OldVehiclePos[lastveh][1],OldVehiclePos[lastveh][2]);
                GetVehicleZAngle(lastveh,OldVehiclePos[lastveh][3]);
        }
        return 1;
}
pastebin.com: http://pastebin.com/Xh3ZeNEw
Reply


Messages In This Thread
Example Anti-Teleport Vehicle - by AirKite - 27.07.2011, 13:39
AW: Example Anti-Teleport Vehicle - by Pablo Borsellino - 27.07.2011, 14:41
Re: Example Anti-Teleport Vehicle - by JernejL - 27.07.2011, 14:51
Re: Example Anti-Teleport Vehicle - by AirKite - 28.07.2011, 05:03

Forum Jump:


Users browsing this thread: 1 Guest(s)