31.08.2017, 10:59
TP Anti-cheat? Im suggesting doing a server sided X,Y,Z.
Now just CTRL+H and change SetPlayerPos to SetPlayerPosEx.
Код:
enum PlayerData
{
Float:PlayerX,
Float:PlayerY,
Float:PlayerZ
};
new PlayerInfo[MAX_PLAYERS][PlayerData];
forward SetPlayerPosEx(playerid, Float:X,Float:Y,Float:Z);
public SetPlayerPosEx(playerid, Float:X,Float:Y,Float:Z)
{
SetPVarInt(playerid, "Sided", 1);
PlayerInfo[playerid][PlayerX] = X;
PlayerInfo[playerid][PlayerY] = Y;
PlayerInfo[playerid][PlayerZ] = Z;
SetPlayerPos(playerid, X,Y,Z);
return 1;
}
Public OnPlayerUpdate(playerid)
{
new Float:x, Float:y, Float:z;
GetPlayerPos(playerid, x, y, z);
If(x != PlayerInfo[playerid][PlayerX] && GetPvarInt(playerid, "Sided") == 1)
{
Kick(playerid);
SendClientMessage(playerid, 0xFFFFFFFF, "You caught teleporting. Kicking...");
}
return 1;
}
Public OnPlayerSpawn(playerid)
{
SetPVarInt(playerid, "Sided", 1);
return 1;
}
Public OnPlayerDisconnect(playerid)
{
DeletePVarInt(playerid, "Sided");
Return 1;
}

