Mathian
Мастер
Думаю, почти все видели на некоторых серверах при телепорте проверку координат, тоесть если игрок не удержит текущую позицию несколько минут, он не сможет никуда телепортироватся. Данная функция позволяет провести такую проверку.
Функция возвращает 0, если позиция не была удержана и 1, если игрок удержал позицию.
Небольшой пример использования:
Автор: ilverbac[k].
Функция возвращает 0, если позиция не была удержана и 1, если игрок удержал позицию.
PHP:
stock CheckPlayerCoords(playerid,Float:fx,Float:fy,Float:fz)
{
new Float:x,Float:y,Float:z,Integer:check;
GetPlayerPos(playerid,Float:fx,Float:fy,Float:fz);
for(new i=0;i<10;i++;)//Небольшой таймер
{
GetPlayerPos(playerid,Float:x,Float:y,Float:z);
}
if(GetPlayerPos(playerid,Float:fx,Float:fy,Float:fz) != GetPlayerPos(playerid,Float:x,Float:y,Float:z)) check=0;
else check=1;
return check;
}
PHP:
if(CheckPlayerCoords(playerid,Float:fx,Float:fy,Float:fz) != 1) return SendClientMessage(playerid,0xFF0000FF,"Позиция не была удержана, вы не будете телепортированы.");
else return SendClientMessage(playerid,0x00FF00FF,"Позиция успешно удержана, ждите телепорта."),SetPlayerPos(playerid,0.0,0.0,0.0), SetPlayerFacingAngle(playerid,90.0);
