Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- <br/>
- - Время на миссию - 1 час и 45 минут. По истечению времени скрипт считает количество контролируемых флагов. <br/>
- Побеждает сторона, контролирующая больше флагов, чем противник.<br/>
- - Если к концу миссии контролируется одинаковое кол-во флагов - ничья.<br/>
- - Если стороной контролируются все флаги на карте - победа присуждается ей сразу.<br/>
- - Если стороной контролируются все нейтральные флаги и штабной флаг - победа присуждается ей сразу.<br/>
- <br/>
- if (isServer) then {
- // массивы флагов: все флаги, нейтральные флаги, красные и синие флажки.
- all_flags = [flag_rus_1, flag_rus_2, flag_rus_3, flag_rus_4_hq, flag_us_1, flag_us_2, flag_us_3, flag_us_4_hq, flag_neut_1, flag_neut_2, flag_neut_3, flag_neut_4];
- neutral_flags = [flag_neut_1, flag_neut_2, flag_neut_3, flag_neut_4]; // флаги, а не ЗОНА
- russian_flags = [flag_rus_1, flag_rus_2, flag_rus_3, flag_rus_4_hq];
- us_flags = [flag_us_1, flag_us_2, flag_us_3, flag_us_4_hq];
- //присвоение флагам значения цивилиан, вест и еаст
- {_x setVariable ["controledBy", civilian, true];} forEach neutral_flags;
- {_x setVariable ["controledBy", west, true];} forEach us_flags;
- {_x setVariable ["controledBy", east, true];} forEach russian_flags;
- //проверка и завершение миссии через 105 минут
- [] spawn {
- waitUntil { sleep 3; a3a_var_started };
- sleep 105*60;
- private _countEast = {(_x getVariable 'controledBy' == east )} count all_flags;
- private _countWest = {(_x getVariable 'controledBy' == west )} count all_flags;
- if (_countEast == _countWest) then {["Ничья!"] call a3a_fnc_endMission;};
- if (_countEast >= _countWest) then {
- ["Победа ВДВ РФ!", east] call a3a_fnc_endMission;
- }
- else {
- ["Победа КМП США!", west] call a3a_fnc_endMission;
- }
- };
- // Параллельное условие победы - контроль синими трех нейтральных флагов и штабного флага. Срабатывает сразу по выполнению условий.
- [] spawn
- {
- if ((flag_rus_4_hq getvariable 'controledBy' == west) && (flag_neut_1 getvariable 'controledBy' == west) && (flag_neut_3 getvariable 'controledBy' == west) && (flag_neut_4 getvariable 'controledBy' == west)) then
- {
- ["Нейтральная полоса и штаб заняты синими!", west] call a3a_fnc_endMission;
- };
- };
- // Параллельное условие победы - контроль красными трех нейтральных флагов и штабного флага
- [] spawn
- {
- if ((flag_us_4_hq getvariable 'controledBy' == east) && (flag_us_1 getvariable 'controledBy' == east) && (flag_us_2 getvariable 'controledBy' == east) && (flag_us_3 getvariable 'controledBy' == east)) then
- {
- ["Нейтральная полоса и штаб заняты синими!", west] call a3a_fnc_endMission;
- };
- };
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement