diag_log "HOGS_AI STARTING!";
HOGS_AI=[];
_missionsArray = [1,2,3,4];
_prizesArray = [1,2];
_prizesArray1 = [1,2,3,4];
_vehicles = ["C_Quadbike_01_EPOCH","C_Hatchback_01_EPOCH","C_Hatchback_02_EPOCH","C_SUV_01_EPOCH","C_Van_01_box_EPOCH","C_Van_01_transport_EPOCH","B_Heli_Light_01_EPOCH","B_SDV_01_EPOCH","B_MRAP_01_EPOCH","B_Truck_01_transport_EPOCH","B_Truck_01_covered_EPOCH","B_Truck_01_mover_EPOCH","B_Truck_01_box_EPOCH","O_Truck_02_covered_EPOCH","O_Truck_02_transport_EPOCH","O_Truck_03_covered_F","O_Truck_02_box_EPOCH","C_Offroad_01_EPOCH","ebike_epoch"];
_pickveh = (_vehicles call BIS_fnc_selectRandom);
sleep 1;
Bounce_Mission=false;
AI_Timer1={HAI_TIMER=time;waitUntil{(time-HAI_TIMER)>1800};Bounce_Mission=true;};
_loop_timer_01=[] spawn AI_Timer1;
while{true}do{
_missions = count _missionsArray;
_prizesNum = count _prizesArray;
_prizesNum1 = count _prizesArray1;
if (_missions == 0) then
{
_missionsArray = [1,2,3,4];
_missions = count _missionsArray;
};
if (_prizesNum == 0) then
{
_prizesArray = [1,2];
_prizesNum = count _prizesArray;
};
if (_prizesNum1 == 0) then
{
_prizesArray1 = [1,2,3,4];
_prizesNum1 = count _prizesArray1;
};
_objectiv = _missionsArray select (floor (random _missions));
_missionsArray = _missionsArray - [_objectiv];
switch (_objectiv) do
{
/////////////////////////////
// МИССИЯ 1 (МЕДИЦИНСКИЕ)
/////////////////////////////
case 1:
{
private["_pos", "_centerPos"];
_centerPos = getArray(configFile >> "CfgWorlds" >> worldName >> "centerPosition");
_pos = [getMarkerPos "center", 4000, 20000, 10, 0, 25, 0] call BIS_fnc_findSafePos;
DMS_Cords = _pos;
_group1 = createGroup RESISTANCE;
currentAO = createMarker ["Inc_Zone_One", DMS_Cords];
"Inc_Zone_One" setMarkerShape "ELLIPSE";
"Inc_Zone_One" setMarkerSize [600,600];
"Inc_Zone_One" setMarkerColor "ColorBlue";
"Inc_Zone_One" setMarkerBrush "DIAGGRID";
"Inc_Zone_One" setMarkerAlpha 1;
currentAO2 = createMarker ["Inc_Zone_Two", DMS_Cords];
"Inc_Zone_Two" setMarkerType "mil_dot";
"Inc_Zone_Two" setMarkerText "Медицинский шатер";
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Mission BEGUN message
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
_ogjstr = "
<t align='center' size='2.0'>ВНИМАНИЕ НОВОЕ ЗАДАНИЕ:<br/>Медицинский шатер.</t><br/>______________<br/><br/>
Были сброшены лекарства для пострадавших, но сумашедшие ученые захватили их.<br/>
Ваша цель ликвидировать сумашедших ученых! Все что вы сможете конфисковать будет принадлежать вам!";
GlobalHint = _ogjstr;
publicVariable "GlobalHint";
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//CREATE UNIT
////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_1=this"];
_group1 selectLeader BAN_1;
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_2=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_3=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_4=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_5=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_6=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_7=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_8=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_9=this"];
"I_Soldier_EPOCH" createUnit [DMS_Cords, _group1,"BAN_10=this"];
_group1 setBehaviour "RED";
HOGS_AI=[BAN_1,BAN_2,BAN_3,BAN_4,BAN_5,BAN_6,BAN_7,BAN_8,BAN_9,BAN_10];
PublicVariableServer "HOGS_AI";
{
removeUniform _x;
removeHeadgear _x;
_x forceAddUniform "U_C_Scientist";
_x addVest "V_TacVest_camo";
_x addHeadgear "H_ShemagOpen_khk";
_x addMagazines ["11Rnd_45ACP_Mag", 4];
_x addMagazines ["5Rnd_rollins_mag", 16];
_x addWeapon "Rollins_F";
_x addPrimaryWeaponItem "optic_Arco";
_x addWeapon "hgun_Pistol_heavy_01_F";
_x addHandgunItem "optic_MRD";
_x setSkill 1;
_x setSkill ["aimingspeed", 0.7];
_x setSkill ["aimingaccuracy", 0.9];
_x setSkill ["aimingshake", 0.1];
_x setSkill ["spottime", 0.7];
_x setSkill ["spotdistance", 0.5];
_x setSkill ["commanding", 1];
_x setSkill ["general", 1];
_x setRank "Private";
_x enableAI "TARGET";
_x enableAI "AUTOTARGET";
_x enableAI "MOVE";
_x enableAI "ANIM";
_x enableAI "FSM";
_x setBehaviour "AWARE";
_x setCombatMode "RED";
//_x addEventHandler ["Killed",{ [(_this select 0), (_this select 1)] ExecVM "AI_Killed.sqf"; }];
}foreach HOGS_AI;
[_group1, DMS_Cords,100] call bis_fnc_taskPatrol;
// Create trigger around location.
_dt = createTrigger ["EmptyDetector", DMS_Cords];
_dt setTriggerArea [600, 600, 0, false];
_dt setTriggerActivation ["GUER", "NOTPRESENT", false];
// Wait until the trigger sets off or the mission runs out of time
sleep 2;
Bounce_Mission=false;
waitUntil {(count list _dt < 1) or (Bounce_Mission)};
terminate _loop_timer_01;
if(!Bounce_Mission)then{
_prize = createVehicle ["O_supplyCrate_F", DMS_Cords, [], 0, "NONE"];
_loot = _prizesArray select (floor (random _prizesNum));
_prizesArray = _prizesArray - [_loot];
switch (_loot) do
{
case 1:
{
clearWeaponCargoGlobal _prize;
clearMagazineCargoGlobal _prize;
_prize additemcargoGlobal ["FAK", 4];
_prize additemcargoGlobal ["ItemSodaOrangeSherbet", 6];
_prize additemcargoGlobal ["emptyjar_epoch", 4];
_prize additemcargoGlobal ["ItemSodaPurple", 4];
_prize additemcargoGlobal ["MultiGun", 2];
_prize additemcargoGlobal ["EnergyPack", 6];
_prize additemcargoGlobal ["Heal_EPOCH", 2];
_prize additemcargoGlobal ["Defib_EPOCH", 2];
_prize additemcargoGlobal ["sweetcorn_epoch", 6];
_prize additemcargoGlobal ["honey_epoch", 5];
_prize additemcargoGlobal ["Towelette", 11];
_prize additemcargoGlobal ["meatballs_epoch", 3];
};
case 2:
{
clearWeaponCargoGlobal _prize;
clearMagazineCargoGlobal _prize;
_prize additemcargoGlobal ["ItemSodaRbull", 7];
_prize additemcargoGlobal ["emptyjar_epoch", 5];
_prize additemcargoGlobal ["sardines_epoch", 2];
_prize additemcargoGlobal ["meatballs_epoch", 6];
_prize additemcargoGlobal ["MultiGun", 1];
_prize additemcargoGlobal ["EnergyPack", 3];
_prize additemcargoGlobal ["Heal_EPOCH", 1];
_prize additemcargoGlobal ["Defib_EPOCH", 1];
_prize additemcargoGlobal ["sweetcorn_epoch", 4];
_prize additemcargoGlobal ["FAK", 4];
_prize additemcargoGlobal ["HeatPack", 7];
_prize additemcargoGlobal ["honey_epoch", 3];
_prize addbackpackcargoGlobal ["WhiskeyNoodle", 3];
};
// end cases
};
// end switch
HAI2Prize_Timer=time;
[_prize]spawn{_prize=_this select 0;waitUntil{(time-HAI2Prize_Timer)>600}; deleteVehicle _prize;};
//Change the marker to green, inform players of their success
"Inc_Zone_One" setMarkerColor "ColorGreen";
publicVariable "currentAO";
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Mission COMPLETED message
/////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
_ogjstr = "<t align='center' size='2.0'>Миссия завершена</t><br/>
______________<br/><br/>
Хорошая работа выживышие.!<br/>
Безумные ученые были уничтожены.<br/>
Вы можете забрать медикаменты, как вознаграждение.";
GlobalHint = _ogjstr;
publicVariable "GlobalHint";
}else{
//Change the marker to yellow, inform players that the bandits got away
"Inc_Zone_One" setMarkerColor "ColorGrey";
publicVariable "currentAO";
///////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
//Mission BEGUN message
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
_ogjstr = "<t align='center' size='2.0'>Время вышло</t><br/>
______________<br/><br/>
Безумные ученые получили лекарства и убежали в неизветном направлении";
GlobalHint = _ogjstr;
publicVariable "GlobalHint";
};
//Clean up - delete any left over enemies and groups that have broken ranks or glitched
//Delete the trigger and reset Enemy_Dead
deleteVehicle _dt;
{deletevehicle _x} forEach (units _group1);
deleteGroup _group1;
sleep 120;
_loop_timer_01=[] spawn AI_Timer1;
deleteMarker "Inc_Zone_One";
deleteMarker "Inc_Zone_Two";
};
В общем как то так у меня. Боты идут следом за первым ботом. Только одна проблема. Когда к ботам подъезжает машина они ни как не реагируют.