17:40
ОбновитьСмайлыУправление мини-чатом
МИНИ-ЧАТ
Главная страница!

 



 
          





Рекомендуем:





Последние Файлы GTA 4 Последние Файлы GTA-MP Реклама
Скрипт GTA 4 элементы Watch... 07.09.2014
Ferrari 360 Spider [EPM con... 13.12.2013
Porsche Cayenne Turbo 2012 ... 13.12.2013
Shelby Terlingua Mustang v1... 13.12.2013
Hamann Lamborghini Gallardo... 27.10.2013
[GM] The Big PEN1:LS v2.00 ... 04.12.2017
Dgun (AvnanceRP,SampRP,Dimo... 19.03.2016
SAMP скрипт SX Events (MySQ... 03.03.2016
Карта ASL мэрия для SAMP се... 03.03.2016
AIM для SA-MP 0.3.7 22.02.2016
  • Страница 1 из 1
  • 1
Модератор форума: AXE, Weddew  
[Решено] Проверка на карту.
AstarionДата: Суббота, 14.01.2012, 20:20 | Сообщение # 1
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 173
Награды: 16
Город: Москва
Замечания: 40%
Статус:
Всех приветствую. У меня возникла проблема - вставил анти-чит на полёты. Но он работает по принципу: анимация плавания и изменение высоты. Так вот, мне нужно сделать проверку на некоторые карты. В доме МЭД-ДОГА есть бассейн, и там если поплавать и нырнуть - ложно сработает античит и бан соответственно(или кик). Так как же сделать проверку на эту карту, чтобы эту карту он фильтровал(т.е. не проверял людей на этой карте), т.к. там особо не полетаешь - читаков небудет, а уже на других картах опять проверял людей. Вообщем поискал в интернете "Проверка на карту" - ничего не нашёл. Если на этот вопрос уже есть ответ - дайте ссылку. Заранее благодарен умным людям. suicide2
MerixДата: Суббота, 14.01.2012, 20:42 | Сообщение # 2
Уважаемый человек
Группа: Продвинутые
Сообщений: 757
Награды: 20
Город: Тверь
Репутация: 1306
Замечания: 60%
Статус:
Поставь проверку на интерьер, в котором находится игрок. Например:
Code
if(GetPlayerInterior(playerid) == 0)
{
//Функции античита
}
else return true;



Совсем новое. Скоро ты обалдеешь.
AstarionДата: Суббота, 14.01.2012, 20:44 | Сообщение # 3
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 173
Награды: 16
Город: Москва
Замечания: 40%
Статус:
Quote (Merix)
if(GetPlayerInterior(playerid) == 0)
{
//Функции античита
}
else return true;

Спасибо, хорошая идея. Попробую, кстати неподскажешь ID особняка Медда Дога.
Ещё предложения!






Сообщение отредактировал lord379 - Суббота, 14.01.2012, 20:47
MerixДата: Суббота, 14.01.2012, 20:53 | Сообщение # 4
Уважаемый человек
Группа: Продвинутые
Сообщений: 757
Награды: 20
Город: Тверь
Репутация: 1306
Замечания: 60%
Статус:
lord379, Особняк Madd Doggs: интерьер - 5.
Пользуйся.



Совсем новое. Скоро ты обалдеешь.
AstarionДата: Суббота, 14.01.2012, 20:56 | Сообщение # 5
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 173
Награды: 16
Город: Москва
Замечания: 40%
Статус:
Quote (Merix)
lord379, Особняк Madd Doggs: интерьер - 5.

А там же ещё Victim с интерьером 5. Он ведь не различит что я хотел Медд Дога. Я нашёл [cut=тут]luxury.mybb.ru/viewtopic.php?id=23[/cut] что интерьер 55






Сообщение отредактировал lord379 - Суббота, 14.01.2012, 20:57
AstarionДата: Суббота, 14.01.2012, 20:59 | Сообщение # 6
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 173
Награды: 16
Город: Москва
Замечания: 40%
Статус:
Правда оффтопик, но подскажи вот тут в чём проблема:
Code
if(PlayerTeam[playerid] == TEAM_ZOMBIE)
    {
      if(OnPlayerSpawn(playerid))
     {
      new Float:Health;
         GetPlayerHealth(playerid,Health);
         if(Health > 45)
         {
      Kick(playerid);
      return 0;
      }
     }
    }
Просто я сделал проверку чтобы зомби немогли себе поднять хп и их сраху кикало. Но проблема в том, что кикает ВСЕХ зомби подключившихся и заспавнившихся. Говорю сразу, что при спавне зомбям выдаётся 40 хп и не более.
Причём на строку if(Health > 45) даёт ошибку 049 . Короче подскажите как по грамотному написать.






Сообщение отредактировал lord379 - Суббота, 14.01.2012, 21:05
MerixДата: Суббота, 14.01.2012, 21:14 | Сообщение # 7
Уважаемый человек
Группа: Продвинутые
Сообщений: 757
Награды: 20
Город: Тверь
Репутация: 1306
Замечания: 60%
Статус:
lord379, так вообще делать нельзя.
Code
if(PlayerTeam[playerid] == TEAM_ZOMBIE)  
     {  
       if(OnPlayerSpawn(playerid))  
      {  
       new Float:Health;  
          GetPlayerHealth(playerid,Health);  
          if(Health > 45)  
          {  
       Kick(playerid);  
       return 0;  
       }  
      }  
     }
- твой код.
Тебе нужно создавать в OnGameModeInit паблик односекундный, или 3-х, ну это без разницы.
В действие этого паблика вставлять проверку на ХП.
Если судить по ГФ, то вставлять в OnPlayerUpdate.
Code
if(PlayerTeam[playerid] == TEAM_ZOMBIE)  
     {  
       new Float:Health;  
          GetPlayerHealth(playerid,Health);  
          if(Health > 45)  
          {  
       Kick(playerid);  
       return 1;  
       }   
     }

Не знаю, за что у тебя отвечает OnPlayerSpawn, но подозреваю, во всяком случае. Более менее правильным будет код, который выше.



Совсем новое. Скоро ты обалдеешь.
BorogДата: Суббота, 14.01.2012, 21:37 | Сообщение # 8
Долгожитель
Группа: I'm V.I.P.
Сообщений: 1362
Награды: 43
Город: Москва
Репутация: 1249
Замечания: 20%
Статус:
Quote (lord379)
if(OnPlayerSpawn(playerid))

этой проверкой ты пробежался по функции OnPlayerSpawn, таким образом сделав ложный вызов, и ничего этим не узнал. Вернулась как истина (true), ибо другого и быть не могло. Если ты хочешь проверить следующей код во время спауна, то этот код всего-лишь надо засунуть в OnPlayerSpawn и никаких стандартных пабликов больше не вызывать, если это действительно не требуется



Silver Break
http://s-break.ru/
http://vk.com/sbreak
AstarionДата: Суббота, 14.01.2012, 22:56 | Сообщение # 9
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 173
Награды: 16
Город: Москва
Замечания: 40%
Статус:
Quote (Borog)

Слушай, а помоги создать простейший античит для зомби, если условие такое: у зомбей при спавне выдаётся 40 ХП. Если игрок зомби и у него вдруг больше 40 ХП - его кикает. Я впринцепе создал код(вышенаписанный) но знаю что он неправильный, так как выдаёт 049 ошибку на строку if(Health > 45) . Напиши как будет правильно и чтобы работало. ;)
__________________________________________________
Всё, сделал проверку по таймеру, всё проходит ок. Помощь больше не нужна.






Сообщение отредактировал lord379 - Суббота, 14.01.2012, 23:21
AndrejsДата: Воскресенье, 15.01.2012, 01:24 | Сообщение # 10
Группа: I'm V.I.P.
Сообщений: 1801
Награды: 37
Город: Tallinn
Репутация: 2282
Замечания: 20%
Статус:
Quote (lord379)
А там же ещё Victim с интерьером 5. Он ведь не различит что я хотел Медд Дога. Я нашёл
[ тут ]
что интерьер 55

Code
if(GetPlayerInterior(playerid) == 5 && IsPlayerInRangeOfPoint(playerid, 50.0,  X, Y, Z)) return true; // Координаты мэд дога уже сам ищи
\




AstarionДата: Воскресенье, 15.01.2012, 14:42 | Сообщение # 11
Уверенный в себе
Группа: I'm V.I.P.
Сообщений: 173
Награды: 16
Город: Москва
Замечания: 40%
Статус:
Quote (Andrejs)
Andrejs

Ок, всё получилось.




ВеликсДата: Воскресенье, 15.01.2012, 17:25 | Сообщение # 12
Мастер джэдай
Группа: Модераторы
Сообщений: 3931
Награды: 287
Город: Мухосранск
Репутация: 8429
Замечания: 0%
Статус:
Закрыто.


[cut=freestyle]
ПРИНЕСЛА СОРОКА В РОТЕ ПРИВОРОТ ,
СВЯЗАЛАСЬ НА ШЕЕ ЛОЗА И БЫЛ ПОЛНЫЙ ПИ**ЕЦ,
ОСЕНЬ С ЗИМОЙ, ЛЕТО С ВЕСНОЙ,
ГУСЬ С ЛИСОЙ, ЕБ**ИСЬ ВО ТЬМЕ НОЧНОЙ.
УЗЕЛ ЗАВЯЗАЛСЯ, ПЕПЕЛ РАЗМЕТАЛСЯ И ЛИСА ЗАБЕРЕМЕНЕЛА.
ВМЕСТЕ ВЕК ВЕКОВАТЬ, ПУТУ НЕ РАЗВЯЗАТЬ.
ТРАВА ПЕРЕПЛЕТИСЬ, УЗЕЛ ЗАВОРОЖИСЬ.
ЛЕНАРУ ДАЙ УМА И ЛЕНУ
НА ВЕЛЕ НЕ ОТРАЗИСЬ,ЕБ*СЬ ЕБ*СЬ ЕБ*СЬ
© Хасан
[/cut]
  • Страница 1 из 1
  • 1
Поиск:





 


 


 
Хостинг от uCoz samp.at.ua