Вопросы

Nikita_Scamare
Новичок

в общем то, сначала была проблема в счете киллов. в итоге с ней разобрались, но, появилась новая: проверка киллов для поиска победителя. в чем, собственно, заключается проблема? в том, что по окончанию мп победитель не находится. (сток StopMPn указан ниже). помогите пожалуйста в чем проблема


 

...
new Winner;
...
stock StopMPn()
{
        MPnState = false;

        CheckWin();

        new lastgang = GZInfo[66][gzFracID];
        GZInfo[66][gzFracID] = Winner;

        UpdateDorm(Winner);
        UpdateDorm(lastgang);

        SaveGangZone(66);

        GangZoneStopFlashForAll(GangZone[66]);
        GangZoneHideForAll(GangZone[66]);
        GangZoneShowForAll(GangZone[66],TeamColors[Winner]);

        static const
            gang_Id[] = {111213141525};

        for new i; i < sizeof gang_Id; i ++ do
                PGKicked[gang_Id[i]]  = false;

        for new s; s < 6; s++ do
                CountGang[s] = 0;

    if Winner > 1 *then
    {
                SAMF(COLOR_YELLOW, "[A] Банда %s выиграла мп.", OrgInfo[Winner][oName]);

                RewardGive();

                foreach(Player, i)
                    if IsAtGang(i) *then
                                        HidePritonTD(i);
        }

        SetTimer("DZisone"500false);

        return 1;
}

stock CheckWin()
{
        static const
            gang_Id[] = {111213141525};

        for new i; i < sizeof gang_Id; i ++ do
                if PK[gang_Id[i]] >= PK[11] && PK[12] && PK[11] > PK[13] && PK[11] > PK[14] && PK[11] > PK[15] && PK[11] > PK[25] *then
                Winner = gang_Id[i];

        SetTimer("UnloadKills"2500false);
        return 1;
}

 

Поделиться сообщением


Ссылка на сообщение

1 ответ на этот вопрос

  • 0
Sleash
Завсегдатый
stock CheckWin()
{
    static const
        gang_Id[] = {111213141525};

    Winner = gang_Id[0];
    for(new i = 1; i < sizeof(gang_Id); i++) {
        if(KP[gang_Id[i]] > KP[Winner]) Winner = gang_Id[i]
    }

    SetTimer("UnloadKills"2500false);
    return true;
}

Как я понимаю в МП участвуют сразу несколько группировок, поэтому советую пересмотреть код и добавить событие на ничью.

Поделиться сообщением


Ссылка на сообщение
Гость
Эта тема закрыта для публикации ответов.
  • Последние посетители   0 пользователей онлайн

    Ни одного зарегистрированного пользователя не просматривает данную страницу

  • Похожий контент

    • Владислав Малиновский
      От Владислав Малиновский
      SWEEK RUSSIA — онлайн игра на телефон с открытым миром, в котором Вы можете создать персонажей вместе со своими друзьями и начать весело проводить время. Вы можете продвигаться по сюжету квестовых миссий или же начать игру с зарабатывания денег в транспортной компании. Создавать организации, подниматься по карьерной лестнице. Заполучив влияние над другими игроками - попробуй себя в роли Президента.
       
      Нам нужны ответственные люди на должность главного администратора. Если вы считаете себя адекватным и ответственным, отпишите в vk.com/devmaksim или t.me/raphmarci.
       
      Официальный сайт проекта - sweekrussia.ru
      Официальный форум проекта - forum.sweekrussia.ru
      Официальное сообщество VK - vk.com/sweekrussia.game
      Официальный TG канал - t.me/sweek_dev
    • bogdan295@gmai
      От bogdan295@gmai
      Здраствуйте, я создавал новую организации когда дело дашло до пикапов они не создаются 
      new lssd1; new lssd2;  else if(pickupid == lssd2)// Вход     {         SetPlayerInteriorEx(playerid,0);         SetPPos(playerid,1567.5510,-1657.9956,5.3859);         SetPlayerFacingAngle(playerid, 500);         return true;     } else if(pickupid == lssd1)// Вsход     {         SetPlayerInteriorEx(playerid,0);         SetPPos(playerid,630.0542,-572.0032,16.3359);         SetPlayerFacingAngle(playerid, 500);         return true;     }     lssd2 = CreatePickupAC(1318,1,626.9653,-571.8394,17.9207, 147); // вход лссд     lssd1 = CreatePickupAC(1318,1,1567.4720,-1660.6494,5.3859, 147); // выход лссд Что я сделал не так?