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

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

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

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

Захват бизнесов

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

Kentaro

Новичок
И так начнём
Ко всем forward'ам
PHP:
forward ISAMAFIA(playerid);
В bInfo
PHP:
bMafia,
Ко всем командам
PHP:
else if(strcmp(cmd, "/bizwar", true) == 0)
    {
    new factionm=0;
    if(Player[playerid][pLeader] !=0){ factionm = Player[playerid][pLeader];}
    else if(Player[playerid][pMember] != 0 && Player[playerid][pLeader] == 0) {factionm = Player[playerid][pMember];}
    else {factionm = 0;}
    if(ISAMAFIA(playerid))
    {
    if(startwar == 1) return SendClientMessage(playerid, COLOR_WHITE, "Война уже начата!");
    //if(FrakCDm[factionm] > 0) return SendClientMessage(playerid, COLOR_GRAD1, "Следующий захват возможен через пол часа...");
    for(new h = 0; h < sizeof(BiznesInfo); h++)
    {
    if(Player[playerid][pMember] == 5 && Player[playerid][pRank] >= 7 || Player[playerid][pMember] == 6 && Player[playerid][pRank] >= 7 || Player[playerid][pMember] == 14 && Player[playerid][pRank] >= 7)
    {
    if(PlayerToPoint(3, playerid,BiznesInfo[h][bEntranceX], BiznesInfo[h][bEntranceY], BiznesInfo[h][bEntranceZ]) && BiznesInfo[h][bMafia] != Player[playerid][pMember])
    {
    if(war > 0)
    {
    format(string,sizeof(string),"::: Войну можно начать через %d секунд(ы):::",war);
    SendClientMessage(playerid,-1,string);
    return 1;
    }
    if(BiznesInfo[h][bMafia] == 0)
    {
    BiznesInfo[h][bMafia] = Player[playerid][pMember];
    SendClientMessage(playerid, COLOR_WHITE, "::: Бизнес взят под контроль :::");
    return 1;
     }
    if(BiznesInfo[h][bMafia] > 0)
    {
    startwar = 1;
    format(string,sizeof(string),"::: Бизнес %s захватывает мафия %s :::",BiznesInfo[h][bMessage],GetMafiaName(Player[playerid][pMember]));
    SendTeamMessage(BiznesInfo[h][bMafia],COLOR_RED,string);
    SendTeamMessage(BiznesInfo[h][bMafia],COLOR_WHITE,"Место встречи - Заброшенный аэропорт");
    SendTeamMessage(BiznesInfo[h][bMafia],COLOR_WHITE,"У Вас есть 10 минуты, чтобы отбить бизнес...");
    BiznesInfo[h][bZahvat] = 1;
    war = 1200;
    MZSafeTime[0] = 600;
    FrakCDm[factionm]  = 1800;
    MZInfo[0][mNapad] = Player[playerid][pMember];
    ZoneTimerm[0] = 130;
    ZoneOnBattlem[0] = 1;
    zons = GangZoneCreate(328.755706, 2412.644531, 448.755706, 2564.644531);
    GangZoneShowForAll(zons, COLOR_RED);
    GangZoneFlashForAll(zons,COLOR_RED);
    }
    }
     }
     }
     }
    return 1;
}
else if(strcmp(cmd, "/bizlist", true) == 0)
    {
    SendClientMessage(playerid, COLOR_YELLOW2, "Завоёваные Бизнесы");
    for(new h = 0; h < sizeof(BiznesInfo); h++)
    {
    switch(Player[playerid][pMember])
    {
    case 6:
    {
                    format(string, sizeof(string), "");
                    if (BiznesInfo[h][bMafia] == 6) format(string, sizeof(string), "- %s",BiznesInfo[h][bMessage]);
                    if (strlen(string) > 1) SendClientMessage(playerid, COLOR_YELLOW2, string);
    }
    case 5:
    {
                    format(string, sizeof(string), "");
                    if (BiznesInfo[h][bMafia] == 5) format(string, sizeof(string), "- %s",BiznesInfo[h][bMessage]);
                    if (strlen(string) > 1) SendClientMessage(playerid, COLOR_YELLOW2, string);
    }
    case 14:
    {
                    format(string, sizeof(string), "");
                    if (BiznesInfo[h][bMafia] == 14) format(string, sizeof(string), "- %s",BiznesInfo[h][bMessage]);
                    if (strlen(string) > 1) SendClientMessage(playerid, COLOR_YELLOW2, string);
    }
    }
     }
    return 1;
    }
Теперь создаём Public'и
PHP:
public SecondTimer()
{
	new string[24];
	if(adlimit > 0) adlimit -=1;
	if(dmTime >= -1) dmTime -= 1;
    for(new f =0;f<3;f++)
    {
        if(MZSafeTime[f]>0)
        {
            MZSafeTime[f] --;
            if(MZSafeTime[f] == 200 || MZSafeTime[f] == 450)
            {
                format(string,sizeof(string),"::: У вас осталось %d секунд. Место встречи: Заброшенный аэропорт:::",MZSafeTime[f]);
                SendTeamMessage(MZInfo[f][mNapad],COLOR_RED,string);
                for(new h = 0; h < sizeof(BiznesInfo); h++)
                {
                if(BiznesInfo[h][bZahvat] == 1)
                {
                SendTeamMessage(BiznesInfo[h][bMafia],COLOR_RED,string);
                }
                }
            }
        }
    }
PHP:
forward MzCheck();
public MzCheck()
{
if(logs == 1)
{
 //printr("MzCheck");
 }
    for(new i =0;i<sizeof(MZInfo);i++)
    {
        if(ZoneOnBattlem[i] == 1 && MZSafeTime[i] == 0)
        {
            ZoneTimerm[i] -=10;
            if(ZoneTimerm[i] <=0)
            {
                for(new h = 0; h < sizeof(BiznesInfo); h++)
                {
                if(BiznesInfo[h][bZahvat] == 1)
                {
                BiznesInfo[h][bMafia] = BiznesInfo[h][bMafia];
                SendTeamMessage(BiznesInfo[h][bMafia],COLOR_GREEN,":: Вам удалось отстоять свой бизнес ::");
                BiznesInfo[h][bZahvat] = 0;
                }
                }
                SendTeamMessage(MZInfo[i][mNapad],COLOR_RED,":: Вам не удалось взять под контроль новый бизнес ::");
                startwar = 0;
                ZoneOnBattlem[i] =0;
                GangZoneStopFlashForAll(zons);
            }
            for(new x =0;x<MAX_PLAYERS;x++)
            {
                if(PlayerToKvadrat(x,328.755706, 2412.644531, 448.755706, 2564.644531))
                {
                    new factionm;
                    if(Player[x][pLeader] !=0) {factionm = Player[x][pLeader];}
                    else { factionm = Player[x][pMember];}
                    OnmZONE[i][factionm] ++;
                }
            }
            new asd;
            for(new x =0;x<20;x++)
            {
                if(OnmZONE[i][x] > 0 && IsInAllowedM(x)) asd ++;
            }
            if(asd == 1)
            {
                for(new x =0;x<20;x++)
                {
                    if(OnmZONE[i][x] > 0)
                    {
                        new zx,zl;
                        zx = x;
                        zl = i;
                        if(MZInfo[i][mFrakVlad] == x)
                        {
                         for(new h = 0; h < sizeof(BiznesInfo); h++)
                        {
                        if(BiznesInfo[h][bZahvat] == 1)
                        {
                        BiznesInfo[h][bMafia] = BiznesInfo[h][bMafia];
                        SendTeamMessage(BiznesInfo[h][bMafia],COLOR_RED,":: Вы отстояли свой бизнес ::");
                        BiznesInfo[h][bZahvat] = 0;
                        }
                        }
                        startwar = 0;
                        SendTeamMessage(MZInfo[i][mNapad],COLOR_RED,":: Вам не удалось завоевать ещё один бизнес ::");
                        }
                        else
                        {
                        startwar = 0;
                        SendTeamMessage(MZInfo[i][mNapad],COLOR_LIGHTGREEN,":: Вы завоевали новый бизнес ::");
                        for(new h = 0; h < sizeof(BiznesInfo); h++)
                        {
                        if(BiznesInfo[h][bZahvat] == 1)
                        {
                          SendTeamMessage(BiznesInfo[h][bMafia],COLOR_RED,":: Вы потеряли контроль над одним из своих бизнесов ::");
                        BiznesInfo[h][bMafia] = MZInfo[i][mNapad];
                        BiznesInfo[h][bZahvat] = 0;
                        }
                        }
                        }
                        ZoneOnBattlem[zl] =0;
                        MZInfo[zl][mFrakVlad] = 0;
                        MZInfo[zl][mFrakVlad] = zx;
                        GangZoneStopFlashForAll(zons);
                        GangZoneHideForAll(zons);
                        GangZoneShowForAll(zons,COLOR_LIGHTRED);
                        break;
                    }
                }
            }
        }
    }
    for(new i =0;i<3;i++)
    {
        for(new z = 0;z<20;z++)
        {
            OnmZONE[i][z] =0;
        }
    }
}
public ISAMAFIA(playerid)
{
    if(IsPlayerConnected(playerid))
    {
        new leader = Player[playerid][pLeader];
        new member = Player[playerid][pMember];
        if(member==5 || member==6 || member==15)
        {
            return 1;
        }
        if(leader==5|| leader==6 || leader==15)
        {
            return 1;
        }
    }
    return 0;
}
stock GetMafiaName(fnumbwer)
{
    new string[256];
    switch(fnumbwer)
    {
        case 6: format(string,sizeof(string),"Yakuza");
        case 14: format(string,sizeof(string),"Russian Mafia");
        case 5: format(string,sizeof(string),"LCN");
    }
    return string;
}
Вот и всё :D
Урок от Kentaro
Если есть ошибки , баги пишите в теме
 
Последнее редактирование:
Статус
В этой теме нельзя размещать новые ответы.
Сверху Снизу