Перейти к содержанию
Авторизация  
Daniil_Gold

Анти ДМ зоны

Рекомендуемые сообщения

Daniil_Gold

Всем привет.

Мод:Online RP | CRMP (домик в деревяхе)

 

Я в этом моде не нашел Анти дм зоны,но туторов по ней я или не нашел или не так искал.

 

Прошу помочь мне.Как сделать анти дм зоны.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
EgasVegas

Ко всем дефайнам:

Code

#define KEY_AIM 128

 

 

Ищем:

Code

public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)

 

Туда Вставляем:

Code

if( (newkeys & KEY_FIRE) || ( (newkeys & KEY_AIM) && (oldkeys & KEY_AIM) && (newkeys & KEY_SECONDARY_ATTACK) ) )

{

if(PlayerToPoint(20.0,playerid,703.7961,-1479.8300,5.4688))//ЗАМЕНИТЬ НА СВОИ КООРДИНАТЫ.

{

SendClientMessage(playerid, 0xFFFFFFAA, "Не деритесь!");

TogglePlayerControllable(playerid, false);

SetTimerEx("UnfreezePlayer", 3000, false, "i", playerid);

}

return 1;

}

 

В конце мода создаем public:

Code

public UnfreezePlayer(playerid)

return TogglePlayerControllable(playerid, true)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Daniil_Gold

@EgasVegas,А радиус как определить? 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Predator

@Daniil_Gold,if(PlayerToPoint(20.0,playerid,703.7961,-1479.8300,5.4688))

  • Like 1

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Daniil_Gold

@Predator,Я это понял,а радиус как узнавать если например мне надо очень большой регион в анти дм поместить. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
EgasVegas

@Daniil_Gold,Ну значит меняй на большую цифру.

Думаю не сложно. 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Anteik

Ещё можно CreateDynamicRectangle , а потом использовать IsPlayerInDynamicArea

В этом способе можно сделать прямоугольник с заданными координатами

CreateDynamicRectangle-прямоугольник
CreateDynamicCircle-круг
CreateDynamicSphere-сфера

CreateDynamicCube-куб
Пример:
Ко всем new:

 

new GreenZone;

В OnGameModeInit:
 

GreenZone = CreateDynamicRectangle(Float:minx, Float:miny, Float:maxx, Float:maxy, worldid, interiorid, playerid); 

В OnPlayerKeyStateChange:


if( (newkeys & KEY_FIRE) || ( (newkeys & KEY_AIM) && (oldkeys & KEY_AIM) && (newkeys & KEY_SECONDARY_ATTACK) ) )
{
if(IsPlayerInDynamicArea(playerid, GreenZone))
{
SPD(playerid,1,DIALOG_STYLE_MSGBOX,"{DAA520}АнтиДМ Зона ","{A80000}Вы в АнтиДМ зоне!","Хорошо","");
ApplyAnimation(playerid,"MISC","plyr_shkhead",4.0,0,0,0,0,0,1);
}
}

 

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты
Гость
Эта тема закрыта для публикации ответов.
Авторизация  

  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

×

Важная информация

Мы разместили cookie-файлы на ваше устройство, чтобы помочь сделать этот сайт лучше. Вы можете изменить свои настройки cookie-файлов, или продолжить без изменения настроек.