Доступ к архиву

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

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

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

Установка дорожных шипов

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

SaineD

Компетентный
Итак Вот очень простой урок по созданию шипов (для ДПС и FBI)

В начало мода вставляем вот это
Код:
//------------------------------------------------------------------------------ 
#define MAX_SPIKESTRIPS 30 
//для шипов 
enum sInfo 
{ 
    sCreated, 
    Float:sX, 
    Float:sY, 
    Float:sZ, 
    sObject, 
}; 
new SpikeInfo[MAX_SPIKESTRIPS][sInfo]; 
//------------------------------------------------------------------------------
Ко всем командам добавляем вот это
Код:
if(strcmp(cmd, "/ship", true) == 0 || strcmp(cmd, "/shp", true) == 0) 
    { 
        if (PlayerInfo[playerid][pMember] != 2 && PlayerInfo[playerid][pLeader] != 2&&PlayerInfo[playerid][pMember] != 1 && PlayerInfo[playerid][pLeader] !=1) return SendClientMessage(playerid, COLOR_GREY, " Вы не состоите в рядах ДПС либо FBI"); 
        new Float:plocx,Float:plocy,Float:plocz,Float:ploca; 
        GetPlayerPos(playerid, plocx, plocy, plocz); 
        GetPlayerFacingAngle(playerid,ploca); 
        CreateStrip(plocx,plocy,plocz,ploca); 
        GameTextForPlayer(playerid, "Дорожные шипы установлены", 5000, 5); 
        SendClientMessage(playerid, COLOR_GREEN, "Дорожные шипы установлены. Используйте (/dstr) чтобы убрать Дорожные шипы. "); 
        return 1; 
    }
Код:
if(strcmp(cmd, "/destroyallship", true) == 0 || strcmp(cmd, "/dstrall", true) == 0) 
    { 
    if (PlayerInfo[playerid][pAdmin] == 5 &&PlayerInfo[playerid][pAdmin] == 10 && PlayerInfo[playerid][pAdmin] == 9 && PlayerInfo[playerid][pAdmin] == 6 && PlayerInfo[playerid][pAdmin] == 7 && PlayerInfo[playerid][pLeader] != 1) 
        { 
        SendClientMessage(playerid, COLOR_GREY, " Вы не  Администратор либо не лидер ДПС "); 
         } 
            DeleteAllStrip(); 
            return 1; 
    }
Код:
if(strcmp(cmd, "/destroyship", true) == 0 || strcmp(cmd, "/dstr", true) == 0) 
    { 
     if (PlayerInfo[playerid][pMember] != 1 && PlayerInfo[playerid][pLeader] != 1) 
        { 
            SendClientMessage(playerid, COLOR_GREY, " Вы не  состоите в рядах ДПС"); 
            return 1; 
        } 
        if (PlayerInfo[playerid][pRank] < 5) 
        { 
            SendClientMessage(playerid, COLOR_GREY, " Вам нужен ранг слишком мал для этой команды"); 
            return 1; 
        } 
        if (PlayerInfo[playerid][pRadar] == 0) 
        { 
            SendClientMessage(playerid, COLOR_GREY, " Дорожных шипов не найдено "); 
            return 1; 
        } 
        DeleteClosestStrip(playerid); 
        SendClientMessage(playerid, COLOR_GREEN, "  Дорожныt шипы убраны.. "); 
        return 1; 
    }
В конец мода суем вот это :
Код:
//----------------------------------для шипов 
stock CreateStrip(Float:x,Float:y,Float:z,Float:Angle) 
{ 
    for(new i = 0; i < sizeof(SpikeInfo); i++) 
      { 
          if(SpikeInfo[i][sCreated] == 0) 
          { 
            SpikeInfo[i][sCreated]=1; 
            SpikeInfo[i][sX]=x; 
            SpikeInfo[i][sY]=y; 
            SpikeInfo[i][sZ]=z-0.7; 
            SpikeInfo[i][sObject] = CreateObject(2899, x, y, z-0.9, 0, 0, Angle-90); 
            return 1; 
          } 
      } 
      return 0; 
} 

stock DeleteAllStrip() 
{ 
    for(new i = 0; i < sizeof(SpikeInfo); i++) 
      { 
          if(SpikeInfo[i][sCreated] == 1) 
          { 
              SpikeInfo[i][sCreated]=0; 
            SpikeInfo[i][sX]=0.0; 
            SpikeInfo[i][sY]=0.0; 
            SpikeInfo[i][sZ]=0.0; 
            DestroyObject(SpikeInfo[i][sObject]); 
          } 
    } 
    return 0; 
} 

stock DeleteClosestStrip(playerid) 
{ 
    for(new i = 0; i < sizeof(SpikeInfo); i++) 
      { 
          if(IsPlayerInRangeOfPoint(playerid, 2.0, SpikeInfo[i][sX], SpikeInfo[i][sY], SpikeInfo[i][sZ])) 
        { 
              if(SpikeInfo[i][sCreated] == 1) 
            { 
                SpikeInfo[i][sCreated]=0; 
                SpikeInfo[i][sX]=0.0; 
                SpikeInfo[i][sY]=0.0; 
                SpikeInfo[i][sZ]=0.0; 
                DestroyObject(SpikeInfo[i][sObject]); 
                return 1; 
              } 
          } 
      } 
    return 0; 
}
Вот и всё ! На этом урок окончен
 
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу