By
Antoxa39
С возвращением меня в Pawn!
Сегодня я поведаю о не большом скрипте, через который мы создадим разрывные пули.
Нам потребуется паблик OnPlayerWeaponShot, его нет в шаблоне так что дописываем его в конец кода.
public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
{
}
В начале мода создаем переменную n
new bool:bullet[MAX_PLAYERS]; // bullet - пуля. MAX_PLAYERS нужен для того, чтобы у каждого игрока была своя пуля.
public OnPlayerConnect(playerid)
{
bullet[playerid] = false;
return 1;
}
При заходе игрока отключаем ему переменную.
Для включения переменной будем использовать команду
CMD:exp(playerid)
{
if(bullet[playerid] == false){ bullet[playerid] = true; SendClientMessage(playerid,-1,"Вы зарядили разрывные пули"); } // если переменная выключена то включаем ее и выводим игроку сообщение
else { bullet[playerid] = false; SendClientMessage(playerid,-1,"Вы разрядили разрывные пули"); } // если переменная включена то выключаем её и выводим об этом сообщение
}
Нам нужно так же выдать оружие игроку
CMD:giveweapon(playerid,gun[])
{
if(sscanf(gun,"ii",gun[0],gun[1])) return SendClientMessage(playerid,-1,"/giveweapon playerid weaponID");
GivePlayerWeapon(gun[0],gun[1],1000*1000);
return 1;
}
Вместо этого можно просто выдать оружие при заходе игрока в паблике OnPlayerConnect.
И завершающий шаг:
public OnPlayerWeaponShot(playerid, weaponid, hittype, hitid, Float:fX, Float:fY, Float:fZ)
{
if(bullet[playerid] == true) CreateExplosion(fX,fY,fZ,2,1.0); // проверяем включена ли переменная, если да, то при выстреле на месте попадания образуется взрыв
return 1;
}
Вот и все