Мне нужно сделать так, чтобы после смерти всех членов группы противника, у моей группы активировался новый вейпоинт.
Имя моей группы - "group_1", имя группы противника - "_blockgroup".
Best Answer Ibragim , 24 January 2021 - 08:11
Ошибка из-за команды private перед глобальной переменной. Private предназначена только для локальных.
0 spawn { private _truck = "rhsusf_M1078A1P2_WD_fmtv_usarmy" createVehicle ([4977.44,10878.4,0]); private _blockgroup = ["CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Medic_OEFCP", "CUP_B_US_Soldier_MG_OEFCP", "CUP_B_US_Soldier_ACOG_OEFCP", "CUP_B_US_Soldier_TL_OEFCP", "CUP_B_US_Soldier_GL_OEFCP"]; blockGroup = [[4974.74,10859.6,0], west, _blockgroup] call BIS_fnc_spawnGroup; private _leader = leader blockGroup; private _unitsCargo = units blockGroup - [_leader]; _leader moveInDriver _truck; {_x moveInCargo _truck} forEach _unitsCargo; blockGroup move [4881.97,11691.8,0]; waitUntil { sleep 1; (_truck distance [4881.97,11691.8,0]) < 10 }; { [_x] allowGetIn false; _x spawn { _this allowDamage false; waitUntil {isNull objectParent _this}; _this allowDamage true; }; _x action ["Eject", vehicle _x]; } forEach units blockGroup; private _wp = blockGroup addWaypoint [[4808.72,11783.7,0], 0]; _wp setWaypointType "SAD"; _wp setWaypointSpeed "FULL"; _wp setWaypointCombatMode "RED"; }; 0 spawn { private _truck2 = "rhsusf_M1078A1P2_WD_fmtv_usarmy" createVehicle ([4977.44,10878.4,0]); private _blockgroup2 = ["CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Medic_OEFCP", "CUP_B_US_Soldier_MG_OEFCP", "CUP_B_US_Soldier_ACOG_OEFCP", "CUP_B_US_Soldier_TL_OEFCP", "CUP_B_US_Soldier_GL_OEFCP"]; blockGroup2 = [[4974.74,10859.6,0], west, _blockgroup2] call BIS_fnc_spawnGroup; private _leader2 = leader blockGroup2; private _unitsCargo = units blockGroup2 - [_leader2]; _leader2 moveInDriver _truck2; {_x moveInCargo _truck2} forEach _unitsCargo; blockGroup2 move [4881.97,11691.8,0]; waitUntil { sleep 1; (_truck2 distance [4881.97,11691.8,0]) < 10 }; { [_x] allowGetIn false; _x spawn { _this allowDamage false; waitUntil {isNull objectParent _this}; _this allowDamage true; }; _x action ["Eject", vehicle _x]; } forEach units blockGroup2; private _wp = blockGroup2 addWaypoint [[4808.72,11783.7,0], 0]; _wp setWaypointType "SAD"; _wp setWaypointSpeed "FULL"; _wp setWaypointCombatMode "RED"; };Go to the full post
Posted 23 January 2021 - 19:09
Мне нужно сделать так, чтобы после смерти всех членов группы противника, у моей группы активировался новый вейпоинт.
Имя моей группы - "group_1", имя группы противника - "_blockgroup".
Posted 24 January 2021 - 01:15
Мне нужно сделать так, чтобы после смерти всех членов группы противника, у моей группы активировался новый вейпоинт.
Имя моей группы - "group_1", имя группы противника - "_blockgroup".
Если этот вэйпоинт заранее выставлен в редакторе, то:
1 - переименуй группу врага из локальной переменной в глобальную. Назови группу без "_".
2 - поставь триггер --> ПКМ на него --> Соединить --> Задать активацию точки --> соедини с предыдущим вэйпоинтом.
3 - в поле триггера Условие пропиши:
({alive _x} count (units blockgroup) == 0);
Edited by Ibragim, 24 January 2021 - 01:16.
Posted 24 January 2021 - 01:19
Мне нужно сделать так, чтобы после смерти всех членов группы противника, у моей группы активировался новый вейпоинт.
Имя моей группы - "group_1", имя группы противника - "_blockgroup".
Если этот вэйпоинт заранее выставлен в редакторе, то:
1 - переименуй группу врага из локальной переменной в глобальную. Назови группу без "_".
2 - поставь триггер --> ПКМ на него --> Соединить --> Задать активацию точки --> соедини с предыдущим вэйпоинтом.
3 - в поле триггера Условие пропиши:({alive _x} count (units blockgroup) == 0);
Проблема в том, что вейпоинты тоже заданы через скрипт. Так не получится.
Posted 24 January 2021 - 01:23
Мне нужно сделать так, чтобы после смерти всех членов группы противника, у моей группы активировался новый вейпоинт.
Имя моей группы - "group_1", имя группы противника - "_blockgroup".
Если этот вэйпоинт заранее выставлен в редакторе, то:
1 - переименуй группу врага из локальной переменной в глобальную. Назови группу без "_".
2 - поставь триггер --> ПКМ на него --> Соединить --> Задать активацию точки --> соедини с предыдущим вэйпоинтом.
3 - в поле триггера Условие пропиши:({alive _x} count (units blockgroup) == 0);Проблема в том, что вейпоинты тоже заданы через скрипт. Так не получится.
Тогда к предыдущему вэйпоинту добавь строку:
<имя вейпоинта> setWaypointStatements ["({alive _x} count (units blockgroup) == 0)", ""];
Posted 24 January 2021 - 01:58
Переименовал (убрал нижнее подчеркивание), дописал к вейпоинту, выдает ошибку.
Дико извиняюсь, нашел свою ошибку, я проставил кавычки в середине строки. Поставил их на нужное место, все работает. Большое спасибо за ответ.
Posted 24 January 2021 - 02:11
Мне нужно сделать так, чтобы после смерти всех членов группы противника, у моей группы активировался новый вейпоинт.
Имя моей группы - "group_1", имя группы противника - "_blockgroup".
Если этот вэйпоинт заранее выставлен в редакторе, то:
1 - переименуй группу врага из локальной переменной в глобальную. Назови группу без "_".
2 - поставь триггер --> ПКМ на него --> Соединить --> Задать активацию точки --> соедини с предыдущим вэйпоинтом.
3 - в поле триггера Условие пропиши:({alive _x} count (units blockgroup) == 0);Проблема в том, что вейпоинты тоже заданы через скрипт. Так не получится.
Тогда к предыдущему вэйпоинту добавь строку:
<имя вейпоинта> setWaypointStatements ["({alive _x} count (units blockgroup) == 0)", ""];
Все-таки выдает ошибку, но теперь уже в другом скрипте, который спаунит ботов.
Posted 24 January 2021 - 08:11 Best Answer
Ошибка из-за команды private перед глобальной переменной. Private предназначена только для локальных.
0 spawn { private _truck = "rhsusf_M1078A1P2_WD_fmtv_usarmy" createVehicle ([4977.44,10878.4,0]); private _blockgroup = ["CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Medic_OEFCP", "CUP_B_US_Soldier_MG_OEFCP", "CUP_B_US_Soldier_ACOG_OEFCP", "CUP_B_US_Soldier_TL_OEFCP", "CUP_B_US_Soldier_GL_OEFCP"]; blockGroup = [[4974.74,10859.6,0], west, _blockgroup] call BIS_fnc_spawnGroup; private _leader = leader blockGroup; private _unitsCargo = units blockGroup - [_leader]; _leader moveInDriver _truck; {_x moveInCargo _truck} forEach _unitsCargo; blockGroup move [4881.97,11691.8,0]; waitUntil { sleep 1; (_truck distance [4881.97,11691.8,0]) < 10 }; { [_x] allowGetIn false; _x spawn { _this allowDamage false; waitUntil {isNull objectParent _this}; _this allowDamage true; }; _x action ["Eject", vehicle _x]; } forEach units blockGroup; private _wp = blockGroup addWaypoint [[4808.72,11783.7,0], 0]; _wp setWaypointType "SAD"; _wp setWaypointSpeed "FULL"; _wp setWaypointCombatMode "RED"; }; 0 spawn { private _truck2 = "rhsusf_M1078A1P2_WD_fmtv_usarmy" createVehicle ([4977.44,10878.4,0]); private _blockgroup2 = ["CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Medic_OEFCP", "CUP_B_US_Soldier_MG_OEFCP", "CUP_B_US_Soldier_ACOG_OEFCP", "CUP_B_US_Soldier_TL_OEFCP", "CUP_B_US_Soldier_GL_OEFCP"]; blockGroup2 = [[4974.74,10859.6,0], west, _blockgroup2] call BIS_fnc_spawnGroup; private _leader2 = leader blockGroup2; private _unitsCargo = units blockGroup2 - [_leader2]; _leader2 moveInDriver _truck2; {_x moveInCargo _truck2} forEach _unitsCargo; blockGroup2 move [4881.97,11691.8,0]; waitUntil { sleep 1; (_truck2 distance [4881.97,11691.8,0]) < 10 }; { [_x] allowGetIn false; _x spawn { _this allowDamage false; waitUntil {isNull objectParent _this}; _this allowDamage true; }; _x action ["Eject", vehicle _x]; } forEach units blockGroup2; private _wp = blockGroup2 addWaypoint [[4808.72,11783.7,0], 0]; _wp setWaypointType "SAD"; _wp setWaypointSpeed "FULL"; _wp setWaypointCombatMode "RED"; };
Posted 24 January 2021 - 20:08
Ошибка из-за команды private перед глобальной переменной. Private предназначена только для локальных.
0 spawn { private _truck = "rhsusf_M1078A1P2_WD_fmtv_usarmy" createVehicle ([4977.44,10878.4,0]); private _blockgroup = ["CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Medic_OEFCP", "CUP_B_US_Soldier_MG_OEFCP", "CUP_B_US_Soldier_ACOG_OEFCP", "CUP_B_US_Soldier_TL_OEFCP", "CUP_B_US_Soldier_GL_OEFCP"]; blockGroup = [[4974.74,10859.6,0], west, _blockgroup] call BIS_fnc_spawnGroup; private _leader = leader blockGroup; private _unitsCargo = units blockGroup - [_leader]; _leader moveInDriver _truck; {_x moveInCargo _truck} forEach _unitsCargo; blockGroup move [4881.97,11691.8,0]; waitUntil { sleep 1; (_truck distance [4881.97,11691.8,0]) < 10 }; { [_x] allowGetIn false; _x spawn { _this allowDamage false; waitUntil {isNull objectParent _this}; _this allowDamage true; }; _x action ["Eject", vehicle _x]; } forEach units blockGroup; private _wp = blockGroup addWaypoint [[4808.72,11783.7,0], 0]; _wp setWaypointType "SAD"; _wp setWaypointSpeed "FULL"; _wp setWaypointCombatMode "RED"; }; 0 spawn { private _truck2 = "rhsusf_M1078A1P2_WD_fmtv_usarmy" createVehicle ([4977.44,10878.4,0]); private _blockgroup2 = ["CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Soldier_OEFCP", "CUP_B_US_Medic_OEFCP", "CUP_B_US_Soldier_MG_OEFCP", "CUP_B_US_Soldier_ACOG_OEFCP", "CUP_B_US_Soldier_TL_OEFCP", "CUP_B_US_Soldier_GL_OEFCP"]; blockGroup2 = [[4974.74,10859.6,0], west, _blockgroup2] call BIS_fnc_spawnGroup; private _leader2 = leader blockGroup2; private _unitsCargo = units blockGroup2 - [_leader2]; _leader2 moveInDriver _truck2; {_x moveInCargo _truck2} forEach _unitsCargo; blockGroup2 move [4881.97,11691.8,0]; waitUntil { sleep 1; (_truck2 distance [4881.97,11691.8,0]) < 10 }; { [_x] allowGetIn false; _x spawn { _this allowDamage false; waitUntil {isNull objectParent _this}; _this allowDamage true; }; _x action ["Eject", vehicle _x]; } forEach units blockGroup2; private _wp = blockGroup2 addWaypoint [[4808.72,11783.7,0], 0]; _wp setWaypointType "SAD"; _wp setWaypointSpeed "FULL"; _wp setWaypointCombatMode "RED"; };
Понял, спасибо, работает.