Taxin2012
Новичок
Как поставить на команды фильтерскрипта админ доступ?
Вот сам фильтрскрипт:
Вот сам фильтрскрипт:
PHP:
#include <a_samp>
//Обновлено 28 февраля 2012
new F;//фаза ракеты
new GenDor;//дверка люка
new Nuc;//ракета 1
new Nuc2;//ракета 2
new Gen;//ид для таймера
new Ex[MAX_PLAYERS];
new Float: ex[3];
new bool: PosOk = false;
new Bang;
public OnFilterScriptInit()
{
GenDor = CreateObject(3095,268.64181518555,1884.2023925781,16.048055648804,0,0,0);
Nuc = CreateObject(3790,267.12322998047,1885.4362792969,-28.058870315552,0,90,0);
Nuc2 = CreateObject(3790,270.89688110352,1884.4702148438,-28.058870315552,0,90,0);
return 1;
}
public OnFilterScriptExit()
{
DestroyObject(Nuc);
DestroyObject(Nuc2);
DestroyObject(GenDor);
for(new i; i < MAX_PLAYERS; i++)RemovePlayerMapIcon(i,15);
return 1;
}
public OnPlayerConnect(playerid)
{
Ex[playerid] = 0;
return 1;
}
public OnPlayerCommandText(playerid, cmdtext[])
{
if (strcmp("/expos", cmdtext, true, 10) == 0)
{
if(F != 0)return SendClientMessage(playerid,0x808080FF,"Ракеты уже в пути");
Ex[playerid] = 1;
SendClientMessage(playerid,0x9ACD32FF,"Задайте кординаты удара, поставив красный маркер на карте");
return 1;
}
if (strcmp("/startnuc", cmdtext, true, 10) == 0)
{
if(F != 0)return SendClientMessage(playerid,0x808080FF,"Ракеты перезаправляются");
if(!PosOk)return SendClientMessage(playerid,0x808080FF,"Не заданы кординаты (/expos)");
MoveObject(GenDor,268.64181518555,1893.2023925781,16.048055648804,1,0,0,0);
F = 1;
PosOk = false;
Gen = SetTimer("General",4000,0);
//270.89688110352,1884.4702148438,-28.058870315552,0,90,0
return 1;
}
return 0;
}
public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
{
if(Ex[playerid] == 1)
{
Ex[playerid] = 0;
ex[0] = fX;
PosOk = true;
ex[1] = fY;
ex[2] = fZ;
SendClientMessage(playerid,0x9ACD32FF,"Кординаты заданы. Для запуска ракеты введите /startnuc");
SetPlayerMapIcon(playerid,15,fX,fY,fZ,23,0,MAPICON_GLOBAL);
}
return 1;
}
forward General();
public General()
{
if(F == 1)
{
KillTimer(Gen);
F = 2;
MoveObject(Nuc,267.12322998047,1885.4362792969,600,20,0,90,0);
Gen = SetTimer("General",2000,0);
SendClientMessageToAll(0xFF0000FF,"Обнаружен запуск крылатой ракеты!");
}
else if(F == 2)
{
KillTimer(Gen);
F = 3;
MoveObject(Nuc,267.12322998047,1885.4362792969,600,30,0,90,0);
MoveObject(Nuc2,270.89688110352,1884.4702148438,600,20,0,90,0);
Gen = SetTimer("General",2000,0);
SendClientMessageToAll(0xFF0000FF,"Обнаружен запуск крылатой ракеты!");
}
else if(F == 3)
{
KillTimer(Gen);
F = 4;
MoveObject(Nuc2,270.89688110352,1884.4702148438,600,30,0,90,0);
Gen = SetTimer("General",2000,0);
}
else if(F == 4)
{
KillTimer(Gen);
F = 5;
MoveObject(GenDor,268.64181518555,1884.2023925781,16.048055648804,1,0,0,0);
Gen = SetTimer("General",7000,0);
}
else if(F == 5)
{
DestroyObject(Nuc);
DestroyObject(Nuc2);
KillTimer(Gen);
F = 6;
Gen = SetTimer("General",2000,0);
}
else if(F == 6)
{
F = 7;
Nuc = CreateObject(3790,ex[0]+6,ex[1],ex[2] + 700,0,270,0);
Nuc2 = CreateObject(3790,ex[0],ex[1]+6,ex[2] + 700,0,270,0);
MoveObject(Nuc,ex[0]+6,ex[1],ex[2],70,0,270,0);
MoveObject(Nuc2,ex[0],ex[1]+6,ex[2],60,0,270,0);
Gen = SetTimer("General",500,1);
}
else if(F == 7)
{
new Float: n1[3];
GetObjectPos(Nuc,n1[0],n1[1],n1[2]);
new Float: n2[3];
GetObjectPos(Nuc2,n2[0],n2[1],n2[2]);
if(n1[2] <= ex[2] && Bang == 0)
{
Bang = 1;
SendClientMessageToAll(0x008000FF,"Был нанесен ракетный удар!");
for(new i; i < MAX_PLAYERS; i++)SetPlayerMapIcon(i,16,ex[0],ex[1],ex[2],19,0,MAPICON_GLOBAL);
CreateExplosion(ex[0]+6,ex[1],ex[2],6,90.0);
CreateExplosion(ex[0],ex[1]+6,ex[2],2,90.0);
CreateExplosion(ex[0]+2,ex[1]+12,ex[2],6,90.0);
CreateExplosion(ex[0]+5,ex[1]+5,ex[2],6,90.0);
CreateExplosion(ex[0]+3,ex[1]+6,ex[2],6,90.0);
CreateExplosion(ex[0]+9,ex[1]+4,ex[2],2,90.0);
CreateExplosion(ex[0]+12,ex[1]+7,ex[2],6,90.0);
CreateExplosion(ex[0]+1,ex[1]+2,ex[2],6,90.0);
DestroyObject(Nuc);
}
if(n2[2] <= ex[2])
{
for(new i; i < MAX_PLAYERS; i++)RemovePlayerMapIcon(i,15);
CreateExplosion(ex[0],ex[1]-6,ex[2],6,90.0);
CreateExplosion(ex[0],ex[1]-6,ex[2],2,90.0);
CreateExplosion(ex[0]-12,ex[1]-2,ex[2],6,90.0);
CreateExplosion(ex[0]-6,ex[1]-3,ex[2],2,90.0);
CreateExplosion(ex[0]-5,ex[1]-5,ex[2],6,90.0);
DestroyObject(Nuc2);
KillTimer(Gen);
Nuc = CreateObject(3790,267.12322998047,1885.4362792969,-28.058870315552,0,90,0);
Nuc2 = CreateObject(3790,270.89688110352,1884.4702148438,-28.058870315552,0,90,0);
F = 8;
Gen = SetTimer("General",8000,1);
Bang = 0;
}
}
else if( F == 8)
{
KillTimer(Gen);
F = 0;
for(new i; i < MAX_PLAYERS; i++)RemovePlayerMapIcon(i,16);
}
return 1;
}
