Думаю, хороший урок для РП серверов.
Итак, вариант №1. Чтобы вообще нельзя было драться нигде.
Ко всем дефайнам:
Ко всем форвардам:
Код
forward UnfreezePlayer(playerid);
Далее вставляем в:
Код
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
Вот это:
Код
[b]if( (newkeys & KEY_FIRE) || ( (newkeys & KEY_AIM) && (oldkeys & KEY_AIM) && (newkeys & KEY_SECONDARY_ATTACK) ) )
{
SendClientMessage(playerid, 0xFFFFFFAA, "Не деритесь!");
TogglePlayerControllable(playerid, false);
SetTimerEx("UnfreezePlayer", 3000, false, "i", playerid);
return 1;
}
return 1;
}
В конце мода создаем public:
Код
public UnfreezePlayer(playerid)
return TogglePlayerControllable(playerid, true);
Вариант №2. В определенной зоне запрещаем ДМ.
Ко всем дефайнам:
Ко всем форвардам:
Код
forward UnfreezePlayer(playerid);
Далее вставляем в:
Код
public OnPlayerKeyStateChange(playerid, newkeys, oldkeys)
Вот это:
Код
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:
Код
public UnfreezePlayer(playerid)
return TogglePlayerControllable(playerid, true);