Advertisement
Splav

Untitled

Jun 6th, 2012
42
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
C++ 1.36 KB | None | 0 0
  1. #include <a_samp>
  2.  
  3. #define NUMBER_OF_GREEN_ZONES 3
  4.  
  5. new Float:gRandomPlayerSpawns[NUMBER_OF_GREEN_ZONES][4] = {
  6.     {75.0, 2216.7686,-1163.7732,25.7266}, // Отель
  7.     {75.0, -2046.8947,-93.7485,35.1718}, // АШ
  8.     {75.0, 1481.3132,-1751.3090,15.4453} // Мэрия
  9. };
  10.  
  11. public OnGameModeInit()
  12. {
  13.     SetTimer("FreezePlayer", 2000, 1); // Илье: используй уже имеющийся
  14.     return 1;
  15. }
  16.  
  17. public OnPlayerGiveDamage(playerid, damagedid, Float:amount, weaponid)
  18. {
  19.     new i;
  20.     while (i<NUMBER_OF_GREEN_ZONES) {
  21.         if(IsPlayerInRangeOfPoint(playerid, gRandomPlayerSpawns[i][0], gRandomPlayerSpawns[i][1], gRandomPlayerSpawns[i][2], gRandomPlayerSpawns[i][3]))
  22.         {
  23.             TogglePlayerControllable(playerid, 0);
  24.             SetPVarInt(playerid, "FreezeForDM", 3);
  25.             SendClientMessage(playerid, 0xAFAFAFAA, "Стрельба в Зеленой Зоне запрещена. Вы заморожены на 5 секунд");
  26.         }
  27.         i++;
  28.     }
  29.     return 1;
  30. }
  31.  
  32. forward FreezePlayer();
  33. public FreezePlayer()
  34. {
  35.     for(new i; i<MAX_PLAYERS; i++)
  36.     {
  37.         if(IsPlayerConnected(i) && GetPVarInt(i, "FreezeForDM"))
  38.         {
  39.             SetPVarInt(i, "FreezeForDM", GetPVarInt(i, "FreezeForDM")-2);
  40.             if(!GetPVarInt(i, "FreezeForDM")) TogglePlayerControllable(playerid, 1); // Обрати внимание сюда. Надеюсь, это правильно :)
  41.         }
  42.     }
  43.     return 1;
  44. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement