Добро пожаловать!

Зарегистрировавшись у нас, вы сможете обсуждать, делиться и отправлять личные сообщения другим участникам нашего сообщества.

Зарегистрироваться!
  • Если Вы желаете помогать развитию проекта, готовы заполнять раздел(-ы) и подсказывать другим пользователям на портале, есть возможность попасть в команду редакторов. Для этого следует обратиться в техническую поддержку
Пользователь
Регистрация
5 Июл 2024
Сообщения
71
Всем привет, в моем моде(основа мод верензон слитый белым) есть система битвы за нефтевышки и битвы за притон, мне нужна команда которая будет стартить одно из мероприятий /startbattles
Pawn:
stock StartBattles(type)
{
    foreach(Player, i)
    {
        if IsAtGang(i) or IsAtMafia(i) *then
        {
            for new j; j < sizeof gangs_Id; j ++ do
            {
                if PI[i][pMember] == gangs_Id[j] *then
                    if(GetPlayerGangZone(i) == 66 or GetPlayerGangZone(i) == 291)
                        OrgBattlesCountMember[gangs_Id[j]]++;
            }

            ShowBattlesTD(i);
            SCMF(i, COLOR_OLDRED, "[Битва за %s] Внимание! Началась битва за %s! Отправляйтесь на территорию %s.", type == 1 ? "притон" : "нефтевышки", type == 1 ? "притон" : "нефтевышки", type == 1 ? "притона" : "наземных нефтевышек");
            SCMF(i, COLOR_OLDRED, "[Битва за %s] У вас есть 5 минут, чтобы добраться до %s.", type == 1 ? "притон" : "нефтевышки", type == 1 ? "притона" : "наземных нефтевышек");
            OrgBattlesTimer[0] = 1;
            OrgBattlesTimer[1] = OrgBattlesTimer[2] = 0;
            UpdateBattlesTD(i, true);
            GangZoneFlashForAll(GangZone[type == 1 ? 66 : 291], 0xFF0000FF);
            OrgBattlesState = type;
            OrgBattlesTimeKick = 300;
            CheckNeactiveOrgBattles = true;
        }
    }
    return 1;
}
/stopbattles
Pawn:
stock StopBattles()
{
    CheckBattlesWinner();

    GangZoneInfo[OrgBattlesState == 1 ? 66 : 291][gangOwnerId] = OrgBattlesWinner;
    UpdateBattlesText(OrgBattlesState);
    SaveGangZone(OrgBattlesState == 1 ? 66 : 291);

    GangZoneStopFlashForAll(GangZone[OrgBattlesState == 1 ? 66 : 291]);
    GangZoneHideForAll(GangZone[OrgBattlesState == 1 ? 66 : 291]);
    GangZoneShowForAll(GangZone[OrgBattlesState == 1 ? 66 : 291], TeamColors[OrgBattlesWinner][0]);

    for new i; i < sizeof gangs_Id; i++ do
        OrgBattlesCountMember[gangs_Id[i]] = OrgBattlesGangKicked[gangs_Id[i]] = false;

    foreach(Player, i)
    {
        HideBattlesTD(i);

        if OrgBattlesWinner > 1 *then
        {
            SCMF(i, COLOR_YELLOW, "[A] Банда %s выйграла битву за %s.", OrgInfo[OrgBattlesWinner][oName], OrgBattlesState == 1 ? "притон" : "нефтевышки");

            if IsAtGang(i) or IsAtMafia(i) *then
                SCMF(i, COLOR_OLDRED, "[Битва за %s] Внимание! Битва за %s окончена. Победила банда %s.", OrgBattlesState == 1 ? "притон" : "нефтевышки", OrgBattlesState == 1 ? "притон" : "нефтевышки", OrgInfo[OrgBattlesWinner][oName]);

            //SendTeamMessage(OrgBattlesWinner, COLOR_OLDRED, "[Битва за притон] Ваша банда победила в битве за притон и будет получать X3 получение часов в /mbonus каждый PayDay.");
        }
    }

    return OrgBattlesState = false;
}
 
Пользователь
Регистрация
5 Июл 2024
Сообщения
9
Пользователь
Регистрация
5 Июл 2024
Сообщения
71
Активный
Пользователь
Регистрация
2 Дек 2023
Сообщения
120
ну вот у меня строка в публике
Pawn:
        if !OrgBattlesTimer[2] *then OrgBattlesTimer[1]--, OrgBattlesTimer[2] = 60;
я хочу что бы я мог сам указать время сколько будет идти притон/вышки
весь код не можешь приложить?
 
Пользователь
Регистрация
5 Июл 2024
Сообщения
71
Pawn:
    if OrgBattlesState *then
    {
        if !OrgBattlesTimer[0] && !OrgBattlesTimer[1] && !OrgBattlesTimer[2] *then StopBattles();

        if !OrgBattlesTimer[1] && OrgBattlesTimer[0] *then
            OrgBattlesTimer[0] --, OrgBattlesTimer[1] = 59;

        if !OrgBattlesTimer[2] *then OrgBattlesTimer[1]--, OrgBattlesTimer[2] = 60;

        OrgBattlesTimer[2]--;

        foreach(Player, i)
        {
            if IsAtGang(i) or IsAtMafia(i) *then
            {
                if !OrgBattlesGangKicked[PI[i][pMember]] *then
                    UpdateBattlesTD(i);
            }
            else if !IsAtGang(i) or !IsAtMafia(i) or OrgBattlesGangKicked[PI[i][pMember]] *then
                if OrgBattlesTDOpen{i} *then
                    HideBattlesTD(i);
        }

        if OrgBattlesTimeKick *then OrgBattlesTimeKick--;

        if !OrgBattlesTimeKick && CheckNeactiveOrgBattles *then SetTimer("KickNeactiveGang", 1000, false);
    }
 
Активный
Пользователь
Регистрация
2 Дек 2023
Сообщения
120
OrgBattlesTimer[0] --, OrgBattlesTimer[1] = 59;
if !OrgBattlesTimer[2] *then OrgBattlesTimer[1]--, OrgBattlesTimer[2] = 60;
Точно не могу сказать, но предполагаю то что "60" и "59" это то время, сколько будет идти мероприятие
 
Пользователь
Регистрация
5 Июл 2024
Сообщения
71
Точно не могу сказать, но предполагаю то что "60" и "59" это то время, сколько будет идти мероприятие
это я понял, я хочу указывать время которое будет идти притон/вышки в команде
 
Активный
Пользователь
Регистрация
2 Дек 2023
Сообщения
120
Пользователь
Регистрация
5 Июл 2024
Сообщения
71
Сверху