Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Функция CheckPlayerCoords(playerid,Float:fx,Float:fy,Float :fz)

Mathian

Мастер
Думаю, почти все видели на некоторых серверах при телепорте проверку координат, тоесть если игрок не удержит текущую позицию несколько минут, он не сможет никуда телепортироватся. Данная функция позволяет провести такую проверку.

Функция возвращает 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);
Автор: ilverbac[k].
 
Сверху Снизу