Главный редактор форума: Doc-John | Текущая дата: 30.11.2024, 06:56
  • Страница 1 из 1
  • 1
Архив - только для чтения
[Функция] IsPlayerInWater
Оффлайн
Пятница, 30.01.2015, 21:12 | Сообщение # 1
Сообщений:
12
0
Функция проверяет находится ли игрок в воде.


Код
forward IsPlayerInWater(playerid);
public IsPlayerInWater(playerid)
{
         new Float:FXF_wpos[3];
         GetPlayerPos(playerid,FXF_wpos[0],FXF_wpos[1],FXF_wpos[2]);
         if((FXF_wpos[2] > 0.00) || IsPlayerInZone(playerid,1808.2019,1424.5392,-2230.5024,-2347.7979)) { return 0; }
         else if((FXF_wpos[2] < 0.00) && (FXF_wpos[2] > -1.00)) { return 1; }
         else if(FXF_wpos[2] < -1.00) { return 2; }
         return 0;
}

forward IsPlayerInZone(playerid, Float:minX, Float:minY, Float:maxX, Float:maxY);
public IsPlayerInZone(playerid, Float:minX, Float:minY, Float:maxX, Float:maxY)
{
     new Float:FXF_ZoneX, Float:FXF_ZoneY, Float:FXF_ZoneZ;
     GetPlayerPos(playerid, FXF_ZoneX, FXF_ZoneY, FXF_ZoneZ);
      if((FXF_ZoneX >= minX && FXF_ZoneX <= maxX) && (FXF_ZoneY >= minY && FXF_ZoneY <= maxY) && FXF_ZoneZ <= 500)
     {
         return 1;
     }
      return 0;
  }
  
Параметры:
(playerid) - id проверяемого игрока.

Пример:
  
Код
if(IsPlayerInWater(playerid))
     {
          SendClientMessage(playerid,-1,"Ты в воде");
          return 1;
     }
  
  • Страница 1 из 1
  • 1
Поиск: