1) В начало мода ко всем new добавляем
Code
new slak1;
new slak2;
2) Ко всем forward добавляем
3) После какого-нибудь public`а добавляем
Code
public SlakClose()
{
DestroyObject( slak2 );
slak1 = CreateObject(968,координаты закрытого шлагбаума);
return 1;
}
4) Далее нужно создать сами сам шлагбаум. В public OnGameModeInit() добавляем
Code
slak1 = CreateObject(968, координаты закрытой планки шлагбаума);
CreateObject(966, координаты основания шлагбаума);
5) Теперь создаём саму команду, при вводе которой откроется шлагбаум. Ищем public OnPlayerCommandText и ниже добавляем
Code
if(!strcmp(cmdtext, "/slakopen", true)) // Сама команда (можно изменить на любую другую)
{
if(PlayerInfo[playerid][pLeader] == порядковый номер фракции || PlayerInfo[playerid][pMember] == порядковый номер фракции)
{
if (IsPlayerInRangeOfPoint(playerid,15.0, координаты, откуда игрок сможет открыть шлагбаум))
{
DestroyObject( slak1 );
slak2 = CreateObject(968,координаты открытого шлагбаума);
SetTimer("SlakClose", 12000, 0); // 12000 - это время, через которое он закроется
SendClientMessage(playerid, COLOR_BLUE,"Вы открыли шлагбаум");
GetPlayerName(playerid, sendername, sizeof(sendername));
format(string, sizeof(string), "* %s открыл шлагбаум", sendername);
ProxDetector(30.0, playerid, string, COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE,COLOR_PURPLE);
}
else { SendClientMessage(playerid, COLOR_GREY,"Вы слишком далеко"); }
}
else return SendClientMessage(playerid, COLOR_GREY,"Вы не можете открыть этот шлагбаум");
return 1;
}