Daniil_Gold 83 Опубликовано 22 июля, 2016 Всем привет. Мод:Online RP | CRMP (домик в деревяхе) Я в этом моде не нашел Анти дм зоны,но туторов по ней я или не нашел или не так искал. Прошу помочь мне.Как сделать анти дм зоны. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
EgasVegas 842 Опубликовано 22 июля, 2016 Ко всем дефайнам: 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 83 Опубликовано 22 июля, 2016 @EgasVegas,А радиус как определить? Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Predator 428 Опубликовано 22 июля, 2016 @Daniil_Gold,if(PlayerToPoint(20.0,playerid,703.7961,-1479.8300,5.4688)) 1 Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Daniil_Gold 83 Опубликовано 22 июля, 2016 @Predator,Я это понял,а радиус как узнавать если например мне надо очень большой регион в анти дм поместить. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
EgasVegas 842 Опубликовано 22 июля, 2016 @Daniil_Gold,Ну значит меняй на большую цифру. Думаю не сложно. Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты
Anteik 0 Опубликовано 22 июля, 2016 Ещё можно 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); } } Поделиться сообщением Ссылка на сообщение Поделиться на другие сайты