21.01.2015, 06:06
pawn Код:
stock IsPlayerSpawn(playerid)
{
return GetPVarInt(playerid, "IsSpawn") != 0;
}
stock SetPlayerSpawnStatus(playerid, status)
{
SetPVarInt(playerid, "IsSpawn", status);
}
public OnPlayerSpawn(playerid)
{
SetPlayerSpawnStatus(playerid, 1);
return 1;
}
public OnPlayerDeath(playerid, killerid, reason)
{
SetPlayerSpawnStatus(playerid, 0);
return 1;
}
public onCheckAirBrk(playerid)
{
if (!IsPlayerSpawn(playerid)) {
return 0;
}
new Float: AC::Pos[3], Float: distance;
GetPlayerPos(playerid, AC::Pos[0], AC::Pos[1], AC::Pos[2]);
distance = floatround(GetPlayerDistanceFromPoint(playerid, AC::Info[playerid][AC::Pos_X], AC::Info[playerid][AC::Pos_Y], AC::Info[playerid][AC::Pos_Z]));
if(GetPVarInt(playerid, "Protect") == 0)
{
if(GetPlayerState(playerid) == 1)
{
if(distance > 40) CheatKick(playerid, "3");
}
else
{
if(distance > 80) CheatKick(playerid, "3");
}
}
AC::Info[playerid][AC::Pos_X] = AC::Pos[0];
AC::Info[playerid][AC::Pos_Y] = AC::Pos[1];
AC::Info[playerid][AC::Pos_Z] = AC::Pos[2];
if(GetTickCount() - AC::Info[playerid][AC::LastUpdate] > 2000) SetPVarInt(playerid, "Protect", 500);
AC::Info[playerid][AC::LastUpdate] = GetTickCount();
return 1;
}
