Доступ к готовым решениям

Переход в группу "Пользователь"

300.00 ₽
Одноразовый платёж
Быстрый переход в группу "Пользователи", без надобности написания постов и ожидания.

Покупка дает возможность:
Быть полноправным участником форума
Нормальное копирование кода
Создавать темы
Скачивать файлы
Доступ к архиву Pawno-Info

Мануал Система ракет для армий[ Поражение цели ракетой ][DC_CMD]

Статус
В этой теме нельзя размещать новые ответы.

anbag13

Ученик
Выкладываю на общее обозрение систему ракет для армии. Система на DC_CMD. Переменные измените под свой мод. Перевёл на DC_CMD сам, так-же сделаны проверки на нахождение в армии.​

Ко всем new
PHP:
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;
OnGameModeInit:
PHP:
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);
в public OnGameModeExit
PHP:
DestroyObject(Nuc);
    DestroyObject(Nuc2);
    DestroyObject(GenDor);
    for(new i; i < MAX_PLAYERS; i++)RemovePlayerMapIcon(i,15);
в public OnPlayerConnect
PHP:
Ex[playerid] = 0;
Команды(Z_CMD)
PHP:
CMD:expos(playerid, params[])
	{
        if (pInfo[playerid][pMember] == 1)
		{
		if(F != 0)return SendClientMessage(playerid,0x808080FF,"[X] Ракеты уже в пути!");
		Ex[playerid] = 1;
		SendClientMessage(playerid,0x9ACD32FF,"[X] Задайте коордионаты для авиаудара");
		return 1;
		}
		else if (pInfo[playerid][pMember] == 0) return SendClientMessage(playerid,0x9ACD32FF,"[X] %s, вы не военно-служающий");
		return 1;
}
CMD:startnuc(playerid, params[])
{
        if (pInfo[playerid][pMember] == 1)
		{
		if(F != 0)return SendClientMessage(playerid,0x808080FF,"В данный момент нельзя");
		if(!PosOk)return SendClientMessage(playerid,0x808080FF,"Не заданы коордионаты (/expos) (/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;
		}
		else if (pInfo[playerid][pMember] == 0) return SendClientMessage(playerid,0x9ACD32FF,"%s, вы не военно-служающий");
		return 1;
}
в public OnPlayerClickMap(playerid, Float:fX, Float:fY, Float:fZ)
PHP:
{
   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;
}
В конец мода
PHP:
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;
}
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу