diff --git a/addons/overthrow_main.pbo b/addons/overthrow_main.pbo index c887713e..eac906b0 100644 Binary files a/addons/overthrow_main.pbo and b/addons/overthrow_main.pbo differ diff --git a/addons/overthrow_main/CfgFunctions.hpp b/addons/overthrow_main/CfgFunctions.hpp index d0f24c61..1092cb8e 100644 --- a/addons/overthrow_main/CfgFunctions.hpp +++ b/addons/overthrow_main/CfgFunctions.hpp @@ -129,6 +129,7 @@ class CfgFunctions class respawnHandler {}; class keyHandler {}; class taggedHandler {}; + class EnemyDamagedHandler {}; }; class UI @@ -184,6 +185,7 @@ class CfgFunctions class jobsDialog {}; class craftDialog {}; class uploadData {}; + class logisticsDialog {}; }; class Display @@ -197,6 +199,7 @@ class CfgFunctions class displayJobDetails {}; class displayCraftItem {}; class factoryRefresh {}; + class displayLogisticDetails {}; }; /* @@ -236,6 +239,7 @@ class CfgFunctions class takeLegit {}; class warehouseTake {}; class recover {}; + class storeAll {}; /* Port */ class exportAll {}; @@ -265,6 +269,7 @@ class CfgFunctions class transferFunds {}; class hireEmployee {}; class fireEmployee {}; + class setVehicleWaypoint {}; /* Jobs */ class setJobWaypoint {}; @@ -296,6 +301,8 @@ class CfgFunctions class playSound {}; class canPlace {}; class vehicleCanMove {}; + class unflipVehicle {}; + class triggerBattle {}; }; @@ -466,6 +473,7 @@ class CfgFunctions class squadGetOut {}; class squadGetInMyVehicle {}; class orderStopAndFace {}; + class landAndCleanupHelicopter {}; }; /* diff --git a/addons/overthrow_main/CfgVehicles.hpp b/addons/overthrow_main/CfgVehicles.hpp index b17ec3f6..b18f64d3 100644 --- a/addons/overthrow_main/CfgVehicles.hpp +++ b/addons/overthrow_main/CfgVehicles.hpp @@ -16,6 +16,11 @@ displayName = "Salvage"; \ statement = "_target spawn OT_fnc_salvageWreck"; \ }; \ + class OT_Unflip { \ + condition = "!(canMove _target) && (alive _target) && ((vehicle player) isEqualTo player)"; \ + displayName = "Unflip"; \ + statement = "_target call OT_fnc_unflipVehicle"; \ + }; \ }; \ }; @@ -110,7 +115,7 @@ class CfgVehicles { class ACE_Actions { class ACE_MainActions { class OT_InteractionActions { - condition = "(alive _target) && (!isplayer _target) && !(side _target isEqualTo west) && (!(_player getVariable ['ot_tute',true]) || !(_player getVariable ['OT_tute_inProgress', false]))"; + condition = "(alive _target) && (!isplayer _target) && !(side _target isEqualTo west)"; selection = "pelvis"; distance = 4; displayName = "Talk"; diff --git a/addons/overthrow_main/campaign/description.ext b/addons/overthrow_main/campaign/description.ext index 768412be..214f9ad8 100644 --- a/addons/overthrow_main/campaign/description.ext +++ b/addons/overthrow_main/campaign/description.ext @@ -47,5 +47,15 @@ class Campaign { template = "OverthrowSpAltis.Altis"; }; + + class Malden: MissionDefault + { + template = "OverthrowSpMalden.Malden"; + }; + + class Livonia: MissionDefault + { + template = "OverthrowSpLivonia.Enoch"; + }; }; }; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/initVar.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/initVar.sqf index 983f6f18..fa8328ba 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/initVar.sqf +++ b/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/initVar.sqf @@ -68,7 +68,7 @@ OT_vehTypes_civignore = ["C_Hatchback_01_F","C_Hatchback_01_sport_F",OT_vehType_ OT_illegalHeadgear = ["H_MilCap_gen_F","H_Beret_gen_F","H_HelmetB_TI_tna_F"]; OT_illegalVests = ["V_TacVest_gen_F"]; -OT_clothes_locals = ["U_C_Man_casual_5_F","U_C_Poloshirt_burgundy","U_I_C_Soldier_Bandit_1_F"]; +OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_stripped"]; OT_clothes_expats = ["U_I_C_Soldier_Bandit_5_F","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Man_casual_6_F","U_C_Man_casual_4_F","U_C_Man_casual_5_F"]; OT_clothes_tourists = []; OT_clothes_priest = "U_C_Man_casual_2_F"; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/mission.sqm b/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/mission.sqm index 9f0061ca..dcf3d772 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/mission.sqm +++ b/addons/overthrow_main/campaign/missions/OverthrowMpAltis.Altis/mission.sqm @@ -8,7 +8,7 @@ class EditorData toggles=514; class ItemIDProvider { - nextID=2216; + nextID=2268; }; class MarkerIDProvider { @@ -16,14 +16,14 @@ class EditorData }; class LayerIndexProvider { - nextID=474; + nextID=484; }; class Camera { - pos[]={20369.848,120.36857,18730.523}; - dir[]={-0.5013628,-0.59907788,0.62431037}; - up[]={-0.37511632,0.80068535,0.46710491}; - aside[]={0.77970982,3.7107384e-008,0.62616056}; + pos[]={8572.5645,124.2722,25074.746}; + dir[]={-0.75166714,-0.63082033,0.19255447}; + up[]={-0.61109531,0.77591842,0.15654375}; + aside[]={0.24815878,-4.7304638e-008,0.96872634}; }; }; binarizationWanted=0; @@ -61,7 +61,8 @@ addons[]= "A3_Structures_F_Mil_Cargo", "A3_Structures_F_Mil_Fortification", "A3_Structures_F_Argo_Walls_Military", - "A3_Structures_F_Mil_TentHangar" + "A3_Structures_F_Mil_TentHangar", + "A3_Structures_F_Mil_Helipads" }; class AddonsMetaData { @@ -718,7 +719,7 @@ class Mission }; class Entities { - items=113; + items=138; class Item0 { dataType="Layer"; @@ -4710,7 +4711,7 @@ class Mission }; id=2134; type="Land_WarehouseShelter_01_F"; - atlOffset=0.17799997; + atlOffset=0.17800021; }; class Item38 { @@ -5032,7 +5033,7 @@ class Mission type="mil_box"; alpha=0; id=2161; - atlOffset=2.7054186; + atlOffset=4.2761655; }; class Item61 { @@ -5759,6 +5760,7 @@ class Mission }; id=2199; type="Land_TentHangar_V1_F"; + atlOffset=-1.9073486e-006; }; class Item97 { @@ -5793,6 +5795,7 @@ class Mission }; id=2201; type="Land_Cargo_Patrol_V1_F"; + atlOffset=-9.5367432e-007; }; class Item99 { @@ -5876,6 +5879,7 @@ class Mission }; id=2206; type="Land_Cargo_Tower_V1_F"; + atlOffset=-4.7683716e-007; }; class Item104 { @@ -5911,6 +5915,7 @@ class Mission }; id=2208; type="Land_Cargo_Tower_V1_F"; + atlOffset=-1.9073486e-006; }; class Item106 { @@ -5928,6 +5933,7 @@ class Mission }; id=2209; type="Land_Cargo_Tower_V1_F"; + atlOffset=1.9073486e-006; }; class Item107 { @@ -5945,6 +5951,7 @@ class Mission }; id=2210; type="Land_Cargo_Tower_V1_F"; + atlOffset=-1.9073486e-006; }; class Item108 { @@ -5962,6 +5969,7 @@ class Mission }; id=2211; type="Land_Cargo_Patrol_V1_F"; + atlOffset=-1.9073486e-006; }; class Item109 { @@ -6030,6 +6038,4560 @@ class Mission }; id=2215; type="Land_Cargo_Tower_V1_F"; + atlOffset=-1.9073486e-006; + }; + class Item113 + { + dataType="Object"; + class PositionInfo + { + position[]={23503.676,90.520355,21143.838}; + angles[]={0.015998369,0,6.2818484}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2216; + type="Land_HelipadCircle_F"; + atlOffset=7.6293945e-006; + }; + class Item114 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8550.3223,109.89001,25074.037}; + angles[]={0.12993059,4.7139297,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2219; + type="I_G_Soldier_F"; + atlOffset=0.69068146; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2218; + atlOffset=0.69068146; + }; + class Item115 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8552.4092,109.028,25080.652}; + angles[]={0.0093350215,4.7809825,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2221; + type="I_G_Soldier_F"; + atlOffset=0.96322632; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2220; + atlOffset=0.96322632; + }; + class Item116 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8551.0703,109.26334,25077.551}; + angles[]={0.12993059,4.7349758,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2223; + type="I_G_Soldier_F"; + atlOffset=0.65863037; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2222; + atlOffset=0.65863037; + }; + class Item117 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8553.0635,108.57996,25082.555}; + angles[]={0.12599552,4.8403006,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2225; + type="I_G_Soldier_F"; + atlOffset=0.8380127; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2224; + atlOffset=0.8380127; + }; + class Item118 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8550.2607,110.02025,25072.506}; + angles[]={0.042640556,4.6827879,6.0986423}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2227; + type="I_G_Soldier_F"; + atlOffset=0.59128571; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2226; + atlOffset=0.59128571; + }; + class Item119 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8551.1846,109.46428,25075.816}; + angles[]={0.12993059,4.7286081,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2229; + type="I_G_Soldier_F"; + atlOffset=0.61122131; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2228; + atlOffset=0.61122131; + }; + class Item120 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8551.8965,109.3059,25079.209}; + angles[]={0,4.8648105,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2231; + type="I_G_Soldier_F"; + atlOffset=1.006279; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2230; + atlOffset=1.006279; + }; + class Item121 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8544.2813,109.78907,25075.283}; + angles[]={0.0093350215,4.7809825,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2233; + type="I_G_Soldier_F"; + atlOffset=0.68587494; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2232; + atlOffset=0.68587494; + }; + class Item122 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8542.9424,110.02441,25072.182}; + angles[]={0.12993059,4.7349758,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2235; + type="I_G_Soldier_F"; + atlOffset=0.48764038; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2234; + atlOffset=0.48764038; + }; + class Item123 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8544.9355,109.34103,25077.186}; + angles[]={0.12599552,4.8403006,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2237; + type="I_G_Soldier_F"; + atlOffset=0.51107788; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2236; + atlOffset=0.51107788; + }; + class Item124 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8543.7686,110.06697,25073.84}; + angles[]={0,4.8648105,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2239; + type="I_G_Soldier_F"; + atlOffset=0.75643921; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2238; + atlOffset=0.75643921; + }; + class Item125 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8536.4531,111.11677,25076.439}; + angles[]={0.0093350215,4.7809825,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2241; + type="I_G_Soldier_F"; + atlOffset=1.7307205; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2240; + atlOffset=1.7307205; + }; + class Item126 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8535.1143,111.3521,25073.338}; + angles[]={0.12993059,4.7349758,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2243; + type="I_G_Soldier_F"; + atlOffset=1.6113052; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2242; + atlOffset=1.6113052; + }; + class Item127 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8537.1074,110.66872,25078.342}; + angles[]={0.12599552,4.8403006,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2245; + type="I_G_Soldier_F"; + atlOffset=1.5112991; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2244; + atlOffset=1.5112991; + }; + class Item128 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8535.9404,111.39467,25074.996}; + angles[]={0,4.8648105,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2247; + type="I_G_Soldier_F"; + atlOffset=1.8482208; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2246; + atlOffset=1.8482208; + }; + class Item129 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8557.5068,108.78617,25086.813}; + angles[]={0.0093350215,4.7809825,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2249; + type="I_G_Soldier_F"; + atlOffset=1.8722458; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2248; + atlOffset=1.8722458; + }; + class Item130 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8556.168,109.02151,25083.711}; + angles[]={0.12993059,4.7349758,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2251; + type="I_G_Soldier_F"; + atlOffset=1.6376114; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2250; + atlOffset=1.6376114; + }; + class Item131 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8558.1611,108.33813,25088.715}; + angles[]={0.12599552,4.8403006,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2253; + type="I_G_Soldier_F"; + atlOffset=1.7062531; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2252; + atlOffset=1.7062531; + }; + class Item132 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8556.9941,109.06407,25085.369}; + angles[]={0,4.8648105,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2255; + type="I_G_Soldier_F"; + atlOffset=1.9374237; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2254; + atlOffset=1.9374237; + }; + class Item133 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8549.6787,110.11387,25087.969}; + angles[]={0.0093350215,4.7809825,6.1808777}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2257; + type="I_G_Soldier_F"; + atlOffset=2.8740921; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2256; + atlOffset=2.8740921; + }; + class Item134 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8548.3398,110.34921,25084.867}; + angles[]={0.12993059,4.7349758,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2259; + type="I_G_Soldier_F"; + atlOffset=2.5986176; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2258; + atlOffset=2.5986176; + }; + class Item135 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8549.166,110.39177,25086.525}; + angles[]={0,4.8648105,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2263; + type="I_G_Soldier_F"; + atlOffset=2.9362793; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2262; + atlOffset=2.9362793; + }; + class Item136 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8563.5479,108.88712,25085.566}; + angles[]={0.12993059,4.7139297,6.0628233}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2265; + type="I_G_Soldier_F"; + atlOffset=2.3812103; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2264; + atlOffset=2.3812103; + }; + class Item137 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8563.4863,109.01735,25084.035}; + angles[]={0.042640556,4.6827879,6.0986423}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2267; + type="I_G_Soldier_F"; + atlOffset=2.3324814; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2266; + atlOffset=2.3324814; }; }; class Connections diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/airports.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/airports.sqf new file mode 100644 index 00000000..e3121807 --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/airports.sqf @@ -0,0 +1,3 @@ +OT_airportData = [ + [[3937.53,10102,0],"Lukow Airfield",2500] +]; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/comms.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/comms.sqf new file mode 100644 index 00000000..320585b1 --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/comms.sqf @@ -0,0 +1,7 @@ +OT_commsData = [ + [[2378.86,11474.2,0],"Comms Alpha"], + [[3832.75,1838.31,0],"Radio Polana"], + [[8895.96,2041.96,0],"Radio Dolnik"], + [[7793.78,10096.9,0],"Comms Bravo"], + [[5842.77,6321.35,0],"Radio Nadbor"] +]; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/economy.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/economy.sqf new file mode 100644 index 00000000..55a463da --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/economy.sqf @@ -0,0 +1,13 @@ +OT_economicData = [ + [[11556.2,7074.01,0],"Power Plant"], + [[1662.92,3688.21,0],"Polana Sawmill","","OT_Wood"], + [[2558.82,5523.93,0],"Topolin Cattle Yards"], + [[5180.36,10351,0],"Gliniska Farm"], + [[1352.23,8005,0],"Topolin Farm"], + [[1223.91,8923.21,0],"Topolin Quarry"], + [[5210.57,5668.39,0],"Huta Sawmill"] +]; +OT_factoryPos = [7343.56,2838.22,0]; +OT_factoryVehicleSpawn = [7350.82,2841.75,0]; +OT_factoryVehicleDir = 67; +OT_connectedRegions = []; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/names.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/names.sqf new file mode 100644 index 00000000..39f61cae --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/names.sqf @@ -0,0 +1,85 @@ +OT_firstNames_local = [ + "Fetu", + "Fetuao", + "Losefa", + "Lagi", + "Lelei", + "Loto", + "Manuia", + "Maru", + "Puleleiite", + "Rangi", + "Sefa", + "Tamati", + "Tane", + "Aata", + "Ainakea", + "Akoni", + "Vaea", + "Aalona", + "Afa", + "Afu", + "Ahohaka", + "Aisake", + "Iosefo", + "Afi", + "Ahio", + "Ahomana", + "Aisake", + "Aisea", + "Akolo", + "Alipate", + "Amanaki", + "Anitelu", + "Sitiveni", + "Maciu", + "Tu'uakitau", + "Josefa", + "Kamisesi", + "Epeli", + "Joni", + "Mara", + "Kaliopate", + "Jeremaia", + "Jesoni", + "Tarau" +]; + +OT_lastNames_local = [ + "Ligamamada", + "Rabuka", + "Navakasuasua", + "Uluivuda", + "Madraiwiwi", + "Kapaiwai", + "Nailatikau", + "Cokanauto", + "Mara", + "Ganilau", + "Siwatibau", + "Luveni", + "Singh", + "Nawalowalo", + "Samisoni", + "Toganivalu", + "Bolobolo", + "Cakobau", + "Kanakana", + "Rasolo", + "Sovasova", + "Visawaqa", + "Taoka", + "Vulakoro", + "Vitusagavulu", + "Waqanisau", + "Tavola", + "Savua", + "Matakibau", + "Bulamainaivalu", + "Rokomatu", + "Tupou", + "Bainimarama", + "Korovavala", + "Kotobalavu", + "Naupoto" +]; \ No newline at end of file diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/objectives.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/objectives.sqf new file mode 100644 index 00000000..99d8593a --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/objectives.sqf @@ -0,0 +1,23 @@ +OT_objectiveData = [ + [[8161.8,10793.8,0],"Tarnow Base",700], + [[2061.66,11159.9,0],"Lukow Base",800], + [[7908.17,9750.6,0],"Zapadlisko Base",500], + [[4946.82,2117.13,0],"Swarog Base",400], + [[5648.26,3830.65,0],"Nadbor Base",400], + [[9903.23,3789.6,0],"Gieraltów Base",400], + [[10995.2,9005.87,0],"Chemical Plant",600], + [[9823,8133.64,0],"Borek Base",350], + [[9093.82,6662.88,0],"Lembork Base",350], + [[4399.09,6717.44,0],"fuel depot",500], + [[3519.9,5704.66,0],"Topolin Base",400] +]; +OT_NATO_HQ = "Lukow Airfield"; +OT_NATO_priority = ["Lukow Airfield","Comms Alpha","Zapadlisko Base"]; +OT_NATO_Navy_HQ = ""; + +OT_NATO_JetPos = [4106.14,10331.4,0]; //Where to spawn jets +OT_NATO_JetDir = 45; //Direction to face jet on spawn +OT_NATO_JetLandPos = [4104.29,10329.6,68.6668]; //Waypoint before landing a jet + +OT_NATO_HQ_garrisonPos = [3988.27,10158.4,0]; +OT_NATO_HQ_garrisonDir = 312; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/templates/NATOcheckpoint.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/templates/NATOcheckpoint.sqf new file mode 100644 index 00000000..c0d0e56a --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/templates/NATOcheckpoint.sqf @@ -0,0 +1,14 @@ +[ + ["Land_CncBarrierMedium4_F",[2.97591,-8.9823,0],0,1,0,[],"","",true,false], + ["Land_CncBarrierMedium4_F",[-3.02409,9.0177,0],0,1,0,[],"","",true,false], + ["Land_BagFence_01_round_green_F",[10.0375,-8.00446,-0.00130129],220,1,0,[],"","",true,false], + ["Land_BagFence_01_round_green_F",[-10.0375,8.00446,-0.00130129],40,1,0,[],"","",true,false], + ["B_HMG_01_high_F",[-9,9,-0.0749998],0,1,0,[],"","",true,false], + ["B_HMG_01_high_F",[9,-9,-0.0749998],180,1,0,[],"","",true,false], + ["Land_BagBunker_01_small_green_F",[-8.99989,10.5555,0],180,1,0,[],"","",true,false], + ["Land_BagBunker_01_small_green_F",[8.99989,-10.5555,0],0,1,0,[],"","",true,false], + ["B_GMG_01_A_F",[-4,13,-0.0749998],40,1,0,[],"","",true,false], + ["B_GMG_01_A_F",[4,-13,-0.0749998],220,1,0,[],"","",true,false], + ["Site_Minefield",[-50,0,0],0,1,0,[],"","",true,false], + ["Site_Minefield",[50,0,0],0,1,0,[],"","",true,false] +] diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/towns.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/towns.sqf new file mode 100644 index 00000000..e2e82e8f --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/data/towns.sqf @@ -0,0 +1,35 @@ +OT_townData = [ + [[4992.62,9921.74,0],"Gliniska"], + [[3529.65,11966.5,0],"Lukow"], + [[4007.78,7939.91,0],"Radacz"], + [[6256.94,10252.9,0],"Sobótka"], + [[1573.45,9677.45,0],"Bielawa"], + [[4819.03,7674.13,0],"Olszanka"], + [[6617.63,11211,0],"Brena"], + [[6128.89,8013.34,0],"Nidek"], + [[3076.31,6851.26,0],"Adamów"], + [[1858.82,7330.87,0],"Topolin"], + [[4567.5,6384.4,0],"Muratyn"], + [[5941.87,6820.01,0],"Lipina"], + [[8058.25,8711.76,0],"Zapadlisko"], + [[5141.47,5472.78,0],"Huta"], + [[8416.95,11981.9,0],"Kolembrody"], + [[7298.38,6491.9,0],"Radunin"], + [[9328.31,10904.8,0],"Tarnow"], + [[896.08,5536.12,0],"Zalesie"], + [[8680.47,6635.7,0],"Lembork"], + [[7695.28,5317.47,0],"Roztoka"], + [[9807.49,8495.07,0],"Borek"], + [[6109.5,3983.17,0],"Nadbór"], + [[10666.2,11025.6,0],"Grabin"], + [[10072.7,6956.96,0],"Karlin"], + [[11502.3,9573.01,0],"Sitnik"], + [[3279.61,2132.15,0],"Polana"], + [[11240,4380.37,0],"Gieraltów"], + [[11312.4,655.73,0],"Dolnik"] +]; + + +OT_spawnTowns = ["Dolnik","Polana","Gieraltów"]; +OT_capitals = ["Nadbór","Topolin"]; //region capitals +OT_sprawling = []; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/description.ext b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/description.ext new file mode 100644 index 00000000..9fd3b354 --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/description.ext @@ -0,0 +1,25 @@ +#include "\overthrow_main\mission_component.hpp" + +overviewPicture = "\overthrow_main\campaign\missions\overthrow_tanoa.jpg"; +briefingName = "Overthrow: Livonia"; +OnLoadName = "Overthrow: Livonia"; +loadScreen = "\overthrow_main\campaign\missions\pic.jpg"; + +overviewText = "TBC"; + +class CfgRemoteExec +{ + // List of script functions allowed to be sent from client via remoteExec + class Functions + { + mode = 2; + jip = 1; + + class vcm_serverask { allowedTargets = 0;jip = 1; }; + class VCM_PublicScript { allowedTargets = 0;jip = 1; }; + class BIS_fnc_debugConsoleExec { allowedTargets = 0;jip = 1; }; + class SpawnScript { allowedTargets = 0;jip = 1; }; + class enableSimulationGlobal { allowedTargets = 0;jip = 1; }; + class VCM_fnc_KnowAbout { allowedTargets = 0;jip = 1; }; + }; +}; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initPlayerLocal.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initPlayerLocal.sqf new file mode 100644 index 00000000..7681418b --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initPlayerLocal.sqf @@ -0,0 +1,8 @@ +/* + * Overthrow + * + * Player Init + * + */ + +[] call OT_fnc_initPlayerLocal; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initServer.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initServer.sqf new file mode 100644 index 00000000..7b0f12d2 --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initServer.sqf @@ -0,0 +1,8 @@ +/* + * Overthrow + * + * Server Init + * + */ + +[] call OT_fnc_initOverthrow; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initVar.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initVar.sqf new file mode 100644 index 00000000..72d32cb6 --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/initVar.sqf @@ -0,0 +1,228 @@ + +OT_nation = "Livonia"; +OT_saveName = "Overthrow.Livonia.save.001"; + +OT_tutorial_backstoryText = "TBC"; +OT_startDate = [2025,7,27,8,00]; + +OT_startCameraPos = [9530.23,1138.76,5]; +OT_startCameraTarget = [9154.2,987.363,50]; + +//Used to control updates and persistent save compatability. When these numbers go up, that section will be reinitialized on load if required. (ie leave them alone) +OT_economyVersion = 1; +OT_NATOversion = 1; +OT_CRIMversion = 1; + +OT_faction_NATO = "BLU_T_F"; +OT_spawnFaction = "IND_F"; //This faction will have a rep in spawn town + +OT_flag_NATO = "Flag_NATO_F"; +OT_flag_CRIM = "Flag_Syndikat_F"; +OT_flag_IND = "Flag_HorizonIslands_F"; +OT_flagImage = "\A3\ui_f\data\map\markers\flags\Tanoa_ca.paa"; +OT_flagMarker = "flag_Tanoa"; + +OT_populationMultiplier = 0.8; //Used to tweak populations per map + +//Building templates +//To generate these templates: +//1. Open Arma editor, choose VR map +//2. Add the building you want to make a template for, set its location and rotation to 0,0,0 +//3. Add furniture objects +//4. Add a player (any unit), Play the Scenario +//5. Run this in console: [getPos player, 50, true] call BIS_fnc_ObjectsGrabber +//6. Copy the results, paste them here and remove any extraneous items (ie the building, Logic, babe_helper, Signs) + +OT_shopBuildings = [ + ["Land_VillageStore_01_F",[]], + ["Land_Workshop_03_F",[]], + ["Land_FuelStation_03_shop_F",[]] +]; +OT_carShopBuildings = [ + ["Land_FuelStation_Build_F",[]], + ["Land_FuelStation_02_workshop_F",[]] +]; +OT_spawnHouseBuildings = [ + ["Land_House_1W01_F",[ + ["Land_MetalCase_01_small_F",[-0.0391073,-2.38339,-0.00100088],269.766,1,0,[2.80922e-005,-0.000455107],"","",true,false], + ["Land_CampingChair_V2_F",[-0.95352,2.19191,-0.000998974],205.312,1,0,[0.000419523,0.00036544],"","",true,false], + ["OfficeTable_01_new_F",[-0.669114,2.76221,-0.000998974],3.3096e-005,1,0,[-6.48772e-005,0.000181224],"","",true,false], + ["MapBoard_altis_F",[2.80548,0.361253,-0.00155544],86.6927,1,0,[-0.294008,-0.0546504],"","",true,false], + ["B_CargoNet_01_ammo_F",[2.65323,-1.62338,-0.00099659],360,1,0,[-0.000187827,0.000360995],"","",true,false], + ["Land_Workbench_01_F",[2.20189,2.67528,-0.000597],359.805,1,0,[0.103474,-0.00103475],"","",true,false] + ]], + ["Land_House_1W10_F",[ + ["Land_CampingChair_V2_F",[0.920077,-0.901972,0.034317],24.7907,1,0,[-0.124043,0.271041],"","",true,false], + ["OfficeTable_01_new_F",[0.640592,-1.47487,0.0357647],179.487,1,0,[-0.00276878,-0.297944],"","",true,false], + ["Land_MetalCase_01_small_F",[1.14552,1.94735,0.0331335],92.3128,1,0,[-0.297861,-0.0119579],"","",true,false], + ["Land_Workbench_01_F",[-2.52448,-1.38322,0.0522304],180.992,1,0,[0.0054578,-0.297945],"","",true,false], + ["B_CargoNet_01_ammo_F",[-3.02816,1.29547,0.0548558],179.482,1,0,[-0.00272333,-0.298135],"","",true,false], + ["MapBoard_altis_F",[3.00379,-1.43205,0.061625],134.089,1,0,[0.654025,0.845397],"","",true,false] + ]], + ["Land_House_1W02_F",[ + ["Land_MetalCase_01_small_F",[-0.538328,0.901626,-0.0010004],174.741,1,0,[-9.37514e-005,9.29899e-005],"","",true,false], + ["Land_CampingChair_V2_F",[2.85857,-0.415011,-0.000994682],292.015,1,0,[-0.00038614,-0.00123639],"","",true,false], + ["OfficeTable_01_new_F",[3.44428,-0.666138,-0.000999928],86.7032,1,0,[0.000145824,6.21702e-005],"","",true,false], + ["MapBoard_altis_F",[-1.49216,3.31236,0.0428715],355.179,1,0,[-0.360939,0.0461294],"","",true,false], + ["B_CargoNet_01_ammo_F",[2.64869,3.16984,-0.0010004],179.483,1,0,[-0.000110829,1.88703e-005],"","",true,false], + ["Land_Workbench_01_F",[-4.55341,1.23832,-0.00100088],269.89,1,0,[0.00126416,2.55769e-005],"","",true,false] + ]] +]; + +//Interactable items that spawn in your house +OT_item_Storage = "B_CargoNet_01_ammo_F"; //Your spawn ammobox +OT_item_Desk = "OfficeTable_01_new_F"; //Your spawn desk +OT_item_Radio = "Land_PortableLongRangeRadio_F"; +OT_item_Map = "Land_MapBoard_Enoch_F"; +OT_item_Tent = "Land_TentDome_F"; +OT_item_Safe = "Land_MetalCase_01_small_F"; +OT_item_Workbench = "Land_Workbench_01_F"; + +//Animals to spawn (@todo: spawn animals) +OT_allLowAnimals = ["Rabbit_F","Turtle_F"]; +OT_allHighAnimals = ["Goat_random_F"]; +OT_allFarmAnimals = ["Hen_random_F","Cock_random_F","Sheep_random_F"]; +OT_allVillageAnimals = ["Hen_random_F","Cock_random_F"]; +OT_allTownAnimals = ["Alsatian_Random_F","Fin_random_F"]; + +OT_fuelPumps = ["Land_FuelStation_03_pump_F","Land_FuelStation_Feed_F"]; + +OT_churches = ["Land_Church_03_F","Land_Church_01_F","Land_Church_02_F","Land_Temple_Native_01_F"]; + +OT_language_local = "LanguageENG_F"; +OT_identity_local = "Head_Euro"; + +OT_language_western = "LanguageENG_F"; +OT_identity_western = "Head_Euro"; + +OT_language_eastern = "LanguageCHI_F"; +OT_identity_eastern = "Head_Asian"; + +OT_face_localBoss = "TanoanBossHead"; + +OT_civType_gunDealer = "C_man_p_fugitive_F"; +OT_civType_local = "C_man_1"; +OT_civType_carDealer = "C_man_w_worker_F"; +OT_civType_shopkeeper = "C_man_w_worker_F"; +OT_civType_worker = "C_man_w_worker_F"; +OT_civType_priest = "C_man_w_worker_F"; +OT_vehTypes_civ = []; //populated automatically, but you can add more here and they will appear in streets +OT_vehType_distro = "C_Van_01_box_F"; +OT_vehType_ferry = "C_Boat_Transport_02_F"; +OT_vehType_service = "C_Offroad_01_repair_F"; +OT_vehTypes_civignore = ["C_Hatchback_01_F","C_Hatchback_01_sport_F",OT_vehType_service]; //Civs cannot drive these vehicles for whatever reason + +OT_illegalHeadgear = ["H_MilCap_gen_F","H_Beret_gen_F","H_HelmetB_TI_tna_F"]; +OT_illegalVests = ["V_TacVest_gen_F"]; + +OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_stripped"]; +OT_clothes_expats = ["U_I_C_Soldier_Bandit_5_F","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Man_casual_6_F","U_C_Man_casual_4_F","U_C_Man_casual_5_F"]; +OT_clothes_tourists = []; +OT_clothes_priest = "U_C_Man_casual_2_F"; +OT_clothes_port = "U_Marshal"; +OT_clothes_shops = ["U_C_Man_casual_2_F","U_C_Man_casual_3_F","U_C_Man_casual_1_F"]; +OT_clothes_carDealers = ["U_Marshal"]; +OT_clothes_harbor = ["U_C_man_sport_1_F","U_C_man_sport_2_F","U_C_man_sport_3_F"]; +OT_clothes_guerilla = ["U_I_C_Soldier_Para_1_F","U_I_C_Soldier_Para_2_F","U_I_C_Soldier_Para_3_F","U_I_C_Soldier_Para_4_F"]; +OT_clothes_police = ["U_I_G_resistanceLeader_F","U_BG_Guerilla2_1","U_BG_Guerilla2_3","U_I_C_Soldier_Para_4_F"]; +OT_vest_police = "V_TacVest_blk_POLICE"; +OT_hat_police = "H_Cap_police"; +OT_clothes_mob = "U_I_C_Soldier_Camo_F"; + +//NATO stuff +OT_NATO_HMG = "B_HMG_01_high_F"; +OT_NATO_Vehicles_AirGarrison = [ + ["B_Heli_Light_01_armed_F",1], + ["B_Heli_Transport_03_unarmed_F",2], + ["B_Heli_Light_01_F",3], + ["B_Heli_Attack_01_F",1], + ["B_Heli_Transport_01_F",2] +]; + +OT_NATO_Vehicles_StaticAAGarrison = [ + "B_T_static_AA_F", + "B_T_static_AA_F" +]; //Added to every airfield + +OT_NATO_Vehicles_JetGarrison = [ + ["B_Plane_CAS_01_F",1] +]; + +if(OT_hasJetsDLC) then { + OT_NATO_Vehicles_JetGarrison pushback ["B_Plane_Fighter_01_F",1]; + OT_NATO_Vehicles_JetGarrison pushback ["B_Plane_Fighter_01_Stealth_F",1]; + OT_NATO_Vehicles_StaticAAGarrison pushback "B_Radar_System_01_F"; + OT_NATO_Vehicles_StaticAAGarrison pushback "B_SAM_System_03_F"; +}; + +OT_NATO_StaticGarrison_LevelOne = ["B_HMG_01_high_F"]; +OT_NATO_StaticGarrison_LevelTwo = ["B_HMG_01_high_F","B_HMG_01_high_F","B_GMG_01_high_F","B_T_MRAP_01_hmg_F"]; +OT_NATO_StaticGarrison_LevelThree = ["B_T_Static_AT_F","B_T_Static_AA_F","B_HMG_01_high_F","B_HMG_01_high_F","B_GMG_01_high_F","B_T_MRAP_01_hmg_F","B_T_MRAP_01_gmg_F"]; + +OT_NATO_CommTowers = ["Land_TTowerBig_1_F","Land_TTowerBig_2_F"]; + +OT_NATO_Unit_Sniper = "B_T_Sniper_F"; +OT_NATO_Unit_Spotter = "B_T_Spotter_F"; +OT_NATO_Unit_AA_spec = "B_T_Soldier_AA_F"; +OT_NATO_Unit_AA_ass = "B_T_Soldier_AAA_F"; +OT_NATO_Unit_HVT = "B_T_Officer_F"; +OT_NATO_Unit_TeamLeader = "B_T_Soldier_TL_F"; +OT_NATO_Unit_SquadLeader = "B_T_Soldier_SL_F"; + +OT_NATO_Unit_PoliceCommander = "B_Gen_Commander_F"; +OT_NATO_Unit_Police = "B_Gen_Soldier_F"; +OT_NATO_Vehicle_PoliceHeli = "B_Heli_Light_01_F"; +OT_NATO_Vehicle_Quad = "B_Quadbike_01_F"; +OT_NATO_Vehicle_Police = "B_GEN_Offroad_01_gen_F"; +OT_NATO_Vehicle_Transport = ["B_T_Truck_01_transport_F","B_T_Truck_01_covered_F"]; +OT_NATO_Vehicle_Transport_Light = "B_CTRG_LSV_01_light_F"; +OT_NATO_Vehicles_PoliceSupport = ["B_T_MRAP_01_hmg_F","B_T_MRAP_01_gmg_F","B_T_LSV_01_armed_F","B_Heli_Light_01_armed_F"]; +OT_NATO_Vehicles_ReconDrone = "B_UAV_01_F"; +OT_NATO_Vehicles_CASDrone = "B_UAV_02_CAS_F"; +OT_NATO_Vehicles_AirSupport = ["B_Heli_Attack_01_F"]; +OT_NATO_Vehicles_AirSupport_Small = ["B_Heli_Light_01_armed_F"]; +OT_NATO_Vehicles_GroundSupport = ["B_T_MRAP_01_gmg_F","B_T_MRAP_01_hmg_F","B_T_LSV_01_armed_F"]; +OT_NATO_Vehicles_TankSupport = ["B_T_MBT_01_TUSK_F","B_T_MBT_01_cannon_F"]; +OT_NATO_Vehicles_Convoy = ["B_T_UGV_01_rcws_olive_F","B_T_MRAP_01_hmg_F","B_T_LSV_01_armed_F","B_T_LSV_01_armed_F","B_T_LSV_01_armed_F"]; +OT_NATO_Vehicles_AirWingedSupport = ["B_Plane_CAS_01_F"]; +OT_NATO_Vehicle_AirTransport_Small = "B_Heli_Transport_01_camo_F"; +OT_NATO_Vehicle_AirTransport = ["B_Heli_Transport_03_F","B_Heli_Transport_01_F","B_Heli_Transport_01_F"]; +OT_NATO_Vehicle_AirTransport_Large = "B_Heli_Transport_03_F"; +OT_NATO_Vehicle_Boat_Small = "B_T_Boat_Armed_01_minigun_F"; +OT_NATO_Vehicles_APC = ["B_T_APC_Wheeled_01_cannon_F"]; + +OT_NATO_Sandbag_Curved = "Land_BagFence_01_round_green_F"; +OT_NATO_Barrier_Small = "Land_HBarrier_01_line_5_green_F"; +OT_NATO_Barrier_Large = "Land_HBarrier_01_wall_6_green_F"; + +OT_NATO_Mortar = "B_T_Mortar_01_F"; + +OT_NATO_Vehicle_HVT = "B_MRAP_01_F"; + +OT_NATO_Vehicle_CTRGTransport = "B_CTRG_Heli_Transport_01_tropic_F"; + +OT_NATO_weapons_Police = []; +OT_NATO_weapons_Pistols = ["hgun_Pistol_heavy_01_F","hgun_ACPC2_F","hgun_P07_F","hgun_Rook40_F"]; + +//Criminal stuff +OT_CRIM_Unit = "C_man_p_fugitive_F"; +OT_CRIM_Clothes = ["U_I_C_Soldier_Bandit_3_F","U_BG_Guerilla3_1","U_C_HunterBody_grn","U_I_G_Story_Protagonist_F"]; +OT_CRIM_Goggles = ["G_Balaclava_blk","G_Balaclava_combat","G_Balaclava_lowprofile","G_Balaclava_oli","G_Bandanna_blk","G_Bandanna_khk","G_Bandanna_oli","G_Bandanna_shades","G_Bandanna_sport","G_Bandanna_tan"]; +OT_CRIM_Weapons = ["arifle_AK12_F","arifle_AKM_F","arifle_AKM_F","arifle_AKM_F"]; +OT_CRIM_Pistols = ["hgun_Pistol_heavy_01_F","hgun_ACPC2_F","hgun_P07_F","hgun_Rook40_F"]; +OT_CRIM_Launchers = ["launch_RPG32_F","launch_RPG7_F","launch_RPG7_F","launch_RPG7_F"]; + +OT_piers = []; //spawns dudes that sell boats n stuff +OT_offices = ["Land_MultistoryBuilding_01_F","Land_MultistoryBuilding_04_F"]; +OT_portBuildings = ["Land_Warehouse_01_F","Land_Warehouse_02_F","Land_ContainerLine_01_F","Land_ContainerLine_02_F","Land_ContainerLine_03_F"]; +OT_airportTerminals = ["Land_Airport_01_terminal_F","Land_Airport_02_terminal_F","Land_Hangar_F"]; +OT_portBuilding = "Land_Warehouse_02_F"; +OT_policeStation = "Land_Cargo_House_V3_F"; +OT_warehouse = "Land_Warehouse_03_F"; +OT_warehouses = [OT_warehouse]; +OT_barracks = "Land_Barracks_01_grey_F"; +OT_workshopBuilding = "Land_Cargo_House_V4_F"; +OT_refugeeCamp = "Land_Medevac_house_V1_F"; +OT_trainingCamp = "Land_IRMaskingCover_02_F"; +OT_hardwareStore = "Land_Workshop_05_F"; +OT_radarBuilding = "Land_Radar_Small_F"; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/mission.sqm b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/mission.sqm new file mode 100644 index 00000000..55d68d19 --- /dev/null +++ b/addons/overthrow_main/campaign/missions/OverthrowMpLivonia.Enoch/mission.sqm @@ -0,0 +1,5118 @@ +version=53; +class EditorData +{ + moveGridStep=1; + angleGridStep=0.2617994; + scaleGridStep=1; + autoGroupingDist=10; + toggles=521; + class ItemIDProvider + { + nextID=2206; + }; + class MarkerIDProvider + { + nextID=42; + }; + class LayerIndexProvider + { + nextID=374; + }; + class Camera + { + pos[]={4527.2485,253.72289,6808.3579}; + dir[]={-0.08287137,-0.57585818,-0.81341165}; + up[]={-0.058368109,0.81752545,-0.57290262}; + aside[]={-0.99490637,-1.0354779e-007,0.10135975}; + }; +}; +binarizationWanted=0; +addons[]= +{ + "A3_Ui_F", + "A3_Characters_F", + "A3_Weapons_F", + "A3_Characters_F_Heads", + "A3_Characters_F_Orange_Facewear", + "ace_goggles", + "ace_attach", + "ace_chemlights", + "A3_Weapons_F_Items", + "ace_medical", + "ace_cargo", + "ace_captives", + "ace_switchunits", + "ace_weather", + "ace_vehiclelock", + "ace_advanced_fatigue", + "ace_map", + "A3_Modules_F_Hc", + "ace_rearm", + "ace_refuel", + "ace_repair", + "ace_respawn", + "ace_explosives", + "ace_ui", + "A3_Modules_F_Curator_Curator", + "A3_Structures_F_Exp_Military_ContainerBases", + "A3_Structures_F_Mil_Helipads", + "A3_Structures_F_Enoch_Military_Barracks", + "A3_Structures_F_Enoch_Military_Radar", + "A3_Structures_F_Enoch_Military_Training", + "A3_Structures_F_Ind_Transmitter_Tower", + "A3_Structures_F_Enoch_Civilian_Sheds" +}; +class AddonsMetaData +{ + class List + { + items=28; + class Item0 + { + className="A3_Ui_F"; + name="Arma 3 - User Interface"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item1 + { + className="A3_Characters_F"; + name="Arma 3 Alpha - Characters and Clothing"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item2 + { + className="A3_Weapons_F"; + name="Arma 3 Alpha - Weapons and Accessories"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item3 + { + className="A3_Characters_F_Orange"; + name="Arma 3 Orange - Characters and Clothing"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item4 + { + className="ace_goggles"; + name="ACE3 - Goggles"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item5 + { + className="ace_attach"; + name="ACE3 - Attach"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item6 + { + className="ace_chemlights"; + name="ace_chemlights"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item7 + { + className="ace_medical"; + name="ACE3 - Medical"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item8 + { + className="ace_cargo"; + name="ACE3 - Cargo"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item9 + { + className="ace_captives"; + name="ACE3 - Captives"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item10 + { + className="ace_switchunits"; + name="ACE3 - Switch Units"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item11 + { + className="ace_weather"; + name="ACE3 - Weather"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item12 + { + className="ace_vehiclelock"; + name="ACE3 - Vehicle Lock"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item13 + { + className="ace_advanced_fatigue"; + name="ACE3 - Advanced Fatigue"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item14 + { + className="ace_map"; + name="ACE3 - Map"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item15 + { + className="A3_Modules_F"; + name="Arma 3 Alpha - Scripted Modules"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item16 + { + className="ace_rearm"; + name="ACE3 - Rearm"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item17 + { + className="ace_refuel"; + name="ACE3 - Refuel"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item18 + { + className="ace_repair"; + name="ACE3 - Repair"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item19 + { + className="ace_respawn"; + name="ACE3 - Respawn"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item20 + { + className="ace_explosives"; + name="ACE3 - Explosives"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item21 + { + className="ace_ui"; + name="ACE3 - UI"; + author="ACE-Team"; + url="http://ace3mod.com/"; + }; + class Item22 + { + className="A3_Modules_F_Curator"; + name="Arma 3 Zeus Update - Scripted Modules"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item23 + { + className="A3_Structures_F_Exp"; + name="Arma 3 Apex - Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item24 + { + className="A3_Structures_F_Mil"; + name="Arma 3 - Military Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item25 + { + className="A3_Structures_F_Enoch_Military"; + name="Arma 3 Enoch - Military Buildings and Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item26 + { + className="A3_Structures_F_Ind"; + name="Arma 3 - Industrial Structures"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + class Item27 + { + className="A3_Structures_F_Enoch_Civilian"; + name="Arma 3 Enoch - Civilian Buildings"; + author="Bohemia Interactive"; + url="https://www.arma3.com"; + }; + }; +}; +class DynamicSimulation +{ + class EnableRadiuses + { + Prop=1000; + EmptyVehicle=1000; + Vehicle=800; + Group=1200; + }; + class EnableRadiuseCoefs + { + IsMoving=2.5; + }; +}; +randomSeed=2938931; +class ScenarioData +{ + author="ARMAzac"; + respawnDialog=0; + disabledAI=1; + respawn=2; + respawnDelay=20; + respawnVehicleDelay=20; + class Header + { + gameType="Coop"; + }; + wreckRemovalMinTime=1800.0009; + wreckRemovalMaxTime=3600; + corpseLimit=150; +}; +class CustomAttributes +{ + class Category0 + { + name="Multiplayer"; + class Attribute0 + { + property="RespawnTemplates"; + expression="true"; + class Value + { + class data + { + class type + { + type[]= + { + "ARRAY" + }; + }; + }; + }; + }; + class Attribute1 + { + property="ReviveRequiredTrait"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute2 + { + property="ReviveMode"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute3 + { + property="ReviveMedicSpeedMultiplier"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute4 + { + property="SharedObjectives"; + expression="if (isMultiplayer) then {[_value] spawn bis_fnc_sharedObjectives;};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute5 + { + property="RespawnButton"; + expression="true"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute6 + { + property="ReviveForceRespawnDelay"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=3; + }; + }; + }; + class Attribute7 + { + property="ReviveBleedOutDelay"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=180; + }; + }; + }; + class Attribute8 + { + property="ReviveDelay"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=60; + }; + }; + }; + class Attribute9 + { + property="ReviveUnconsciousStateMode"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute10 + { + property="ReviveRequiredItems"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=11; + }; + class Category1 + { + name="Scenario"; + class Attribute0 + { + property="EnableDebugConsole"; + expression="true"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + nAttributes=1; + }; +}; +class Mission +{ + class Intel + { + briefingName="Overthrow.Tanoa"; + resistanceWest=0; + startWeather=0.29173625; + startWind=0; + startWaves=0.16261242; + forecastWeather=0; + forecastWind=0; + forecastWaves=0; + year=2025; + month=7; + day=27; + hour=8; + minute=0; + startFogBase=250; + forecastFogBase=250; + startFogDecay=0.014; + forecastFogDecay=0.014; + class CustomAttributes + { + name="Intel"; + class Attribute0 + { + property="Enh_rainbowStrength"; + expression="0 setRainBow _value"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0.34999999; + }; + }; + }; + class Attribute1 + { + property="Enh_disableGrass"; + expression="if(_value) then {50 remoteExec ['setTerrainGrid',[0,-2] select (isMultiplayer && isDedicated),true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute2 + { + property="Enh_viewDistance"; + expression="if (!is3DEN && (_value > 0)) then {_value remoteExec ['setViewDistance',[0,-2] select (isMultiplayer && isDedicated),true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=-1; + }; + }; + }; + class Attribute3 + { + property="Enh_fogDecay"; + expression="missionNamespace setVariable ['Enh_fogDecay',_value]"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="Enh_fogValue"; + expression=" if (_value > 0) then { _value spawn { waitUntil {time > 0.2}; 0 setFog [_this,missionNamespace getVariable 'Enh_fogDecay',missionNamespace getVariable 'Enh_fogBase']; }; }; "; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute5 + { + property="Enh_fogBase"; + expression="missionNamespace setVariable ['Enh_fogBase',_value]"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute6 + { + property="Enh_timeMultiplier"; + expression="if (!is3DEN) then {setTimeMultiplier _value}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute7 + { + property="Enh_enableEnvironment"; + expression="if (!is3DEN) then {enableEnvironment _value};"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + nAttributes=8; + }; + }; + class Entities + { + items=58; + class Item0 + { + dataType="Layer"; + name="NATO Checkpoints"; + class Entities + { + items=6; + class Item0 + { + dataType="Marker"; + position[]={2417.8821,93.695,5764.9858}; + name="control_1"; + type="mil_triangle"; + colorName="ColorWEST"; + alpha=0; + id=1153; + atlOffset=-126.231; + }; + class Item1 + { + dataType="Marker"; + position[]={3092.197,55.707001,9636.4805}; + name="control_2"; + type="mil_triangle"; + colorName="ColorWEST"; + alpha=0; + id=2169; + atlOffset=8.0108643e-005; + }; + class Item2 + { + dataType="Marker"; + position[]={4130.397,48.41,11181.923}; + name="control_3"; + type="mil_triangle"; + colorName="ColorWEST"; + alpha=0; + id=2170; + atlOffset=0.00035095215; + }; + class Item3 + { + dataType="Marker"; + position[]={4636.7378,46.848,10287.408}; + name="control_4"; + type="mil_triangle"; + colorName="ColorWEST"; + alpha=0; + id=2171; + atlOffset=-7.2479248e-005; + }; + class Item4 + { + dataType="Marker"; + position[]={10154.61,75.689003,2389.8799}; + name="control_5"; + type="mil_triangle"; + colorName="ColorWEST"; + alpha=0; + id=2172; + atlOffset=0.0004196167; + }; + class Item5 + { + dataType="Marker"; + position[]={12157.888,129.49899,5655.2441}; + name="control_6"; + type="mil_triangle"; + colorName="ColorWEST"; + alpha=0; + id=2173; + atlOffset=9.1552734e-005; + }; + }; + id=1139; + atlOffset=-16.982307; + }; + class Item1 + { + dataType="Marker"; + position[]={1268.3774,12.835693,7684.814}; + name="port_1"; + type="loc_Quay"; + id=1597; + atlOffset=-0.17923927; + }; + class Item2 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8513.4688,244.40042,132.48752}; + angles[]={0.059133004,2.1080611,6.1795568}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + name="bigboss"; + description="Host"; + isPlayer=1; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla2_3"; + isBackpack=0; + class MagazineCargo + { + items=1; + class Item0 + { + name="Chemlight_blue"; + count=1; + ammoLeft=1; + }; + }; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + compass="ItemCompass"; + watch="ItemWatch"; + radio="ItemRadio"; + gps="ItemGPS"; + goggles="G_Shades_Black"; + headgear="H_Watchcap_blk"; + }; + }; + id=1949; + type="I_G_officer_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=1718; + atlOffset=4.5776367e-005; + }; + class Item3 + { + dataType="Logic"; + class PositionInfo + { + position[]={8784.7285,6.4611435e-005,859.85938}; + }; + id=1754; + type="ACE_moduleReviveSettings"; + atlOffset=-97.894325; + class CustomAttributes + { + class Attribute0 + { + property="ACE_moduleReviveSettings_amountOfReviveLives"; + expression="_this setVariable ['amountOfReviveLives',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=-1; + }; + }; + }; + class Attribute1 + { + property="ACE_moduleReviveSettings_enableRevive"; + expression="_this setVariable ['enableRevive',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="ACE_moduleReviveSettings_maxReviveTime"; + expression="_this setVariable ['maxReviveTime',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=240; + }; + }; + }; + nAttributes=3; + }; + }; + class Item4 + { + dataType="Logic"; + class PositionInfo + { + position[]={8784.3457,-0.00020956993,864.98633}; + }; + id=1755; + type="ACE_moduleMedicalSettings"; + atlOffset=-98.412689; + class CustomAttributes + { + class Attribute0 + { + property="ACE_moduleMedicalSettings_litterCleanUpDelay"; + expression="_this setVariable ['litterCleanUpDelay',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1800; + }; + }; + }; + class Attribute1 + { + property="ACE_moduleMedicalSettings_enableScreams"; + expression="_this setVariable ['enableScreams',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute2 + { + property="ACE_moduleMedicalSettings_preventInstaDeath"; + expression="_this setVariable ['preventInstaDeath',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute3 + { + property="ACE_moduleMedicalSettings_bleedingCoefficient"; + expression="_this setVariable ['bleedingCoefficient',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute4 + { + property="ACE_moduleMedicalSettings_increaseTrainingInLocations"; + expression="_this setVariable ['increaseTrainingInLocations',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute5 + { + property="ACE_moduleMedicalSettings_enableUnconsciousnessAI"; + expression="_this setVariable ['enableUnconsciousnessAI',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute6 + { + property="ACE_moduleMedicalSettings_remoteControlledAI"; + expression="_this setVariable ['remoteControlledAI',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute7 + { + property="ACE_moduleMedicalSettings_painCoefficient"; + expression="_this setVariable ['painCoefficient',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute8 + { + property="ACE_moduleMedicalSettings_AIDamageThreshold"; + expression="_this setVariable ['AIDamageThreshold',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute9 + { + property="ACE_moduleMedicalSettings_playerDamageThreshold"; + expression="_this setVariable ['playerDamageThreshold',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1.2; + }; + }; + }; + class Attribute10 + { + property="ACE_moduleMedicalSettings_level"; + expression="_this setVariable ['level',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute11 + { + property="ACE_moduleMedicalSettings_allowLitterCreation"; + expression="_this setVariable ['allowLitterCreation',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute12 + { + property="ACE_moduleMedicalSettings_keepLocalSettingsSynced"; + expression="_this setVariable ['keepLocalSettingsSynced',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute13 + { + property="ACE_moduleMedicalSettings_medicSetting"; + expression="_this setVariable ['medicSetting',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + nAttributes=14; + }; + }; + class Item5 + { + dataType="Logic"; + class PositionInfo + { + position[]={8784.541,7.6770782e-005,866.70508}; + }; + id=1757; + type="ACE_moduleCargoSettings"; + atlOffset=-98.634979; + class CustomAttributes + { + class Attribute0 + { + property="ACE_moduleCargoSettings_enable"; + expression="_this setVariable ['enable',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute1 + { + property="ACE_moduleCargoSettings_paradropTimeCoefficent"; + expression="_this setVariable ['paradropTimeCoefficent',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="2.5"; + }; + }; + }; + nAttributes=2; + }; + }; + class Item6 + { + dataType="Logic"; + class PositionInfo + { + position[]={8782.4551,0.00059151649,867.27246}; + }; + id=1758; + type="ace_captives_moduleSettings"; + atlOffset=-98.280968; + class CustomAttributes + { + class Attribute0 + { + property="ace_captives_moduleSettings_requireSurrender"; + expression="_this setVariable ['requireSurrender',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_captives_moduleSettings_allowHandcuffOwnSide"; + expression="_this setVariable ['allowHandcuffOwnSide',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute2 + { + property="ace_captives_moduleSettings_allowSurrender"; + expression="_this setVariable ['allowSurrender',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute3 + { + property="ace_captives_moduleSettings_requireSurrenderAi"; + expression="_this setVariable ['requireSurrenderAi',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + nAttributes=4; + }; + }; + class Item7 + { + dataType="Logic"; + class PositionInfo + { + position[]={8785.3008,7.6293945e-005,867.42285}; + }; + id=1759; + type="ACE_ModuleSwitchUnits"; + atlOffset=-98.874451; + class CustomAttributes + { + class Attribute0 + { + property="ACE_ModuleSwitchUnits_SafeZoneRadius"; + expression="_this setVariable ['SafeZoneRadius',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=100; + }; + }; + }; + class Attribute1 + { + property="ACE_ModuleSwitchUnits_SwitchToCivilian"; + expression="_this setVariable ['SwitchToCivilian',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute2 + { + property="ACE_ModuleSwitchUnits_SwitchToEast"; + expression="_this setVariable ['SwitchToEast',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute3 + { + property="ACE_ModuleSwitchUnits_SwitchToWest"; + expression="_this setVariable ['SwitchToWest',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="ACE_ModuleSwitchUnits_SwitchToIndependent"; + expression="_this setVariable ['SwitchToIndependent',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute5 + { + property="ACE_ModuleSwitchUnits_EnableSafeZone"; + expression="_this setVariable ['EnableSafeZone',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + nAttributes=6; + }; + }; + class Item8 + { + dataType="Logic"; + class PositionInfo + { + position[]={8781.7578,-4.8398972e-005,863.74365}; + }; + id=1760; + type="ace_weather_ModuleSettings"; + atlOffset=-97.841576; + class CustomAttributes + { + class Attribute0 + { + property="ace_weather_ModuleSettings_enabled"; + expression="_this setVariable ['enabled',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute1 + { + property="ace_weather_ModuleSettings_windSimulation"; + expression="_this setVariable ['windSimulation',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute2 + { + property="ace_weather_ModuleSettings_updateInterval"; + expression="_this setVariable ['updateInterval',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=60; + }; + }; + }; + nAttributes=3; + }; + }; + class Item9 + { + dataType="Logic"; + class PositionInfo + { + position[]={8785.4189,-0.00033378601,869.49561}; + }; + id=1761; + type="ACE_VehicleLock_ModuleSetup"; + atlOffset=-99.128044; + class CustomAttributes + { + class Attribute0 + { + property="ACE_VehicleLock_ModuleSetup_DefaultLockpickStrength"; + expression="_this setVariable ['DefaultLockpickStrength',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=10; + }; + }; + }; + class Attribute1 + { + property="ACE_VehicleLock_ModuleSetup_VehicleStartingLockState"; + expression="_this setVariable ['VehicleStartingLockState',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="ACE_VehicleLock_ModuleSetup_LockVehicleInventory"; + expression="_this setVariable ['LockVehicleInventory',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + nAttributes=3; + }; + }; + class Item10 + { + dataType="Logic"; + class PositionInfo + { + position[]={8783.4316,0.00049591064,867.8584}; + }; + id=1762; + type="ace_advanced_fatigue_moduleSettings"; + atlOffset=-98.542084; + class CustomAttributes + { + class Attribute0 + { + property="ace_advanced_fatigue_moduleSettings_TerrainGradientFactor"; + expression="_this setVariable ['TerrainGradientFactor',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0.80000001; + }; + }; + }; + class Attribute1 + { + property="ace_advanced_fatigue_moduleSettings_Enabled"; + expression="_this setVariable ['Enabled',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute2 + { + property="ace_advanced_fatigue_moduleSettings_RecoveryFactor"; + expression="_this setVariable ['RecoveryFactor',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute3 + { + property="ace_advanced_fatigue_moduleSettings_LoadFactor"; + expression="_this setVariable ['LoadFactor',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0.80000001; + }; + }; + }; + class Attribute4 + { + property="ace_advanced_fatigue_moduleSettings_PerformanceFactor"; + expression="_this setVariable ['PerformanceFactor',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + nAttributes=5; + }; + }; + class Item11 + { + dataType="Logic"; + class PositionInfo + { + position[]={8781.8125,0,859.43115}; + }; + id=1766; + type="ACE_ModuleMap"; + atlOffset=-97.449936; + class CustomAttributes + { + class Attribute0 + { + property="ACE_ModuleMap_MapShake"; + expression="_this setVariable ['MapShake',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ACE_ModuleMap_MapShowCursorCoordinates"; + expression="_this setVariable ['MapShowCursorCoordinates',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute2 + { + property="ACE_ModuleMap_DefaultChannel"; + expression="_this setVariable ['DefaultChannel',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=-1; + }; + }; + }; + class Attribute3 + { + property="ACE_ModuleMap_MapIllumination"; + expression="_this setVariable ['MapIllumination',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="ACE_ModuleMap_MapGlow"; + expression="_this setVariable ['MapGlow',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute5 + { + property="ACE_ModuleMap_MapLimitZoom"; + expression="_this setVariable ['MapLimitZoom',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + nAttributes=6; + }; + }; + class Item12 + { + dataType="Logic"; + class PositionInfo + { + position[]={8512.2705,244.46503,133.26022}; + angles[]={0.059133004,0,6.2224593}; + }; + id=1778; + type="HighCommand"; + atlOffset=6.1035156e-005; + }; + class Item13 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8512.5078,244.56673,131.2081}; + angles[]={6.2416081,2.1661577,6.1621809}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=1713; + type="I_G_Soldier_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=1712; + atlOffset=4.5776367e-005; + }; + class Item14 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8509.8516,244.60715,127.37143}; + angles[]={6.2671871,2.1843338,6.1858935}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=1782; + type="I_G_Soldier_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=1781; + atlOffset=4.5776367e-005; + }; + class Item15 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8506.6992,244.79341,123.19394}; + angles[]={6.2448039,2.2503321,6.1574531}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=1785; + type="I_G_Soldier_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=1784; + atlOffset=4.5776367e-005; + }; + class Item16 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8507.9834,244.72861,124.69736}; + angles[]={6.2160864,2.2371347,6.1858935}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=1794; + type="I_G_Soldier_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=1793; + atlOffset=4.5776367e-005; + }; + class Item17 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8511.6113,244.57509,129.84799}; + angles[]={6.2416081,2.146431,6.2113104}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=1806; + type="I_G_Soldier_F"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=1805; + atlOffset=6.1035156e-005; + }; + class Item18 + { + dataType="Logic"; + class PositionInfo + { + position[]={11642.646,5.3142729,3142.073}; + }; + id=1842; + type="ACE_moduleRearmSettings"; + atlOffset=-151.43437; + class CustomAttributes + { + class Attribute0 + { + property="ACE_moduleRearmSettings_level"; + expression="_this setVariable ['level',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ACE_moduleRearmSettings_supply"; + expression="_this setVariable ['supply',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + nAttributes=2; + }; + }; + class Item19 + { + dataType="Logic"; + class PositionInfo + { + position[]={11642.348,5.3225422,3142.1362}; + }; + id=1843; + type="ACE_moduleRefuelSettings"; + atlOffset=-151.47693; + class CustomAttributes + { + class Attribute0 + { + property="ACE_moduleRefuelSettings_rate"; + expression="_this setVariable ['rate',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=10; + }; + }; + }; + class Attribute1 + { + property="ACE_moduleRefuelSettings_hoseLength"; + expression="_this setVariable ['hoseLength',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=12; + }; + }; + }; + nAttributes=2; + }; + }; + class Item20 + { + dataType="Logic"; + class PositionInfo + { + position[]={11641.751,5.3194513,3141.887}; + }; + id=1844; + type="ACE_moduleRepairSettings"; + atlOffset=-151.56619; + class CustomAttributes + { + class Attribute0 + { + property="ACE_moduleRepairSettings_fullRepairLocation"; + expression="_this setVariable ['fullRepairLocation',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=3; + }; + }; + }; + class Attribute1 + { + property="ACE_moduleRepairSettings_engineerSetting_fullRepair"; + expression="_this setVariable ['engineerSetting_fullRepair',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute2 + { + property="ACE_moduleRepairSettings_engineerSetting_Repair"; + expression="_this setVariable ['engineerSetting_Repair',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute3 + { + property="ACE_moduleRepairSettings_consumeItem_ToolKit"; + expression="_this setVariable ['consumeItem_ToolKit',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="ACE_moduleRepairSettings_repairDamageThreshold"; + expression="_this setVariable ['repairDamageThreshold',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0.60000002; + }; + }; + }; + class Attribute5 + { + property="ACE_moduleRepairSettings_wheelRepairRequiredItems"; + expression="_this setVariable ['wheelRepairRequiredItems',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute6 + { + property="ACE_moduleRepairSettings_repairDamageThreshold_Engineer"; + expression="_this setVariable ['repairDamageThreshold_Engineer',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0.40000001; + }; + }; + }; + class Attribute7 + { + property="ACE_moduleRepairSettings_engineerSetting_Wheel"; + expression="_this setVariable ['engineerSetting_Wheel',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute8 + { + property="ACE_moduleRepairSettings_addSpareParts"; + expression="_this setVariable ['addSpareParts',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + nAttributes=9; + }; + }; + class Item21 + { + dataType="Logic"; + class PositionInfo + { + position[]={11642.097,5.3062015,3142.5117}; + }; + id=1851; + type="ACE_ModuleFriendlyFire"; + atlOffset=-151.54945; + }; + class Item22 + { + dataType="Logic"; + class PositionInfo + { + position[]={11642.479,5.2980986,3141.3799}; + }; + id=1852; + type="ACE_ModuleExplosive"; + atlOffset=-151.44882; + class CustomAttributes + { + class Attribute0 + { + property="ACE_ModuleExplosive_RequireSpecialist"; + expression="_this setVariable ['RequireSpecialist',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ACE_ModuleExplosive_PunishNonSpecialists"; + expression="_this setVariable ['PunishNonSpecialists',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute2 + { + property="ACE_ModuleExplosive_ExplodeOnDefuse"; + expression="_this setVariable ['ExplodeOnDefuse',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + nAttributes=3; + }; + }; + class Item23 + { + dataType="Logic"; + class PositionInfo + { + position[]={8380.5068,253.07025,150.68881}; + }; + name="HC1"; + isPlayable=1; + id=1902; + type="HeadlessClient_F"; + atlOffset=3.4742432; + }; + class Item24 + { + dataType="Logic"; + class PositionInfo + { + position[]={8381.1738,251.66205,145.58102}; + }; + name="HC2"; + isPlayable=1; + id=1905; + type="HeadlessClient_F"; + atlOffset=1.9395447; + }; + class Item25 + { + dataType="Logic"; + class PositionInfo + { + position[]={8960.5811,-8.392334e-005,1370.9969}; + }; + id=1906; + type="ace_ui_Module"; + atlOffset=-194.26855; + class CustomAttributes + { + class Attribute0 + { + property="ace_ui_Module_throwableCount"; + expression="_this setVariable ['throwableCount',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute1 + { + property="ace_ui_Module_staminaBar"; + expression="_this setVariable ['staminaBar',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute2 + { + property="ace_ui_Module_gunnerZeroing"; + expression="_this setVariable ['gunnerZeroing',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute3 + { + property="ace_ui_Module_ammoType"; + expression="_this setVariable ['ammoType',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute4 + { + property="ace_ui_Module_throwableName"; + expression="_this setVariable ['throwableName',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="ace_ui_Module_vehicleAltitude"; + expression="_this setVariable ['vehicleAltitude',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute6 + { + property="ace_ui_Module_gunnerMagCount"; + expression="_this setVariable ['gunnerMagCount',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute7 + { + property="ace_ui_Module_gunnerWeaponName"; + expression="_this setVariable ['gunnerWeaponName',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute8 + { + property="ace_ui_Module_groupBar"; + expression="_this setVariable ['groupBar',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute9 + { + property="ace_ui_Module_stance"; + expression="_this setVariable ['stance',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute10 + { + property="ace_ui_Module_vehicleInfoBackground"; + expression="_this setVariable ['vehicleInfoBackground',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute11 + { + property="ace_ui_Module_soldierVehicleWeaponInfo"; + expression="_this setVariable ['soldierVehicleWeaponInfo',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute12 + { + property="ace_ui_Module_gunnerFiringMode"; + expression="_this setVariable ['gunnerFiringMode',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute13 + { + property="ace_ui_Module_gunnerWeaponNameBackground"; + expression="_this setVariable ['gunnerWeaponNameBackground',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute14 + { + property="ace_ui_Module_zeroing"; + expression="_this setVariable ['zeroing',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute15 + { + property="ace_ui_Module_vehicleSpeed"; + expression="_this setVariable ['vehicleSpeed',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute16 + { + property="ace_ui_Module_vehicleRadar"; + expression="_this setVariable ['vehicleRadar',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute17 + { + property="ace_ui_Module_vehicleName"; + expression="_this setVariable ['vehicleName',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute18 + { + property="ace_ui_Module_allowSelectiveUI"; + expression="_this setVariable ['allowSelectiveUI',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute19 + { + property="ace_ui_Module_weaponLowerInfoBackground"; + expression="_this setVariable ['weaponLowerInfoBackground',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute20 + { + property="ace_ui_Module_vehicleFuelBar"; + expression="_this setVariable ['vehicleFuelBar',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute21 + { + property="ace_ui_Module_gunnerLaunchableName"; + expression="_this setVariable ['gunnerLaunchableName',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute22 + { + property="ace_ui_Module_gunnerAmmoType"; + expression="_this setVariable ['gunnerAmmoType',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute23 + { + property="ace_ui_Module_gunnerWeaponLowerInfoBackground"; + expression="_this setVariable ['gunnerWeaponLowerInfoBackground',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute24 + { + property="ace_ui_Module_magCount"; + expression="_this setVariable ['magCount',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute25 + { + property="ace_ui_Module_gunnerAmmoCount"; + expression="_this setVariable ['gunnerAmmoCount',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute26 + { + property="ace_ui_Module_vehicleCompass"; + expression="_this setVariable ['vehicleCompass',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute27 + { + property="ace_ui_Module_vehicleDamage"; + expression="_this setVariable ['vehicleDamage',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute28 + { + property="ace_ui_Module_ammoCount"; + expression="_this setVariable ['ammoCount',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute29 + { + property="ace_ui_Module_weaponName"; + expression="_this setVariable ['weaponName',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute30 + { + property="ace_ui_Module_gunnerLaunchableCount"; + expression="_this setVariable ['gunnerLaunchableCount',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute31 + { + property="ace_ui_Module_firingMode"; + expression="_this setVariable ['firingMode',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute32 + { + property="ace_ui_Module_weaponNameBackground"; + expression="_this setVariable ['weaponNameBackground',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute33 + { + property="ace_ui_Module_vehicleNameBackground"; + expression="_this setVariable ['vehicleNameBackground',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute34 + { + property="ace_ui_Module_commandMenu"; + expression="_this setVariable ['commandMenu',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + nAttributes=35; + }; + }; + class Item26 + { + dataType="Logic"; + class PositionInfo + { + position[]={8598.9941,275.10437,136.22836}; + }; + id=1909; + type="ACE_moduleAdvancedMedicalSettings"; + atlOffset=36.388214; + class CustomAttributes + { + class Attribute0 + { + property="ACE_moduleAdvancedMedicalSettings_enableVehicleCrashes"; + expression="_this setVariable ['enableVehicleCrashes',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ACE_moduleAdvancedMedicalSettings_consumeItem_SurgicalKit"; + expression="_this setVariable ['consumeItem_SurgicalKit',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute2 + { + property="ACE_moduleAdvancedMedicalSettings_enableAdvancedWounds"; + expression="_this setVariable ['enableAdvancedWounds',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute3 + { + property="ACE_moduleAdvancedMedicalSettings_consumeItem_PAK"; + expression="_this setVariable ['consumeItem_PAK',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute4 + { + property="ACE_moduleAdvancedMedicalSettings_useCondition_PAK"; + expression="_this setVariable ['useCondition_PAK',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="ACE_moduleAdvancedMedicalSettings_medicSetting_PAK"; + expression="_this setVariable ['medicSetting_PAK',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute6 + { + property="ACE_moduleAdvancedMedicalSettings_medicSetting_SurgicalKit"; + expression="_this setVariable ['medicSetting_SurgicalKit',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute7 + { + property="ACE_moduleAdvancedMedicalSettings_healHitPointAfterAdvBandage"; + expression="_this setVariable ['healHitPointAfterAdvBandage',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute8 + { + property="ACE_moduleAdvancedMedicalSettings_useLocation_SurgicalKit"; + expression="_this setVariable ['useLocation_SurgicalKit',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=3; + }; + }; + }; + class Attribute9 + { + property="ACE_moduleAdvancedMedicalSettings_useCondition_SurgicalKit"; + expression="_this setVariable ['useCondition_SurgicalKit',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute10 + { + property="ACE_moduleAdvancedMedicalSettings_useLocation_PAK"; + expression="_this setVariable ['useLocation_PAK',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=3; + }; + }; + }; + class Attribute11 + { + property="ACE_moduleAdvancedMedicalSettings_enableFor"; + expression="_this setVariable ['enableFor',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute12 + { + property="ACE_moduleAdvancedMedicalSettings_painIsOnlySuppressed"; + expression="_this setVariable ['painIsOnlySuppressed',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + nAttributes=13; + }; + }; + class Item27 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8510.6563,244.58217,128.36508}; + angles[]={6.2416081,2.1167357,6.2113104}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=1809; + type="I_G_Soldier_F"; + atlOffset=6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=1808; + atlOffset=6.1035156e-005; + }; + class Item28 + { + dataType="Logic"; + class PositionInfo + { + position[]={8384.3691,252.66849,150.49142}; + }; + name="HC3"; + isPlayable=1; + id=1944; + type="HeadlessClient_F"; + atlOffset=3.2831268; + }; + class Item29 + { + dataType="Logic"; + class PositionInfo + { + position[]={8384.9014,250.78371,145.58139}; + }; + name="HC4"; + isPlayable=1; + id=1945; + type="HeadlessClient_F"; + atlOffset=1.4683685; + }; + class Item30 + { + dataType="Logic"; + class PositionInfo + { + position[]={8514.8975,244.15259,134.09042}; + angles[]={0.059133004,0,6.1795568}; + }; + name="zeusCurator"; + id=1951; + type="ModuleCurator_F"; + atlOffset=4.5776367e-005; + class CustomAttributes + { + class Attribute0 + { + property="ModuleCurator_F_Owner"; + expression="_this setVariable ['Owner',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute1 + { + property="ModuleCurator_F_Forced"; + expression="_this setVariable ['Forced',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=0; + }; + }; + }; + class Attribute2 + { + property="ModuleCurator_F_Name"; + expression="_this setVariable ['Name',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ModuleInfo"; + expression="false"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=1; + }; + }; + }; + class Attribute4 + { + property="ModuleCurator_F_Addons"; + expression="_this setVariable ['Addons',_value,true];"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=3; + }; + }; + }; + nAttributes=5; + }; + }; + class Item31 + { + dataType="Marker"; + position[]={5834.5659,203.36493,3026.2251}; + name="island_1"; + markerType="RECTANGLE"; + type="rectangle"; + alpha=0; + a=6606.061; + b=6654.5459; + id=2162; + atlOffset=10.838745; + }; + class Item32 + { + dataType="Object"; + class PositionInfo + { + position[]={3956.6445,81.046211,10153.031}; + angles[]={0,3.9309342,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2165; + type="Land_Cargo_Tower_V4_F"; + }; + class Item33 + { + dataType="Object"; + class PositionInfo + { + position[]={4097.4648,81.046211,10294.815}; + angles[]={0,3.9309342,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2166; + type="Land_Cargo_Tower_V4_F"; + }; + class Item34 + { + dataType="Object"; + class PositionInfo + { + position[]={3765.8345,66.118011,9893.0137}; + angles[]={0,1.2399247,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2167; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=-0.048313141; + }; + class Item35 + { + dataType="Object"; + class PositionInfo + { + position[]={3766.0503,65.327194,10415.292}; + angles[]={0,1.7954204,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2168; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=3.8146973e-006; + }; + class Item36 + { + dataType="Object"; + class PositionInfo + { + position[]={8154.9531,28.27046,11133.829}; + angles[]={0.017595299,0,0.0032018756}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2174; + type="Land_HelipadCircle_F"; + atlOffset=-3.8146973e-006; + }; + class Item37 + { + dataType="Object"; + class PositionInfo + { + position[]={7843.6079,151.18547,9850.333}; + angles[]={6.2687874,4.8113737,6.278389}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2175; + type="Land_HelipadCircle_F"; + }; + class Item38 + { + dataType="Object"; + class PositionInfo + { + position[]={7846.27,151.50476,9872.4111}; + angles[]={6.2703872,4.8113737,6.278389}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2176; + type="Land_HelipadCircle_F"; + }; + class Item39 + { + dataType="Object"; + class PositionInfo + { + position[]={7814.0059,151.19188,9853.1553}; + angles[]={6.2767911,4.8113737,0.014398213}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2177; + type="Land_HelipadCircle_F"; + atlOffset=1.5258789e-005; + }; + class Item40 + { + dataType="Object"; + class PositionInfo + { + position[]={7816.3315,151.43637,9876.3535}; + angles[]={6.2703872,4.8113737,0.012798273}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2178; + type="Land_HelipadCircle_F"; + atlOffset=1.5258789e-005; + }; + class Item41 + { + dataType="Object"; + class PositionInfo + { + position[]={7949.5278,163.40681,9874.3906}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2179; + type="Land_Cargo_Tower_V4_F"; + atlOffset=0.048675537; + }; + class Item42 + { + dataType="Object"; + class PositionInfo + { + position[]={7798.228,162.54625,9751.7061}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2180; + type="Land_Cargo_Tower_V4_F"; + atlOffset=-0.00088500977; + }; + class Item43 + { + dataType="Object"; + class PositionInfo + { + position[]={7773.0669,158.7314,9558.6572}; + angles[]={0,3.2889426,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2181; + type="Land_Cargo_Tower_V4_F"; + atlOffset=0.080627441; + }; + class Item44 + { + dataType="Object"; + class PositionInfo + { + position[]={8077.8853,144.5365,9656.5566}; + angles[]={0,0.61641908,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2182; + type="Land_Cargo_Tower_V4_F"; + atlOffset=-3.0517578e-005; + }; + class Item45 + { + dataType="Object"; + class PositionInfo + { + position[]={3494.1072,169.05649,5685.2969}; + angles[]={0,3.0406079,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2190; + type="Land_GuardTower_02_F"; + atlOffset=-4.5776367e-005; + }; + class Item46 + { + dataType="Object"; + class PositionInfo + { + position[]={3498.9336,177.60144,5694.8027}; + angles[]={0,3.0715082,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2191; + type="Land_Cargo_Tower_V4_F"; + atlOffset=-0.096755981; + }; + class Item47 + { + dataType="Object"; + class PositionInfo + { + position[]={3494.4622,164.40901,5744.478}; + angles[]={0,3.0552862,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2192; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=-3.0517578e-005; + }; + class Item48 + { + dataType="Object"; + class PositionInfo + { + position[]={3500.8462,164.60664,5715.2051}; + angles[]={0,3.0441594,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2193; + type="Land_Barracks_02_F"; + atlOffset=1.5258789e-005; + }; + class Item49 + { + dataType="Object"; + class PositionInfo + { + position[]={3472.4558,170.62292,5693.1738}; + angles[]={0,1.4713968,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2196; + type="Land_MobileRadar_01_radar_F"; + atlOffset=-0.27384949; + }; + class Item50 + { + dataType="Object"; + class PositionInfo + { + position[]={3468.8503,166.22726,5678.3784}; + angles[]={0.098877735,3.1902747,0.068690397}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2197; + type="Land_Target_Line_01_F"; + atlOffset=-1.5258789e-005; + }; + class Item51 + { + dataType="Object"; + class PositionInfo + { + position[]={5840.9824,166.43271,6337.3745}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2198; + type="Land_TTowerBig_1_F"; + atlOffset=9.1552734e-005; + }; + class Item52 + { + dataType="Object"; + class PositionInfo + { + position[]={5857.6133,147.40106,6339.5}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2200; + type="Land_Shed_11_F"; + atlOffset=-7.6293945e-005; + }; + class Item53 + { + dataType="Object"; + class PositionInfo + { + position[]={9903.4561,181.64999,3804.269}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2201; + type="Land_HelipadSquare_F"; + }; + class Item54 + { + dataType="Object"; + class PositionInfo + { + position[]={4377.9849,145.89688,6746.6777}; + angles[]={0.0080009829,0.7721172,0.033584893}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2202; + type="Land_HelipadSquare_F"; + atlOffset=1.5258789e-005; + }; + class Item55 + { + dataType="Object"; + class PositionInfo + { + position[]={4417.4463,159.01389,6690.4023}; + angles[]={0,2.4676759,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2203; + type="Land_Cargo_Tower_V4_F"; + atlOffset=0.0030212402; + }; + class Item56 + { + dataType="Object"; + class PositionInfo + { + position[]={4430.77,152.26083,6764.4707}; + angles[]={0,2.3481278,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2204; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=0.1620636; + }; + class Item57 + { + dataType="Object"; + class PositionInfo + { + position[]={4485.7964,151.85199,6678.1299}; + angles[]={0,5.4011674,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2205; + type="Land_Cargo_Patrol_V4_F"; + atlOffset=1.5258789e-005; + }; + }; + class Connections + { + class LinkIDProvider + { + nextID=1; + }; + class Links + { + items=1; + class Item0 + { + linkID=0; + item0=1949; + item1=1778; + class CustomData + { + type="Sync"; + }; + }; + }; + }; +}; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/initVar.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/initVar.sqf index 24655dde..d960d6c1 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/initVar.sqf +++ b/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/initVar.sqf @@ -68,7 +68,7 @@ OT_vehTypes_civignore = ["C_Hatchback_01_F","C_Hatchback_01_sport_F",OT_vehType_ OT_illegalHeadgear = ["H_MilCap_gen_F","H_Beret_gen_F","H_HelmetB_TI_tna_F"]; OT_illegalVests = ["V_TacVest_gen_F"]; -OT_clothes_locals = ["U_C_Man_casual_5_F","U_C_Poloshirt_burgundy","U_I_C_Soldier_Bandit_1_F"]; +OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_stripped"]; OT_clothes_expats = ["U_I_C_Soldier_Bandit_5_F","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Man_casual_6_F","U_C_Man_casual_4_F","U_C_Man_casual_5_F"]; OT_clothes_tourists = []; OT_clothes_priest = "U_C_Man_casual_2_F"; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/mission.sqm b/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/mission.sqm index 22e667c1..e47f218f 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/mission.sqm +++ b/addons/overthrow_main/campaign/missions/OverthrowMpMalden.Malden/mission.sqm @@ -8,7 +8,7 @@ class EditorData toggles=521; class ItemIDProvider { - nextID=2192; + nextID=2242; }; class MarkerIDProvider { @@ -16,11 +16,11 @@ class EditorData }; class LayerIndexProvider { - nextID=489; + nextID=494; }; class Camera { - pos[]={9969.4785,41.097603,2250.3662}; + pos[]={9979.1953,39.674191,2243.5647}; dir[]={-0.66379827,-0.57024205,0.4839859}; up[]={-0.46087089,0.82138848,0.33602798}; aside[]={0.58915716,1.2451783e-006,0.80804467}; @@ -700,7 +700,7 @@ class Mission }; class Entities { - items=58; + items=82; class Item0 { dataType="Layer"; @@ -1939,12 +1939,12 @@ class Mission dataType="Logic"; class PositionInfo { - position[]={9948.8809,21.76203,2266.0591}; - angles[]={0.15319028,0,6.1827245}; + position[]={9945.832,21.683111,2265.5479}; + angles[]={0.10362703,0,6.2328281}; }; id=1778; type="HighCommand"; - atlOffset=0.40873718; + atlOffset=1.1444092e-005; }; class Item13 { @@ -5190,6 +5190,4542 @@ class Mission nAttributes=5; }; }; + class Item58 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9954.9219,21.520063,2261.5325}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2193; + type="I_G_Soldier_F"; + atlOffset=0.36742783; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2192; + atlOffset=0.36742783; + }; + class Item59 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9953.749,21.667042,2260.6958}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2195; + type="I_G_Soldier_F"; + atlOffset=0.36738586; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2194; + atlOffset=0.36738586; + }; + class Item60 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9956.0439,21.379349,2262.3418}; + angles[]={0,2.5345042,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2197; + type="I_G_Soldier_F"; + atlOffset=0.36737823; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2196; + atlOffset=0.36737823; + }; + class Item61 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9951.7754,21.912077,2259.563}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2199; + type="I_G_Soldier_F"; + atlOffset=0.36751938; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2198; + atlOffset=0.36751938; + }; + class Item62 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9952.5205,21.45392,2259.9194}; + angles[]={6.2751846,2.4981596,6.1582398}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2201; + type="I_G_Soldier_F"; + atlOffset=3.8146973e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2200; + atlOffset=3.8146973e-005; + }; + class Item63 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9957.3271,20.689541,2263.574}; + angles[]={0.15319067,2.4981596,6.1550903}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2203; + type="I_G_Soldier_F"; + atlOffset=-6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2202; + atlOffset=-6.1035156e-005; + }; + class Item64 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9958.9033,20.329815,2264.5898}; + angles[]={0.15319067,2.4981596,6.1550903}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2205; + type="I_G_Soldier_F"; + atlOffset=-1.9073486e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2204; + atlOffset=-1.9073486e-005; + }; + class Item65 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9956.2334,21.324631,2256.1323}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2207; + type="I_G_Soldier_F"; + atlOffset=0.36742783; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2206; + atlOffset=0.36742783; + }; + class Item66 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9955.0605,21.465181,2255.2957}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2209; + type="I_G_Soldier_F"; + atlOffset=0.36738586; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2208; + atlOffset=0.36738586; + }; + class Item67 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9957.3555,21.184507,2256.9417}; + angles[]={0,2.5345042,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2211; + type="I_G_Soldier_F"; + atlOffset=0.36737823; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2210; + atlOffset=0.36737823; + }; + class Item68 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9953.0869,21.704151,2254.1628}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2213; + type="I_G_Soldier_F"; + atlOffset=0.36751938; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2212; + atlOffset=0.36751938; + }; + class Item69 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9953.832,21.245996,2254.5193}; + angles[]={6.2751846,2.4981596,6.1582398}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2215; + type="I_G_Soldier_F"; + atlOffset=3.8146973e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2214; + atlOffset=3.8146973e-005; + }; + class Item70 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9958.6387,20.6577,2258.1738}; + angles[]={6.278389,2.4981596,6.1550903}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2217; + type="I_G_Soldier_F"; + atlOffset=-6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2216; + atlOffset=-6.1035156e-005; + }; + class Item71 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9960.2148,20.459597,2259.1897}; + angles[]={6.278389,2.4981596,6.1550903}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2219; + type="I_G_Soldier_F"; + atlOffset=-1.9073486e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2218; + atlOffset=-1.9073486e-005; + }; + class Item72 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9961.2285,20.670782,2253.822}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2221; + type="I_G_Soldier_F"; + atlOffset=0.36742783; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2220; + atlOffset=0.36742783; + }; + class Item73 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9960.0557,20.81776,2252.9854}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2223; + type="I_G_Soldier_F"; + atlOffset=0.36738586; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2222; + atlOffset=0.36738586; + }; + class Item74 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9962.3506,20.530067,2254.6313}; + angles[]={0,2.5345042,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2225; + type="I_G_Soldier_F"; + atlOffset=0.36737823; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2224; + atlOffset=0.36737823; + }; + class Item75 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9958.082,21.058302,2251.8525}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2227; + type="I_G_Soldier_F"; + atlOffset=0.36751938; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2226; + atlOffset=0.36751938; + }; + class Item76 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9958.8271,20.60005,2252.209}; + angles[]={6.2751846,2.4981596,6.1582398}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2229; + type="I_G_Soldier_F"; + atlOffset=3.8146973e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2228; + atlOffset=3.8146973e-005; + }; + class Item77 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9963.6338,19.966072,2255.8635}; + angles[]={6.278389,2.4981596,6.1229706}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2231; + type="I_G_Soldier_F"; + atlOffset=-6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2230; + atlOffset=-6.1035156e-005; + }; + class Item78 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9965.21,19.71627,2256.8794}; + angles[]={6.278389,2.4981596,6.1229706}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2233; + type="I_G_Soldier_F"; + atlOffset=-1.9073486e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2232; + atlOffset=-1.9073486e-005; + }; + class Item79 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9959.8965,20.638798,2247.8137}; + angles[]={0,2.4981596,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2235; + type="I_G_Soldier_F"; + atlOffset=0.36742783; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2234; + atlOffset=0.36742783; + }; + class Item80 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9961.0186,20.561884,2248.623}; + angles[]={0,2.5345042,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2237; + type="I_G_Soldier_F"; + atlOffset=0.36737823; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2236; + atlOffset=0.36737823; + }; + class Item81 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={9962.3018,20.130854,2249.8552}; + angles[]={6.2041502,2.4981596,6.1582398}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2239; + type="I_G_Soldier_F"; + atlOffset=-6.1035156e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2238; + atlOffset=-6.1035156e-005; + }; }; class Connections { diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/initVar.sqf b/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/initVar.sqf index cd36f492..f7e05ec8 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/initVar.sqf +++ b/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/initVar.sqf @@ -70,7 +70,7 @@ OT_vehTypes_civignore = ["C_Hatchback_01_F","C_Hatchback_01_sport_F",OT_vehType_ OT_illegalHeadgear = ["H_MilCap_gen_F","H_Beret_gen_F","H_HelmetB_TI_tna_F"]; OT_illegalVests = ["V_TacVest_gen_F"]; -OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1"]; +OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_stripped"]; OT_clothes_expats = ["U_I_C_Soldier_Bandit_5_F","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Man_casual_6_F","U_C_Man_casual_4_F","U_C_Man_casual_5_F"]; OT_clothes_tourists = []; OT_clothes_priest = "U_C_Man_casual_2_F"; diff --git a/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/mission.sqm b/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/mission.sqm index 0a68e076..c20dfa00 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/mission.sqm +++ b/addons/overthrow_main/campaign/missions/OverthrowMpTanoa.Tanoa/mission.sqm @@ -8,7 +8,7 @@ class EditorData toggles=521; class ItemIDProvider { - nextID=2159; + nextID=2218; }; class MarkerIDProvider { @@ -16,14 +16,14 @@ class EditorData }; class LayerIndexProvider { - nextID=369; + nextID=374; }; class Camera { - pos[]={4503.4336,3.9756446,8431.0977}; - dir[]={-0.84719968,-0.10508521,-0.52095842}; - up[]={-0.089581631,0.99444658,-0.055086479}; - aside[]={-0.5238626,2.4097972e-008,0.85191935}; + pos[]={8260.8291,19.001881,1106.7407}; + dir[]={0,-0.70710683,0.70710683}; + up[]={0,0.70710677,0.70710677}; + aside[]={0.99999994,0,-0}; }; }; binarizationWanted=0; @@ -751,7 +751,7 @@ class Mission }; class Entities { - items=105; + items=136; class Item0 { dataType="Marker"; @@ -5947,6 +5947,7 @@ class Mission }; id=2129; type="Land_Cargo_Tower_V4_F"; + atlOffset=3.8146973e-006; }; class Item84 { @@ -6082,7 +6083,7 @@ class Mission }; id=2147; type="Land_Cargo_Patrol_V4_F"; - atlOffset=-1.4305115e-006; + atlOffset=-1.9073486e-006; }; class Item92 { @@ -6242,7 +6243,7 @@ class Mission class PositionInfo { position[]={4516.9302,4.6032009,8446.6445}; - angles[]={-0,2.631089,6.2352223}; + angles[]={0,2.631089,6.2352223}; }; side="Empty"; flags=4; @@ -6304,6 +6305,4660 @@ class Mission type="Land_Scrap_MRAP_01_F"; atlOffset=2.1934509e-005; }; + class Item105 + { + dataType="Object"; + class PositionInfo + { + position[]={3429.2388,8.9499998,12893.682}; + angles[]={0,4.8003492,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2161; + type="Land_HelipadCircle_F"; + }; + class Item106 + { + dataType="Object"; + class PositionInfo + { + position[]={3392.9512,21.607758,12896.071}; + angles[]={0,4.8485866,0}; + }; + side="Empty"; + flags=5; + class Attributes + { + }; + id=2162; + type="Land_Cargo_Tower_V4_F"; + atlOffset=0.00024414063; + }; + class Item107 + { + dataType="Object"; + class PositionInfo + { + position[]={3871.2893,10.546876,13415.423}; + angles[]={0,4.1320949,0.0053265258}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2163; + type="Land_HelipadCircle_F"; + atlOffset=-1.9073486e-006; + }; + class Item108 + { + dataType="Object"; + class PositionInfo + { + position[]={2440.8999,13.069401,13339.366}; + angles[]={6.2618566,0,0.010664274}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2164; + type="Land_HelipadCircle_F"; + atlOffset=-3.1471252e-005; + }; + class Item109 + { + dataType="Object"; + class PositionInfo + { + position[]={2461.844,13.444878,13340.579}; + angles[]={6.2805333,0,0}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2165; + type="Land_HelipadCircle_F"; + atlOffset=-2.8610229e-006; + }; + class Item110 + { + dataType="Object"; + class PositionInfo + { + position[]={2480.9561,13.503531,13341.323}; + angles[]={0,0,0.010664274}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2166; + type="Land_HelipadCircle_F"; + atlOffset=-9.5367432e-007; + }; + class Item111 + { + dataType="Object"; + class PositionInfo + { + position[]={2251.0854,14.103055,6282.2241}; + angles[]={0.1141679,0.23101319,0.031990308}; + }; + side="Empty"; + flags=4; + class Attributes + { + }; + id=2167; + type="Land_HelipadCircle_F"; + atlOffset=6.7710876e-005; + }; + class Item112 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8265.3174,1.8952969,1126.8179}; + angles[]={0,2.1661577,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2169; + type="I_G_Soldier_F"; + atlOffset=0.54896295; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2168; + atlOffset=0.54896295; + }; + class Item113 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8262.6611,1.0948181,1122.9812}; + angles[]={6.1716504,2.1843338,0.010664274}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2171; + type="I_G_Soldier_F"; + atlOffset=2.0503998e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2170; + atlOffset=2.0503998e-005; + }; + class Item114 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8259.5088,0.75956953,1118.8037}; + angles[]={6.2405448,2.2503321,6.2805109}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2173; + type="I_G_Soldier_F"; + atlOffset=-1.6689301e-006; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2172; + atlOffset=-1.6689301e-006; + }; + class Item115 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8261.8984,0.95479572,1121.8038}; + angles[]={6.1716504,2.0850353,0.010664274}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2175; + type="I_G_Soldier_F"; + atlOffset=-1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2174; + atlOffset=-1.9073486e-006; + }; + class Item116 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8260.793,0.97869962,1120.3071}; + angles[]={6.2325635,2.2371347,0.0053265258}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2177; + type="I_G_Soldier_F"; + atlOffset=0.14000368; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2176; + atlOffset=0.14000368; + }; + class Item117 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8264.4209,1.7068113,1125.4578}; + angles[]={0,2.146431,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2179; + type="I_G_Soldier_F"; + atlOffset=0.42799211; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2178; + atlOffset=0.42799211; + }; + class Item118 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8263.4658,1.4250996,1123.9749}; + angles[]={0,2.1167357,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2181; + type="I_G_Soldier_F"; + atlOffset=0.25000322; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2180; + atlOffset=0.25000322; + }; + class Item119 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8256.0693,2.4110506,1131.6703}; + angles[]={0,2.1661577,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2183; + type="I_G_Soldier_F"; + atlOffset=0.54896283; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2182; + atlOffset=0.54896283; + }; + class Item120 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8253.4131,1.4975543,1127.8336}; + angles[]={6.1954122,2.1843338,0.055941612}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2185; + type="I_G_Soldier_F"; + atlOffset=2.0503998e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2184; + atlOffset=2.0503998e-005; + }; + class Item121 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8250.2607,0.92806309,1123.6561}; + angles[]={6.1769204,2.2503321,0.058599081}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2187; + type="I_G_Soldier_F"; + atlOffset=-1.6689301e-006; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2186; + atlOffset=-1.6689301e-006; + }; + class Item122 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8252.6504,1.351216,1126.6563}; + angles[]={6.1954122,2.0850353,0.055941612}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2189; + type="I_G_Soldier_F"; + atlOffset=-1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2188; + atlOffset=-1.9073486e-006; + }; + class Item123 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8251.5449,1.2976232,1125.1595}; + angles[]={6.1954122,2.2371347,0.055941612}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2191; + type="I_G_Soldier_F"; + atlOffset=0.14000368; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2190; + atlOffset=0.14000368; + }; + class Item124 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8255.1729,2.1400084,1130.3102}; + angles[]={0,2.146431,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2193; + type="I_G_Soldier_F"; + atlOffset=0.42799211; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2192; + atlOffset=0.42799211; + }; + class Item125 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8254.2178,1.8440038,1128.8273}; + angles[]={0,2.1167357,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2195; + type="I_G_Soldier_F"; + atlOffset=0.25000322; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2194; + atlOffset=0.25000322; + }; + class Item126 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8249.7256,2.380326,1133.9282}; + angles[]={0,2.1661577,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2197; + type="I_G_Soldier_F"; + atlOffset=0.54896307; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2196; + atlOffset=0.54896307; + }; + class Item127 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8247.0693,1.3619318,1130.0916}; + angles[]={6.2033563,2.1843338,0.045302324}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2199; + type="I_G_Soldier_F"; + atlOffset=2.0503998e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2198; + atlOffset=2.0503998e-005; + }; + class Item128 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8246.3066,1.2331471,1128.9142}; + angles[]={6.2033563,2.0850353,0.045302324}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2203; + type="I_G_Soldier_F"; + atlOffset=-1.9073486e-006; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2202; + atlOffset=-1.9073486e-006; + }; + class Item129 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8245.2012,1.1764953,1127.4175}; + angles[]={6.1901217,2.2371347,0.053282689}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2205; + type="I_G_Soldier_F"; + atlOffset=0.14000368; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2204; + atlOffset=0.14000368; + }; + class Item130 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8248.8291,2.0817881,1132.5681}; + angles[]={0,2.146431,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2207; + type="I_G_Soldier_F"; + atlOffset=0.42799211; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2206; + atlOffset=0.42799211; + }; + class Item131 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8247.874,1.7287419,1131.0852}; + angles[]={0,2.1167357,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2209; + type="I_G_Soldier_F"; + atlOffset=0.25000322; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2208; + atlOffset=0.25000322; + }; + class Item132 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8264.4814,1.4480219,1120.8204}; + angles[]={0,2.1661577,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2211; + type="I_G_Soldier_F"; + atlOffset=0.54896283; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2210; + atlOffset=0.54896283; + }; + class Item133 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8261.8252,0.66678041,1116.9838}; + angles[]={6.2166171,2.1843338,0.0053377044}; + }; + side="Independent"; + flags=6; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2213; + type="I_G_Soldier_F"; + atlOffset=2.0503998e-005; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2212; + atlOffset=2.0503998e-005; + }; + class Item134 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8263.585,1.2413234,1119.4603}; + angles[]={0,2.146431,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2215; + type="I_G_Soldier_F"; + atlOffset=0.42799211; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2214; + atlOffset=0.42799211; + }; + class Item135 + { + dataType="Group"; + side="Independent"; + class Entities + { + items=1; + class Item0 + { + dataType="Object"; + class PositionInfo + { + position[]={8262.6299,0.98046219,1117.9774}; + angles[]={0,2.1167357,0}; + }; + side="Independent"; + flags=2; + class Attributes + { + rank="COLONEL"; + init="this setCaptive true;"; + isPlayable=1; + class Inventory + { + class uniform + { + typeName="U_IG_Guerilla1_1"; + isBackpack=0; + class ItemCargo + { + items=1; + class Item0 + { + name="FirstAidKit"; + count=1; + }; + }; + }; + map="ItemMap"; + }; + }; + id=2217; + type="I_G_Soldier_F"; + atlOffset=0.25000322; + class CustomAttributes + { + class Attribute0 + { + property="ace_isSurrendered"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleSurrender}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute1 + { + property="ace_isEngineer"; + expression="if !(_value == ([0,1] select (_this getUnitTrait 'engineer'))|| {_value == -1}) then {_this setVariable ['ace_isEngineer', _value, true]}"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + class Attribute2 + { + property="face"; + expression="_this setface _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value=""; + }; + }; + }; + class Attribute3 + { + property="ace_isHandcuffed"; + expression="if (_value) then {[objNull, [_this], true] call ace_captives_fnc_moduleHandcuffed}"; + class Value + { + class data + { + class type + { + type[]= + { + "BOOL" + }; + }; + value=0; + }; + }; + }; + class Attribute4 + { + property="pitch"; + expression="_this setpitch _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=1; + }; + }; + }; + class Attribute5 + { + property="speaker"; + expression="_this setspeaker _value;"; + class Value + { + class data + { + class type + { + type[]= + { + "STRING" + }; + }; + value="Male01ENGB"; + }; + }; + }; + class Attribute6 + { + property="ace_isMedic"; + expression="if (_value > -1) then {_this setVariable [""ace_medical_medicClass"", _value, true];};"; + class Value + { + class data + { + class type + { + type[]= + { + "SCALAR" + }; + }; + value=2; + }; + }; + }; + nAttributes=7; + }; + }; + }; + class Attributes + { + }; + id=2216; + atlOffset=0.25000322; + }; }; class Connections { diff --git a/addons/overthrow_main/campaign/missions/OverthrowSpAltis.Altis/initVar.sqf b/addons/overthrow_main/campaign/missions/OverthrowSpAltis.Altis/initVar.sqf index a040202e..3cc7c8d2 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowSpAltis.Altis/initVar.sqf +++ b/addons/overthrow_main/campaign/missions/OverthrowSpAltis.Altis/initVar.sqf @@ -68,7 +68,7 @@ OT_vehTypes_civignore = ["C_Hatchback_01_F","C_Hatchback_01_sport_F",OT_vehType_ OT_illegalHeadgear = ["H_MilCap_gen_F","H_Beret_gen_F","H_HelmetB_TI_tna_F"]; OT_illegalVests = ["V_TacVest_gen_F"]; -OT_clothes_locals = ["U_C_Man_casual_5_F","U_C_Poloshirt_burgundy","U_I_C_Soldier_Bandit_1_F"]; +OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_stripped"]; OT_clothes_expats = ["U_I_C_Soldier_Bandit_5_F","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Man_casual_6_F","U_C_Man_casual_4_F","U_C_Man_casual_5_F"]; OT_clothes_tourists = []; OT_clothes_priest = "U_C_Man_casual_2_F"; diff --git a/addons/overthrow_main/campaign/missions/OverthrowSpMalden.Malden/initVar.sqf b/addons/overthrow_main/campaign/missions/OverthrowSpMalden.Malden/initVar.sqf index 939a0fa0..6b0798e2 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowSpMalden.Malden/initVar.sqf +++ b/addons/overthrow_main/campaign/missions/OverthrowSpMalden.Malden/initVar.sqf @@ -68,7 +68,7 @@ OT_vehTypes_civignore = ["C_Hatchback_01_F","C_Hatchback_01_sport_F",OT_vehType_ OT_illegalHeadgear = ["H_MilCap_gen_F","H_Beret_gen_F","H_HelmetB_TI_tna_F"]; OT_illegalVests = ["V_TacVest_gen_F"]; -OT_clothes_locals = ["U_C_Man_casual_5_F","U_C_Poloshirt_burgundy","U_I_C_Soldier_Bandit_1_F"]; +OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_stripped"]; OT_clothes_expats = ["U_I_C_Soldier_Bandit_5_F","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Man_casual_6_F","U_C_Man_casual_4_F","U_C_Man_casual_5_F"]; OT_clothes_tourists = []; OT_clothes_priest = "U_C_Man_casual_2_F"; diff --git a/addons/overthrow_main/campaign/missions/OverthrowSpTanoa.Tanoa/initVar.sqf b/addons/overthrow_main/campaign/missions/OverthrowSpTanoa.Tanoa/initVar.sqf index cd36f492..f7e05ec8 100644 --- a/addons/overthrow_main/campaign/missions/OverthrowSpTanoa.Tanoa/initVar.sqf +++ b/addons/overthrow_main/campaign/missions/OverthrowSpTanoa.Tanoa/initVar.sqf @@ -70,7 +70,7 @@ OT_vehTypes_civignore = ["C_Hatchback_01_F","C_Hatchback_01_sport_F",OT_vehType_ OT_illegalHeadgear = ["H_MilCap_gen_F","H_Beret_gen_F","H_HelmetB_TI_tna_F"]; OT_illegalVests = ["V_TacVest_gen_F"]; -OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1"]; +OT_clothes_locals = ["U_I_C_Soldier_Bandit_2_F","U_I_C_Soldier_Bandit_3_F","U_C_Poor_1","U_C_Poor_2","U_C_Poor_shorts_1","U_C_Poor_shorts_2","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_stripped"]; OT_clothes_expats = ["U_I_C_Soldier_Bandit_5_F","U_C_Poloshirt_blue","U_C_Poloshirt_burgundy","U_C_Poloshirt_redwhite","U_C_Poloshirt_salmon","U_C_Poloshirt_stripped","U_C_Man_casual_6_F","U_C_Man_casual_4_F","U_C_Man_casual_5_F"]; OT_clothes_tourists = []; OT_clothes_priest = "U_C_Man_casual_2_F"; diff --git a/addons/overthrow_main/config.cpp b/addons/overthrow_main/config.cpp index 9a69cf1c..ce95fe66 100644 --- a/addons/overthrow_main/config.cpp +++ b/addons/overthrow_main/config.cpp @@ -123,6 +123,10 @@ class CfgMissions { directory="overthrow_main\campaign\missions\OverthrowMpMalden.Malden"; }; + class OverthrowMpLivonia + { + directory="overthrow_main\campaign\missions\OverthrowMpLivonia.Enoch"; + }; }; }; diff --git a/addons/overthrow_main/data/prices.sqf b/addons/overthrow_main/data/prices.sqf index 047b2c0f..0f1bb1cd 100644 --- a/addons/overthrow_main/data/prices.sqf +++ b/addons/overthrow_main/data/prices.sqf @@ -644,13 +644,13 @@ OT_priceData = [ ['C_Boat_Civil_01_rescue_F',[4800,0,30,2]], ['C_Boat_Transport_02_F',[4000,0,25,2]], //Static Weapon Backpacks -['I_HMG_01_high_weapon_F',[1500,1,0,1]], -['I_GMG_01_high_weapon_F',[3500,1,0,1]], +['I_HMG_01_high_weapon_F',[2000,1,0,1]], +['I_GMG_01_high_weapon_F',[4000,1,0,1]], ['I_HMG_01_support_high_F',[50,1,0,0]], -['I_Mortar_01_weapon_F',[6000,1,0,1]], +['I_Mortar_01_weapon_F',[9000,1,0,1]], ['I_Mortar_01_support_F',[100,1,0,0]], -['I_AT_01_weapon_F',[2500,1,0,1]], -['I_AA_01_weapon_F',[2500,1,0,1]], +['I_AT_01_weapon_F',[10000,1,0,1]], +['I_AA_01_weapon_F',[10000,1,0,1]], ['I_HMG_01_support_F',[50,1,0,0]], //Vests ['V_BandollierB_khk',[40,0,2,0]], diff --git a/addons/overthrow_main/functions/AI/NPC/fn_applyIdentity.sqf b/addons/overthrow_main/functions/AI/NPC/fn_applyIdentity.sqf index f25a8859..9dd2e84b 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_applyIdentity.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_applyIdentity.sqf @@ -6,6 +6,9 @@ _identity params ["_face","_clothes","_name","_glasses"]; [_unit, _face] remoteExecCall ["setFace", 0, _unit]; //Clothes +if(isNil "_clothes") then { + _clothes = selectRandom OT_clothes_locals; +}; _unit forceAddUniform _clothes; //Name diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initCivilian.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initCivilian.sqf index b08c6396..50ec0267 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initCivilian.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initCivilian.sqf @@ -18,7 +18,10 @@ _unit addEventHandler ["FiredNear", { _group = group _u; if !(_group getVariable ["fleeing",false]) then { _group setVariable ["fleeing",true,false]; + _group setVariable ["fleeingstart",time,false]; _group setBehaviour "COMBAT"; - _by = _this select 1; + _by = _this select 1; }; }]; + +_unit addEventHandler ["Dammaged", OT_fnc_EnemyDamagedHandler]; diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initCivilianGroup.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initCivilianGroup.sqf index beecb64a..c297bf79 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initCivilianGroup.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initCivilianGroup.sqf @@ -4,7 +4,7 @@ private _start = getPosATL ((units _g) select 0); if(isNil "_start") exitWith {}; if(typename _start isEqualTo "BOOL") exitWith {}; -_g setVariable ["VCM_Disable",true]; +_g setVariable ["VCM_Disable",true,true]; _g setBehaviour "SAFE"; diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initCrimLeader.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initCrimLeader.sqf index 2e74c579..0e1b11c0 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initCrimLeader.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initCrimLeader.sqf @@ -54,11 +54,11 @@ _unit linkItem "ItemWatch"; _weapon = (OT_CRIM_Weapons + OT_allCheapRifles) call BIS_fnc_selectRandom; _base = [_weapon] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addWeapon _weapon; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addWeaponGlobal _weapon; _config = configfile >> "CfgWeapons" >> _weapon >> "WeaponSlotsInfo"; _numslots = count(_config); @@ -84,7 +84,7 @@ for "_i" from 0 to (_numslots-1) do { }; _weapon = OT_allHandguns call BIS_fnc_selectRandom; -_unit addWeapon _weapon; +_unit addWeaponGlobal _weapon; _base = [_weapon] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0; if !(isNil "_magazine") then { @@ -92,3 +92,5 @@ if !(isNil "_magazine") then { }; _unit addGoggles (OT_CRIM_Goggles call BIS_fnc_selectRandom); + +_unit addEventHandler ["Dammaged", OT_fnc_EnemyDamagedHandler]; diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initCriminal.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initCriminal.sqf index f55230e3..71999449 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initCriminal.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initCriminal.sqf @@ -51,14 +51,14 @@ _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select if (isNil "_magazine") then {_weapon = (OT_allHandguns) call BIS_fnc_selectRandom;_base = [_weapon] call BIS_fnc_baseWeapon;_magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0;}; if !(isNil "_magazine") then { - _unit addMagazineGlobal _magazine; - _unit addMagazineGlobal _magazine; - _unit addMagazineGlobal _magazine; - _unit addMagazineGlobal _magazine; - _unit addMagazineGlobal _magazine; + _unit addMagazine _magazine; + _unit addMagazine _magazine; + _unit addMagazine _magazine; + _unit addMagazine _magazine; + _unit addMagazine _magazine; }; -_unit addWeapon _weapon; +_unit addWeaponGlobal _weapon; if((random 100) < 15) then { _unit addItem "OT_Ganja"; @@ -113,3 +113,5 @@ if((random 100) > 90) then { }; _unit addGoggles (OT_CRIM_Goggles call BIS_fnc_selectRandom); + +_unit addEventHandler ["Dammaged", OT_fnc_EnemyDamagedHandler]; diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initGendarm.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initGendarm.sqf index 52f164d1..4e16673b 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initGendarm.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initGendarm.sqf @@ -57,12 +57,13 @@ _weapon = selectRandom OT_allBLUSMG; if((call OT_fnc_getControlledPopulation) > 1000) then { _weapon = selectRandom OT_allBLURifles; }; -_base = [_weapon] call BIS_fnc_baseWeapon; -_magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; +_magazine = (getArray (configFile / "CfgWeapons" / _weapon / "magazines")) select 0; _unit addWeaponGlobal _weapon; +_unit addWeaponItem [_weapon, _magazine]; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit selectWeapon _weapon; if(_hour > 17 || _hour < 6) then { _unit addPrimaryWeaponItem "acc_flashlight"; @@ -75,6 +76,8 @@ if((random 100) > 80) exitWith { _weapon = OT_allBLUPistols call BIS_fnc_selectRandom; _base = [_weapon] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; _unit addWeaponGlobal _weapon; + +_unit addEventHandler ["Dammaged", OT_fnc_EnemyDamagedHandler]; diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initMilitary.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initMilitary.sqf index 0d0f5da7..6ae6355e 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initMilitary.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initMilitary.sqf @@ -37,7 +37,7 @@ if((random 100) > 25) then { selectRandom OT_allBLURifles; }; - _unit addWeapon _wpn; + //put accessories back (where possible) { _unit addWeaponItem [_wpn, _x]; @@ -45,14 +45,22 @@ if((random 100) > 25) then { _magazines = getArray (configFile / "CfgWeapons" / _wpn / "magazines"); - _mag = selectRandom _magazines; - _unit addWeaponItem [_wpn, _mag]; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; + _mag = ""; + { + _scope = getNumber (configFile >> "CfgMagazines" >> _x >> "scope"); + if(_scope > 1) exitWith {_mag = _x}; + }foreach([_magazines,[],{random 100},"ASCEND"] call BIS_fnc_sortBy); + + if !(_mag isEqualTo "") then { + _unit addWeaponItem [_wpn, _mag]; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + }; + _unit addWeaponGlobal _wpn; _secondmags = []; { @@ -62,13 +70,18 @@ if((random 100) > 25) then { }foreach(getArray (configFile / "CfgWeapons" / _wpn / "muzzles")); if((count _secondmags) > 0) then { _mag = _secondmags select 0; - _unit addWeaponItem [_wpn, _mag]; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; + + _mag = ""; + _scope = getNumber (configFile >> "CfgMagazines" >> _mag >> "scope"); + if(_scope > 1) then { + _unit addWeaponItem [_wpn, _mag]; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; + }; }; //Secondary Weapon @@ -88,14 +101,19 @@ if((random 100) > 25) then { }; }foreach(_stock); _wpn = selectRandom OT_allBLULaunchers; - _unit addWeapon _wpn; + _unit addWeaponGlobal _wpn; _magazines = getArray (configFile / "CfgWeapons" / _wpn / "magazines"); - _mag = selectRandom _magazines; - if !(_mag isEqualTo "ACE_PreloadedMissileDummy") then { + _mag = ""; + { + _scope = getNumber (configFile >> "CfgMagazines" >> _x >> "scope"); + if(_scope > 1) exitWith {_mag = _x}; + }foreach([_magazines,[],{random 100},"ASCEND"] call BIS_fnc_sortBy); + + if !(_mag isEqualTo "") then { _unit addWeaponItem [_wpn, _mag]; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; + _unit addMagazine _mag; + _unit addMagazine _mag; }else{ removeBackpack _unit; }; @@ -118,13 +136,20 @@ if((random 100) > 25) then { }foreach(_stock); _wpn = selectRandom OT_allBLUPistols; - _unit addWeapon _wpn; + _unit addWeaponGlobal _wpn; _magazines = getArray (configFile / "CfgWeapons" / _wpn / "magazines"); - _mag = selectRandom _magazines; - _unit addWeaponItem [_wpn, _mag]; - _unit addMagazineGlobal _mag; - _unit addMagazineGlobal _mag; + _mag = ""; + { + _scope = getNumber (configFile >> "CfgMagazines" >> _x >> "scope"); + if(_scope > 1) exitWith {_mag = _x}; + }foreach([_magazines,[],{random 100},"ASCEND"] call BIS_fnc_sortBy); + + if !(_mag isEqualTo "") then { + _unit addWeaponItem [_wpn, _mag]; + _unit addMagazine _mag; + _unit addMagazine _mag; + }; _unit selectWeapon (primaryWeapon _unit); @@ -139,3 +164,5 @@ _unit addEventHandler ["HandleDamage", { }; }; }]; + +_unit addEventHandler ["Dammaged", OT_fnc_UnitDamagedHandler]; diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initMobBoss.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initMobBoss.sqf index 9b26dcd6..eaf5d5b4 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initMobBoss.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initMobBoss.sqf @@ -28,7 +28,7 @@ removeAllWeapons _unit; removeVest _unit; removeAllAssignedItems _unit; -_unit addWeapon "Laserdesignator_02_ghex_F"; +_unit addWeaponGlobal "Laserdesignator_02_ghex_F"; _unit addGoggles "G_Bandanna_beast"; _unit addHeadgear "H_Booniehat_khk_hs"; @@ -51,14 +51,14 @@ _unit linkItem "ACE_Cellphone"; _weapon = (OT_CRIM_Weapons + OT_allCheapRifles) call BIS_fnc_selectRandom; _base = [_weapon] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addWeapon _weapon; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addWeaponGlobal _weapon; _config = configfile >> "CfgWeapons" >> _weapon >> "WeaponSlotsInfo"; _numslots = count(_config); @@ -82,7 +82,7 @@ for "_i" from 0 to (_numslots-1) do { }; _weapon = OT_allHandguns call BIS_fnc_selectRandom; -_unit addWeapon _weapon; +_unit addWeaponGlobal _weapon; _base = [_weapon] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0; if !(isNil "_magazine") then { diff --git a/addons/overthrow_main/functions/AI/NPC/fn_initMobster.sqf b/addons/overthrow_main/functions/AI/NPC/fn_initMobster.sqf index 7b8b4cc7..4bb29fd8 100644 --- a/addons/overthrow_main/functions/AI/NPC/fn_initMobster.sqf +++ b/addons/overthrow_main/functions/AI/NPC/fn_initMobster.sqf @@ -28,7 +28,7 @@ removeAllWeapons _unit; removeVest _unit; removeAllAssignedItems _unit; -_unit addWeapon "Laserdesignator_02_ghex_F"; +_unit addWeaponGlobal "Laserdesignator_02_ghex_F"; _unit addGoggles "G_Bandanna_beast"; _unit addHeadgear "H_Booniehat_khk"; @@ -55,7 +55,7 @@ if((random 100) < 15) then { _weapon = (OT_CRIM_Weapons) call BIS_fnc_selectRandom; -_unit addWeapon _weapon; +_unit addWeaponGlobal _weapon; [_unit] call { params ["_unit"]; @@ -65,10 +65,10 @@ _unit addWeapon _weapon; _launcher = OT_CRIM_Launchers select 0; _base = [_launcher] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) call BIS_fnc_SelectRandom; - _unit addMagazineGlobal _magazine; - _unit addMagazineGlobal _magazine; - _unit addMagazineGlobal _magazine; - _unit addWeapon _launcher; + _unit addMagazine _magazine; + _unit addMagazine _magazine; + _unit addMagazine _magazine; + _unit addWeaponGlobal _launcher; }; if((random 100) > 85) exitWith { //This is a medic @@ -103,11 +103,11 @@ _unit addWeapon _weapon; _base = [_weapon] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) call BIS_fnc_SelectRandom; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; -_unit addMagazineGlobal _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; +_unit addMagazine _magazine; if((random 100) > 80) then { _unit addItem "SmokeShell"; @@ -145,7 +145,7 @@ for "_i" from 0 to (_numslots-1) do { }; _weapon = OT_allHandguns call BIS_fnc_selectRandom; -_unit addWeapon _weapon; +_unit addWeaponGlobal _weapon; _base = [_weapon] call BIS_fnc_baseWeapon; _magazine = (getArray (configFile / "CfgWeapons" / _base / "magazines")) select 0; if !(isNil "_magazine") then { diff --git a/addons/overthrow_main/functions/AI/fn_getSoldier.sqf b/addons/overthrow_main/functions/AI/fn_getSoldier.sqf index 16740231..6d9495b9 100644 --- a/addons/overthrow_main/functions/AI/fn_getSoldier.sqf +++ b/addons/overthrow_main/functions/AI/fn_getSoldier.sqf @@ -72,12 +72,14 @@ private _itemqty = _allitems call BIS_fnc_consolidateArray; private _bought = []; { _x params ["_cls","_num"]; - _whqty = _cls call OT_fnc_qtyInWarehouse; - if(_whqty < _num) then {_num = _num - _whqty} else {_num = 0}; - if(_num > 0) then { - _cost = _cost + (([OT_nation,_cls,30] call OT_fnc_getPrice) * _num); - _bought pushback [_cls,_num]; - }; + if !(_cls isEqualTo "ItemMap") then { + _whqty = _cls call OT_fnc_qtyInWarehouse; + if(_whqty < _num) then {_num = _num - _whqty} else {_num = 0}; + if(_num > 0) then { + _cost = _cost + (([OT_nation,_cls,30] call OT_fnc_getPrice) * _num); + _bought pushback [_cls,_num]; + }; + }; }foreach(_itemqty); -[_cost,_cls,_loadout,_clothes,_allitems] +[_cost,_cls,_loadout,_clothes,_allitems,_bought] diff --git a/addons/overthrow_main/functions/AI/orders/fn_landAndCleanupHelicopter.sqf b/addons/overthrow_main/functions/AI/orders/fn_landAndCleanupHelicopter.sqf new file mode 100644 index 00000000..81f798ba --- /dev/null +++ b/addons/overthrow_main/functions/AI/orders/fn_landAndCleanupHelicopter.sqf @@ -0,0 +1,22 @@ +params ["_veh","_pos","_group"]; + + +while {(count (waypoints _group)) > 0} do { + deleteWaypoint ((waypoints _group) select 0); +}; + +_veh move _pos; + +sleep 3; + +while {((alive _veh) && !(unitReady _veh))} do +{ + sleep 1; +}; + +if(alive _veh) then { + _veh land "LAND"; + waitUntil{sleep 10;(getpos _veh)#2 < 2}; +}; +[_veh,true] call OT_fnc_cleanup; +[_group,true] call OT_fnc_cleanup; diff --git a/addons/overthrow_main/functions/AI/orders/fn_orderLoot.sqf b/addons/overthrow_main/functions/AI/orders/fn_orderLoot.sqf index b3f897d6..5d49bfbc 100644 --- a/addons/overthrow_main/functions/AI/orders/fn_orderLoot.sqf +++ b/addons/overthrow_main/functions/AI/orders/fn_orderLoot.sqf @@ -101,12 +101,12 @@ private _target = _sorted select 0; _unit doMove getpos _deadguy; [_unit,1] call OT_fnc_experience; - waitUntil {sleep 1; (!alive _unit) || (isNull _t) || (_unit distance _deadguy < 12) || (_timeOut < time)}; - if((!alive _unit) || (_timeOut < time)) exitWith {}; + waitUntil {sleep 1; (!alive _unit) || (isNull _t) || (_unit distance2D _deadguy < 12) || (_timeOut < time)}; + if((!alive _unit) || (_timeOut < time)) exitWith {_unit globalchat "Cant get to a body, cancelling loot order"}; [_deadguy,_unit] call OT_fnc_takeStuff; sleep 2; - deleteVehicle _deadguy; + _deadguy remoteExecCall ["deleteVehicle",_deadguy]; _timeout = time + 30; _unit doMove getpos _t; waitUntil {sleep 1; (!alive _unit) || (isNull _t) || (_unit distance _t < 12) || (_timeOut < time)}; diff --git a/addons/overthrow_main/functions/UI/dialogs/fn_buyDialog.sqf b/addons/overthrow_main/functions/UI/dialogs/fn_buyDialog.sqf index 0a5611db..f59659b0 100644 --- a/addons/overthrow_main/functions/UI/dialogs/fn_buyDialog.sqf +++ b/addons/overthrow_main/functions/UI/dialogs/fn_buyDialog.sqf @@ -20,7 +20,7 @@ lbClear 1500; _pic = _cls call OT_fnc_glassesGetPic; [_name, _pic] }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _name = _cls call OT_fnc_magazineGetName; _pic = _cls call OT_fnc_magazineGetPic; [_name, _pic] diff --git a/addons/overthrow_main/functions/UI/dialogs/fn_gunDealerDialog.sqf b/addons/overthrow_main/functions/UI/dialogs/fn_gunDealerDialog.sqf index d1736c39..b84f718b 100644 --- a/addons/overthrow_main/functions/UI/dialogs/fn_gunDealerDialog.sqf +++ b/addons/overthrow_main/functions/UI/dialogs/fn_gunDealerDialog.sqf @@ -63,7 +63,7 @@ createDialog "OT_dialog_buy"; _txt = "Quadbike w/ HMG Backpacks"; _pic = "C_Quadbike_01_F" call OT_fnc_magazineGetPic; }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _txt = format["--- %1",_cls call OT_fnc_magazineGetName]; _pic = _cls call OT_fnc_magazineGetPic; }; diff --git a/addons/overthrow_main/functions/UI/dialogs/fn_logisticsDialog.sqf b/addons/overthrow_main/functions/UI/dialogs/fn_logisticsDialog.sqf new file mode 100644 index 00000000..fcb73687 --- /dev/null +++ b/addons/overthrow_main/functions/UI/dialogs/fn_logisticsDialog.sqf @@ -0,0 +1,44 @@ +closedialog 0; +createDialog "OT_dialog_logistics"; +lbClear 1500; +{ + private _veh = _x; + private _cls = typeof _veh; + if((_veh call OT_fnc_hasOwner) && ((_cls isKindOf "LandVehicle") || (_cls isKindOf "Air") || (_cls isKindOf "Ship"))) then { + private _name = _cls call OT_fnc_vehicleGetName; + private _pic = _cls call OT_fnc_vehicleGetPic; + private _dis = round(_veh distance player); + private _t = "m"; + if(_dis > 999) then { + _dis = (_dis / 1000) toFixed 1; + _t = "km"; + }; + + _idx = lbAdd [1500,format["%1 (%2%3)",_name,_dis,_t]]; + lbSetPicture [1500,_idx,_pic]; + lbSetData [1500,_idx,_veh call BIS_fnc_netId]; + private _color = [0.9,0.9,0.9,1]; + + private _totalAmmo = 0; + private _turrets = "!((configName _x) select [0,5] == ""Cargo"") && !((count getArray (_x >> ""magazines"")) isEqualTo 0)" configClasses (configfile >> "CfgVehicles" >> _cls >> "Turrets"); + private _hasAmmo = (count _turrets) > 0; + { + _x params ["_ammocls","_num"]; + _totalAmmo = _totalAmmo + _num; + }foreach(magazinesAmmo _veh); + + private _lowFuel = (fuel _veh) < 0.2; + + if !(_veh call OT_fnc_vehicleCanMove) then { + //red + _color = [0.9,0.4,0.4,1]; + }else{ + if ((_hasAmmo && _totalAmmo isEqualTo 0) || _lowFuel) then { + //yellow + _color = [0.85,0.85,0,1]; + }; + }; + + lbSetColor [1500,_idx,_color]; + }; +}foreach([vehicles,[],{_x distance player},"ASCEND"] call BIS_fnc_SortBy); diff --git a/addons/overthrow_main/functions/UI/dialogs/fn_warehouseDialog.sqf b/addons/overthrow_main/functions/UI/dialogs/fn_warehouseDialog.sqf index 137ed415..c3af3627 100644 --- a/addons/overthrow_main/functions/UI/dialogs/fn_warehouseDialog.sqf +++ b/addons/overthrow_main/functions/UI/dialogs/fn_warehouseDialog.sqf @@ -6,8 +6,8 @@ private _numitems = 0; { private _d = warehouse getVariable [_x,false]; if(_d isEqualType []) then { - _d params ["_cls", ["_num",0,[0]]]; - if (!(_cls isEqualType {}) && _num > 0) then { + _d params [["_cls","",[""]], ["_num",0,[0]]]; + if ((_cls isEqualType "") && _num > 0) then { _numitems = _numitems + 1; ([_cls] call { params ["_cls"]; diff --git a/addons/overthrow_main/functions/UI/dialogs/fn_workshopDialog.sqf b/addons/overthrow_main/functions/UI/dialogs/fn_workshopDialog.sqf index 4fa5d070..5e5f6f96 100644 --- a/addons/overthrow_main/functions/UI/dialogs/fn_workshopDialog.sqf +++ b/addons/overthrow_main/functions/UI/dialogs/fn_workshopDialog.sqf @@ -11,7 +11,7 @@ lbClear 1500; { _x params ["_name","_type","_price","_free","_do"]; if(_type == "" || _type == (typeof _veh)) then { - _price = [0,_do] call OT_fnc_getPrice; + _price = [OT_nation,_free] call OT_fnc_getPrice; _price = [_price, 0] select ((backpack player) isEqualTo _free); private _pic = _do call OT_fnc_vehicleGetPic; private _idx = lbAdd [1500,format["%1",_name]]; diff --git a/addons/overthrow_main/functions/UI/display/fn_displayLogisticDetails.sqf b/addons/overthrow_main/functions/UI/display/fn_displayLogisticDetails.sqf new file mode 100644 index 00000000..42af83df --- /dev/null +++ b/addons/overthrow_main/functions/UI/display/fn_displayLogisticDetails.sqf @@ -0,0 +1,141 @@ +disableSerialization; +params ["_ctrl","_index"]; + +private _netId = _ctrl lbData _index; +private _veh = _netId call BIS_fnc_objectFromNetId; +private _cls = typeof _veh; +private _name = _cls call OT_fnc_vehicleGetName; +private _pic = getText(configFile >> "cfgVehicles" >> _cls >> "editorPreview"); + +private _owner = players_NS getVariable ("name"+(_veh call OT_fnc_getOwner)); +if(isNil "_owner") then {_owner = "Someone"}; + +if(!isNil "_pic" && { !(_pic isEqualTo "") }) then { + ctrlSetText [1200,_pic]; +}; + +private _txt = "
"; + +private _fuel = round((fuel _veh) * 100); + +private _loadPounds = (loadAbs _veh) / 10; +private _loadKg = 0; +if(_loadPounds > 0) then { + _loadKg = (_loadPounds / 2.205) toFixed 1; +}; + +//get wheel state +private _wheelsNeeded = 0; +private _tracksNeeded = 0; +private _hasWheels = false; +private _hasTracks = false; +private _engineOut = false; +private _fuelTankOut = false; +private _rotorOutV = false; +private _rotorOutH = false; +private _gunOut = false; +{ + private _hit = configName _x; + if((_hit find "Wheel") > -1) then { + _hasWheels = true; + if (_veh getHitPointDamage _hit >= 1) then { + _wheelsNeeded = _wheelsNeeded + 1; + }; + }; + if((_hit find "Track") > -1) then { + _hasTracks = true; + if (_veh getHitPointDamage _hit >= 1) then { + _tracksNeeded = _tracksNeeded + 1; + }; + }; + if(_hit isEqualTo "HitEngine") then { + if (_veh getHitPointDamage _hit >= 1) then { + _engineOut = true; + }; + }; + if(_hit isEqualTo "HitFuel") then { + if (_veh getHitPointDamage _hit >= 1) then { + _fuelTankOut = true; + }; + }; + if(_hit isEqualTo "HitVRotor") then { + if (_veh getHitPointDamage _hit >= 1) then { + _rotorOutV = true; + }; + }; + if(_hit isEqualTo "HitHRotor") then { + if (_veh getHitPointDamage _hit >= 1) then { + _rotorOutH = true; + }; + }; + if(_hit isEqualTo "HitGun") then { + if (_veh getHitPointDamage _hit >= 1) then { + _gunOut = true; + }; + }; +} forEach ("true" configClasses (configfile >> "CfgVehicles" >> _cls >> "HitPoints")); + +if !(_cls isKindOf "StaticWeapon") then { + _txt = format["%1Fuel: %1%2
",_txt,_fuel,"%"]; + _txt = format["%1Load: %2kg
",_txt,_loadKg]; + if(_hasWheels) then { + if(_wheelsNeeded isEqualTo 0) then { + _txt = format["%1All wheels OK
",_txt]; + }else{ + _txt = format["%1Need %2 wheels
",_txt,_wheelsNeeded]; + }; + }; + + if(_hasTracks) then { + if(_tracksNeeded isEqualTo 0) then { + _txt = format["%1All tracks OK
",_txt]; + }else{ + _txt = format["%1Need %2 tracks
",_txt,_tracksNeeded]; + }; + }; + + if(_engineOut) then { + _txt = format["%1Engine disabled
",_txt]; + }; + + if(_fuelTankOut) then { + _txt = format["%1Fuel tank ruptured
",_txt]; + }; + + if(_rotorOutV) then { + _txt = format["%1Main rotor disabled
",_txt]; + }; + if(_rotorOutH) then { + _txt = format["%1Tail rotor disabled
",_txt]; + }; +}; + +if(_gunOut) then { + _txt = format["%1Gun disabled
",_txt]; +}; + +private _totalAmmo = 0; +private _turrets = "!((configName _x) select [0,5] == ""Cargo"") && !((count getArray (_x >> ""magazines"")) isEqualTo 0)" configClasses (configfile >> "CfgVehicles" >> _cls >> "Turrets"); +private _hasAmmo = (count _turrets) > 0; +private _ammotxt = ""; +{ + _x params ["_ammocls","_num"]; + _totalAmmo = _totalAmmo + _num; + _ammotxt = format["%1%2 x %3
",_ammotxt,_num,_ammocls call OT_fnc_magazineGetName]; +}foreach(magazinesAmmo _veh); + +if(_totalAmmo > 0) then { + _txt = format["%1
Ammo:
%2",_txt,_ammotxt]; +}else{ + if(_hasAmmo) then { + _txt = format["%1
Out Of Ammo
",_txt]; + }; +}; + +_textctrl = (findDisplay 8000) displayCtrl 1100; + +_textctrl ctrlSetStructuredText parseText format[" + %1
+ Owner: %2
+ %3 +",_name,_owner,_txt]; diff --git a/addons/overthrow_main/functions/UI/display/fn_displayShopPic.sqf b/addons/overthrow_main/functions/UI/display/fn_displayShopPic.sqf index e863cadb..5b1095c0 100644 --- a/addons/overthrow_main/functions/UI/display/fn_displayShopPic.sqf +++ b/addons/overthrow_main/functions/UI/display/fn_displayShopPic.sqf @@ -34,15 +34,26 @@ if(_price > -1) then { }; if(_cls isKindOf "Man") exitWith { private _soldier = _cls call OT_fnc_getSoldier; + private _bought = _soldier select 5; private _price = _soldier select 0; - if(call OT_fnc_playerIsGeneral) then { - ctrlEnable [1601,true]; + + _text = ""; + { + _x params ["_cls","_qty"]; + private _name = _cls call OT_fnc_anythingGetName; + private _cost = (([OT_nation,_cls,30] call OT_fnc_getPrice) * _qty); + _text = format["%1%2 x %3 = $%4
",_text,_qty,_name,[_cost, 1, 0, true] call CBA_fnc_formatNumber]; + }foreach(_bought); + + if(_text isEqualTo "") then { + _text = "All items required for this unit are available in the warehouse"; }else{ - ctrlEnable [1601,false]; + _text = format["These items are not in the warehouse and must be purchased:
%1",_text]; }; + [ nil, - "Will recruit this soldier into your group fully equipped using the warehouse where possible.", + _text, _cls call OT_fnc_vehicleGetName, _price ] @@ -106,7 +117,11 @@ if(_cls in OT_allExplosives) then { _textctrl = (findDisplay 8000) displayCtrl 1100; -_price = "$" + ([_price, 1, 0, true] call CBA_fnc_formatNumber); +if(_price isEqualType 0) then { + _price = "$" + ([_price, 1, 0, true] call CBA_fnc_formatNumber); +}else{ + _price = ""; +}; _textctrl ctrlSetStructuredText parseText format[" %1
diff --git a/addons/overthrow_main/functions/actions/fn_addGarrison.sqf b/addons/overthrow_main/functions/actions/fn_addGarrison.sqf index 115d9d7d..c04780f0 100644 --- a/addons/overthrow_main/functions/actions/fn_addGarrison.sqf +++ b/addons/overthrow_main/functions/actions/fn_addGarrison.sqf @@ -21,6 +21,8 @@ private _group = spawner getVariable [format["resgarrison%1",_code],grpNull]; private _doinit = false; if(isNull _group) then { _group = creategroup resistance; + _group setVariable ["VCM_TOUGHSQUAD",true,true]; + _group setVariable ["VCM_NORESCUE",true,true]; spawner setVariable [format["resgarrison%1",_code],_group,true]; _doinit = true; }; diff --git a/addons/overthrow_main/functions/actions/fn_addPolice.sqf b/addons/overthrow_main/functions/actions/fn_addPolice.sqf index 6d7f5f39..1c190677 100644 --- a/addons/overthrow_main/functions/actions/fn_addPolice.sqf +++ b/addons/overthrow_main/functions/actions/fn_addPolice.sqf @@ -17,6 +17,9 @@ private _garrison = server getVariable [format['police%1',_town],0]; _garrison = _garrison + _amt; server setVariable [format["police%1",_town],_garrison,true]; +_mrkid = format["%1-police",_town]; +_mrkid setMarkerText format["%1",_garrison]; + [-(_amt*_price)] call OT_fnc_money; _effect = floor(_garrison / 2); @@ -28,6 +31,8 @@ if(_effect isEqualTo 0) then {_effect = "None"} else {_effect = format["+%1 Stab _count = 0; _range = 15; private _group = createGroup resistance; +_group setVariable ["VCM_TOUGHSQUAD",true,true]; +_group setVariable ["VCM_NORESCUE",true,true]; private _spawnid = spawner getvariable [format["townspawnid%1",_town],-1]; private _groups = spawner getvariable [_spawnid,[]]; diff --git a/addons/overthrow_main/functions/actions/fn_buy.sqf b/addons/overthrow_main/functions/actions/fn_buy.sqf index b56321ff..79961e5e 100644 --- a/addons/overthrow_main/functions/actions/fn_buy.sqf +++ b/addons/overthrow_main/functions/actions/fn_buy.sqf @@ -14,6 +14,21 @@ if(_cls in OT_allExplosives && _chems < (_cost select 3)) exitWith {format["You private _money = player getVariable "money"; if(_money < _price) exitWith {"You cannot afford that!" call OT_fnc_notifyMinor}; +//If faction dealer, increase standing +private _civ = OT_interactingWith; +if(!isNil "_civ") then { + if(_civ getVariable ["factionrep",false]) then { + _faction = _civ getVariable ["faction",""]; + if !(_faction isEqualTo "") then { + _increase = floor (_price / 1000); + if(_increase > 0) then { + private _factionName = server getvariable format["factionname%1",_faction]; + server setVariable [format["standing%1",_faction],(server getVariable [format["standing%1",_faction],0]) + _increase,true]; + format["+%1 %2",_increase,_factionName] call OT_fnc_notifyMinor; + }; + }; + }; +}; if(_cls == "Set_HMG") exitWith { private _pos = (getpos player) findEmptyPosition [5,100,"C_Quadbike_01_F"]; @@ -161,16 +176,16 @@ if( }foreach(nearestObjects [getpos player, [OT_item_Storage],1200]); // @todo probably add to box if possible - player addWeapon _cls; + player addWeaponGlobal _cls; playSound "3DEN_notificationDefault"; }; -if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { +if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { if(_cls in OT_allExplosives) then { server setVariable ["reschems",_chems - (_cost select 3),true]; }; [-_price] call OT_fnc_money; - player addMagazineGlobal _cls; + player addMagazine _cls; playSound "3DEN_notificationDefault"; }; private _handled = true; diff --git a/addons/overthrow_main/functions/actions/fn_decreaseTax.sqf b/addons/overthrow_main/functions/actions/fn_decreaseTax.sqf index a65c4c3a..b682bce7 100644 --- a/addons/overthrow_main/functions/actions/fn_decreaseTax.sqf +++ b/addons/overthrow_main/functions/actions/fn_decreaseTax.sqf @@ -2,4 +2,4 @@ private _rate = server getVariable ["taxrate",0]; _rate = _rate - 5; if(_rate < 0) then {_rate = 0}; server setVariable ["taxrate",_rate,true]; -format["Tax rate is now %1%2",_rate,"%"] call OT_fnc_notifyMinor; +hint format["Tax rate is now %1%2",_rate,"%"]; diff --git a/addons/overthrow_main/functions/actions/fn_dumpIntoWarehouse.sqf b/addons/overthrow_main/functions/actions/fn_dumpIntoWarehouse.sqf index f1d26eb1..8e3b7f57 100644 --- a/addons/overthrow_main/functions/actions/fn_dumpIntoWarehouse.sqf +++ b/addons/overthrow_main/functions/actions/fn_dumpIntoWarehouse.sqf @@ -28,7 +28,7 @@ if(hmd _unit != "") then { if(_cls isKindOf ["Binocular",configFile >> "CfgWeapons"]) exitWith { _unit removeItem _cls; }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _unit removeMagazine _cls; }; _unit removeItem _cls; @@ -44,7 +44,7 @@ if(headgear _unit != "") then { }; if(backpack _unit != "") then { - [_cls,1] call OT_fnc_addToWarehouse; + [backpack _unit,1] call OT_fnc_addToWarehouse; removeBackpack _unit; }; diff --git a/addons/overthrow_main/functions/actions/fn_dumpStuff.sqf b/addons/overthrow_main/functions/actions/fn_dumpStuff.sqf index cfcfe27d..ce87a42b 100644 --- a/addons/overthrow_main/functions/actions/fn_dumpStuff.sqf +++ b/addons/overthrow_main/functions/actions/fn_dumpStuff.sqf @@ -49,7 +49,7 @@ if(_full) exitWith {false}; _veh addWeaponCargoGlobal [_cls,1]; _unit removeItem _cls; }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _veh addMagazineCargoGlobal [_cls,1]; _unit removeMagazine _cls; }; @@ -137,16 +137,18 @@ if(_full) exitWith {false}; if((!isplayer _unit) || _linkedItems) then { { - if (!(_t canAdd _x) && !_isTruck) exitWith { - _full = true; - }; - if (([(configFile >> "CfgWeapons" >> _x),"useAsBinocular",0] call BIS_fnc_returnConfigEntry) > 0) then { - _unit unassignItem _x; - _unit removeWeapon _x; - }else{ - _unit unlinkItem _x; + if !(_x isEqualTo "ItemMap") then { + if (!(_t canAdd _x) && !_isTruck) exitWith { + _full = true; + }; + if (([(configFile >> "CfgWeapons" >> _x),"useAsBinocular",0] call BIS_fnc_returnConfigEntry) > 0) then { + _unit unassignItem _x; + _unit removeWeapon _x; + }else{ + _unit unlinkItem _x; + }; + _t addItemCargoGlobal [_x,1]; }; - _t addItemCargoGlobal [_x,1]; }foreach(assignedItems _unit); }; diff --git a/addons/overthrow_main/functions/actions/fn_editLoadout.sqf b/addons/overthrow_main/functions/actions/fn_editLoadout.sqf index 0724dbfa..7f3d6198 100644 --- a/addons/overthrow_main/functions/actions/fn_editLoadout.sqf +++ b/addons/overthrow_main/functions/actions/fn_editLoadout.sqf @@ -7,7 +7,7 @@ private _soldier = _cls call OT_fnc_getSoldier; _soldier params ["","","_loadout","_clothes"]; //spawn a virtual dude -private _start = [[[getpos player,10]]] call BIS_fnc_randomPos; +private _start = (getpos player) findEmptyPosition [5,40,_cls]; private _civ = (group player) createUnit [_cls, _start, [],0, "NONE"]; _civ disableAI "MOVE"; _civ disableAI "AUTOTARGET"; @@ -82,7 +82,7 @@ private _items = []; }foreach(OT_Recruitables); publicVariable "OT_Recruitables"; - [_cls call OT_fnc_vehicleGetName, _loadout] call ace_arsenal_fnc_addDefaultLoadout; + [_cls call OT_fnc_vehicleGetName, _loadout] remoteExec ["ace_arsenal_fnc_addDefaultLoadout",0,false]; playSound "3DEN_notificationDefault"; "Saved loadout" call OT_fnc_notifyMinor; diff --git a/addons/overthrow_main/functions/actions/fn_editPoliceLoadout.sqf b/addons/overthrow_main/functions/actions/fn_editPoliceLoadout.sqf index c89ed243..cb05455b 100644 --- a/addons/overthrow_main/functions/actions/fn_editPoliceLoadout.sqf +++ b/addons/overthrow_main/functions/actions/fn_editPoliceLoadout.sqf @@ -5,7 +5,7 @@ private _soldier = "Police" call OT_fnc_getSoldier; _soldier params ["","","_loadout","_clothes"]; //spawn a virtual dude -private _start = [[[getpos player,10]]] call BIS_fnc_randomPos; +private _start = (getpos player) findEmptyPosition [5,40,OT_Unit_Police]; private _civ = (group player) createUnit [OT_Unit_Police, _start, [],0, "NONE"]; _civ disableAI "MOVE"; _civ disableAI "AUTOTARGET"; @@ -71,19 +71,19 @@ private _items = []; },[_civ]] call CBA_fnc_addEventHandlerArgs; ["ace_arsenal_displayClosed", { - _thisArgs params ["_unit","_cls"]; + _thisArgs params ["_unit"]; private _loadout = getUnitLoadout _unit; OT_Loadout_Police = _loadout; publicVariable "OT_Loadout_Police"; - ["Police", _loadout] call ace_arsenal_fnc_addDefaultLoadout; + ["Police", _loadout] remoteExec ["ace_arsenal_fnc_addDefaultLoadout",0,false]; playSound "3DEN_notificationDefault"; "Saved police loadout" call OT_fnc_notifyMinor; deleteVehicle _unit; [_thisType, _thisId] call CBA_fnc_removeEventHandler; -},[_civ,_cls]] call CBA_fnc_addEventHandlerArgs; +},[_civ]] call CBA_fnc_addEventHandlerArgs; [_civ,_civ] call ace_arsenal_fnc_openBox; diff --git a/addons/overthrow_main/functions/actions/fn_exportAll.sqf b/addons/overthrow_main/functions/actions/fn_exportAll.sqf index f2a49b8b..93708788 100644 --- a/addons/overthrow_main/functions/actions/fn_exportAll.sqf +++ b/addons/overthrow_main/functions/actions/fn_exportAll.sqf @@ -42,7 +42,7 @@ private _total = 0; if(_cls isKindOf ["Pistol",configFile >> "CfgWeapons"]) exitWith { [_target, _cls, _num] call CBA_fnc_removeWeaponCargo; }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { [_target, _cls, _num] call CBA_fnc_removeMagazineCargo; }; if(_cls isKindOf "Bag_Base") exitWith { diff --git a/addons/overthrow_main/functions/actions/fn_import.sqf b/addons/overthrow_main/functions/actions/fn_import.sqf index 1075d987..89c0aee8 100644 --- a/addons/overthrow_main/functions/actions/fn_import.sqf +++ b/addons/overthrow_main/functions/actions/fn_import.sqf @@ -30,7 +30,7 @@ if(_cls isKindOf ["Launcher",configFile >> "CfgWeapons"]) exitWith { if(_cls isKindOf ["Pistol",configFile >> "CfgWeapons"]) exitWith { _veh addWeaponCargoGlobal [_cls,_num]; }; -if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { +if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _veh addMagazineCargoGlobal [_cls,_num]; }; if(_cls isKindOf "Bag_Base") exitWith { diff --git a/addons/overthrow_main/functions/actions/fn_increaseTax.sqf b/addons/overthrow_main/functions/actions/fn_increaseTax.sqf index b3836ac0..b412a3dd 100644 --- a/addons/overthrow_main/functions/actions/fn_increaseTax.sqf +++ b/addons/overthrow_main/functions/actions/fn_increaseTax.sqf @@ -2,4 +2,4 @@ private _rate = server getVariable ["taxrate",0]; _rate = _rate + 5; if(_rate > 100) then {_rate = 100}; server setVariable ["taxrate",_rate,true]; -format["Tax rate is now %1%2",_rate,"%"] call OT_fnc_notifyMinor; +hint format["Tax rate is now %1%2",_rate,"%"]; diff --git a/addons/overthrow_main/functions/actions/fn_onNameDone.sqf b/addons/overthrow_main/functions/actions/fn_onNameDone.sqf index a570fbcb..38339b6e 100644 --- a/addons/overthrow_main/functions/actions/fn_onNameDone.sqf +++ b/addons/overthrow_main/functions/actions/fn_onNameDone.sqf @@ -4,6 +4,8 @@ if(_name != "") then { private _base = (player nearObjects [OT_flag_IND,50]) select 0; + [_base, ["Set As Home", {player setVariable ["home",getpos (_this select 0),true];"This FOB is now your home" call OT_fnc_notifyMinor},nil,0,false,true]] remoteExec ["addAction",0,_base]; + private _bases = server getVariable ["bases",[]]; _bases pushback [getpos _base,_name,getplayeruid player]; server setVariable ["bases",_bases,true]; @@ -23,4 +25,4 @@ if(_name != "") then { format["%1 created a new base for resistance efforts %2",_builder,(getpos _base) call BIS_fnc_locationDescription] ] call BIS_fnc_createLogRecord; }foreach([] call CBA_fnc_players); -}; \ No newline at end of file +}; diff --git a/addons/overthrow_main/functions/actions/fn_openArsenal.sqf b/addons/overthrow_main/functions/actions/fn_openArsenal.sqf index 25e59b60..20eeb890 100644 --- a/addons/overthrow_main/functions/actions/fn_openArsenal.sqf +++ b/addons/overthrow_main/functions/actions/fn_openArsenal.sqf @@ -82,7 +82,7 @@ if(_target isEqualType "") then { _missing pushback _cls; }; _totake = _count - _boxAmount; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { while{_count > _boxAmount} do { _count = _count - 1; _unit removeMagazine _cls; diff --git a/addons/overthrow_main/functions/actions/fn_restoreLoadout.sqf b/addons/overthrow_main/functions/actions/fn_restoreLoadout.sqf index 85ae2b9c..42ffdd86 100644 --- a/addons/overthrow_main/functions/actions/fn_restoreLoadout.sqf +++ b/addons/overthrow_main/functions/actions/fn_restoreLoadout.sqf @@ -15,7 +15,7 @@ if(count _primary > 0) then { _unit addWeaponGlobal _pWpn; if(!isNil "_pAmmo") then { if([_ammobox,_pAmmo,1] call CBA_fnc_removeMagazineCargo) then { - _unit addMagazineGlobal _pAmmo; + _unit addMagazine _pAmmo; }; }; { @@ -35,7 +35,7 @@ if(count _secondary > 0) then { _unit addWeaponGlobal _sWpn; if(!isNil "_sAmmo") then { if([_ammobox,_sAmmo,1] call CBA_fnc_removeMagazineCargo) then { - _unit addMagazineGlobal _sAmmo; + _unit addMagazine _sAmmo; }; }; { @@ -55,7 +55,7 @@ if(count _tertiary > 0) then { _unit addWeaponGlobal _tWpn; if(!isNil "_tAmmo") then { if([_ammobox,_tAmmo,1] call CBA_fnc_removeMagazineCargo) then { - _unit addMagazineGlobal _tAmmo; + _unit addMagazine _tAmmo; }; }; }; @@ -133,7 +133,7 @@ if(count _backpack > 0) then { if(count _optic > 0) then { private _opticCls = _optic select 0; if([_ammobox,_opticCls,1] call CBA_fnc_removeWeaponCargo) then { - _unit addWeapon _opticCls; + _unit addWeaponGlobal _opticCls; _unit assignItem _opticCls; }; }; diff --git a/addons/overthrow_main/functions/actions/fn_setVehicleWaypoint.sqf b/addons/overthrow_main/functions/actions/fn_setVehicleWaypoint.sqf new file mode 100644 index 00000000..426d1347 --- /dev/null +++ b/addons/overthrow_main/functions/actions/fn_setVehicleWaypoint.sqf @@ -0,0 +1,10 @@ +disableSerialization; +private _sel = lbCurSel 1500; +if(_sel isEqualTo -1) exitWith {}; + +private _id = lbData [1500, _sel]; +private _veh = _id call BIS_fnc_objectFromNetId; + +if(!isNil "_veh") then { + [player,getpos _veh,(typeof _veh) call OT_fnc_vehicleGetName] call OT_fnc_givePlayerWaypoint; +}; diff --git a/addons/overthrow_main/functions/actions/fn_storeAll.sqf b/addons/overthrow_main/functions/actions/fn_storeAll.sqf new file mode 100644 index 00000000..807eafc2 --- /dev/null +++ b/addons/overthrow_main/functions/actions/fn_storeAll.sqf @@ -0,0 +1,22 @@ +private _target = vehicle player; +private _notvehicle = false; +if(_target isEqualTo player) exitWith {}; + +if(isNull _target || isNil "_target") exitWith {}; + +private _objects = []; +private _b = player call OT_fnc_nearestRealEstate; +private _iswarehouse = false; +if(_b isEqualType []) then { + private _building = _b select 0; + if((typeof _building) == OT_warehouse && _building call OT_fnc_hasOwner) then { + _iswarehouse = true; + _objects pushback _building; + }; +}; + +if(_notvehicle && _objects isEqualTo []) exitWith { + "No warehouse within range" call OT_fnc_notifyMinor; +}; + +[vehicle player, (_objects select 0)] call OT_fnc_transferHelper; diff --git a/addons/overthrow_main/functions/actions/fn_takeStuff.sqf b/addons/overthrow_main/functions/actions/fn_takeStuff.sqf index fd30c306..1befd779 100644 --- a/addons/overthrow_main/functions/actions/fn_takeStuff.sqf +++ b/addons/overthrow_main/functions/actions/fn_takeStuff.sqf @@ -20,9 +20,9 @@ if(hmd _unit != "") then { _count = 0; _cls = _x select 0; while {_count < (_x select 1)} do { - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) then { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) then { _unit removeMagazine _cls; - _t addMagazineGlobal _cls; + _t addMagazine _cls; }else{ _unit removeItem _cls; _t addItem _cls; @@ -48,7 +48,7 @@ if(goggles _unit != "") then { removeGoggles _unit; }; if(handgunWeapon _unit != "") then { - _t addWeapon handgunWeapon _unit; + _t addWeaponGlobal handgunWeapon _unit; { _t addItem _x; _unit removeHandgunItem _x; @@ -60,7 +60,7 @@ if(handgunWeapon _unit != "") then { if (([(configFile >> "CfgWeapons" >> _x),"useAsBinocular",0] call BIS_fnc_returnConfigEntry) > 0) then { _unit unassignItem _x; _unit removeWeapon _x; - _t addWeapon _x; + _t addWeaponGlobal _x; _t assignItem _x; }else{ _unit unlinkItem _x; diff --git a/addons/overthrow_main/functions/actions/fn_talkToCiv.sqf b/addons/overthrow_main/functions/actions/fn_talkToCiv.sqf index 1da17d6b..ab66e296 100644 --- a/addons/overthrow_main/functions/actions/fn_talkToCiv.sqf +++ b/addons/overthrow_main/functions/actions/fn_talkToCiv.sqf @@ -157,7 +157,7 @@ if (_canTute) then { } ]; }; - if !("CRIM" in _done) then { + /*if !("CRIM" in _done) then { _options pushBack [ "So, about those gangs...",{ private _civ = OT_interactingWith; @@ -173,7 +173,7 @@ if (_canTute) then { ] call OT_fnc_doConversation; } ]; - }; + };*/ if !("Drugs" in _done) then { _options pushBack [ "You sell Ganja right?",{ diff --git a/addons/overthrow_main/functions/actions/fn_transferHelper.sqf b/addons/overthrow_main/functions/actions/fn_transferHelper.sqf index 47522858..06b81bec 100644 --- a/addons/overthrow_main/functions/actions/fn_transferHelper.sqf +++ b/addons/overthrow_main/functions/actions/fn_transferHelper.sqf @@ -86,7 +86,7 @@ _this spawn { _veh addWeaponCargoGlobal [_cls,_count]; [_target, _cls, _count] call CBA_fnc_removeWeaponCargo; }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _veh addMagazineCargoGlobal [_cls,_count]; [_target, _cls, _count] call CBA_fnc_removeMagazineCargo; }; diff --git a/addons/overthrow_main/functions/actions/fn_transferLegit.sqf b/addons/overthrow_main/functions/actions/fn_transferLegit.sqf index f1ab58c4..9e2872ff 100644 --- a/addons/overthrow_main/functions/actions/fn_transferLegit.sqf +++ b/addons/overthrow_main/functions/actions/fn_transferLegit.sqf @@ -90,7 +90,7 @@ if(count _objects isEqualTo 1) then { }else{ private _options = []; { - _options pushback [format["%1 (%2m)",(typeof _x) call OT_fnc_vehicleGetName,round (_x distance player)],{[] spawn _doTransfer;},_x]; + _options pushback [format["%1 (%2m)",(typeof _x) call OT_fnc_vehicleGetName,round (_x distance player)],_doTransfer,_x]; }foreach(_objects); "Transfer legal items from which container?" call OT_fnc_notifyBig; _options call OT_fnc_playerDecision; diff --git a/addons/overthrow_main/functions/actions/fn_transferTo.sqf b/addons/overthrow_main/functions/actions/fn_transferTo.sqf index ac861053..9de1c629 100644 --- a/addons/overthrow_main/functions/actions/fn_transferTo.sqf +++ b/addons/overthrow_main/functions/actions/fn_transferTo.sqf @@ -10,15 +10,8 @@ if(isNull _target || isNil "_target") exitWith {}; private _objects = []; private _b = player call OT_fnc_nearestRealEstate; private _iswarehouse = false; -if(_b isEqualType []) then { - private _building = _b select 0; - if((typeof _building) == OT_warehouse && _building call OT_fnc_hasOwner) then { - _iswarehouse = true; - _objects pushback _building; - }; -}; -if(!_iswarehouse && !_notvehicle) then { +if(!_notvehicle) then { { if!(_x isEqualTo _target) then {_objects pushback _x}; }foreach(player nearEntities [["Car","ReammoBox_F","Air","Ship"],20]); @@ -29,10 +22,6 @@ if(!_notvehicle && _objects isEqualTo []) exitWith { "Cannot find any containers or other vehicles within 20m of this vehicle" call OT_fnc_notifyMinor; }; -if(_notvehicle && _objects isEqualTo []) exitWith { - "No warehouse within range" call OT_fnc_notifyMinor; -}; - if(count _objects isEqualTo 1) then { [vehicle player, (_objects select 0)] call OT_fnc_transferHelper; }else{ diff --git a/addons/overthrow_main/functions/actions/fn_triggerBattle.sqf b/addons/overthrow_main/functions/actions/fn_triggerBattle.sqf new file mode 100644 index 00000000..4af2a02b --- /dev/null +++ b/addons/overthrow_main/functions/actions/fn_triggerBattle.sqf @@ -0,0 +1,29 @@ +private _obname = _this; +if (_obname in (server getVariable ["NATOabandoned",[]])) exitWith {}; +if !(captive player) exitWith {hint "Cannot capture while wanted"}; + +private _resources = server getVariable ["NATOresources",2000]; +private _countered = (server getVariable ["NATOattacking",""]) != ""; + +if (_countered) exitWith {hint "There is already a battle in progress or scheduled"}; +private _popControl = call OT_fnc_getControlledPopulation; + +private _cost = 350; +{ + _x params ["","_name","_pri"]; + if(_name isEqualTo _obname) exitWith {_cost = _pri}; +}foreach(OT_objectiveData + OT_airportData); + +private _m = 1; +if(_popControl > 1000) then {_m = 2}; +if(_popControl > 2000) then {_m = 4}; +_cost = _cost * _m; +server setVariable ["NATOattacking",_obname,true]; +server setVariable ["NATOattackstart",time,true]; +diag_log format["Overthrow: Manual trigger for QRF at %1",_name]; +if(_resources < _cost) then {_cost = _resources}; +[_name,_cost] spawn OT_fnc_NATOResponseObjective; +_name setMarkerAlpha 1; +_resources = _resources - _cost; + +server setVariable ["NATOresources",_resources,true]; diff --git a/addons/overthrow_main/functions/actions/fn_unflipVehicle.sqf b/addons/overthrow_main/functions/actions/fn_unflipVehicle.sqf new file mode 100644 index 00000000..ea99433f --- /dev/null +++ b/addons/overthrow_main/functions/actions/fn_unflipVehicle.sqf @@ -0,0 +1,48 @@ +/* + OT_fnc_unflipVehicle + File: fn_unflipVehicle.sqf + Date: 2019-03-13 + Last Update: 2019-04-01 + License: GNU General Public License v3.0 - https://www.gnu.org/licenses/gpl-3.0.html + Description: + Applies force to vehicle that should unflip it, not 100%. + Parameter(s): + _vehicle - Vehicle to unflip [OBJECT, defaults to objNull] + Returns: + Vehicle was unflipped [BOOL] +*/ +params [ + ["_vehicle", objNull, [objNull]] +]; + +if (isNull _vehicle) exitWith {false}; + +private _upsideDown = (vectorUp _vehicle vectorDotProduct surfaceNormal getPos _vehicle) < -0.80; +private _bank = _vehicle call BIS_fnc_getPitchBank select 1; + +private _flipLeft = _bank >= 0; +// When upside down then left is right and right is left +if (_upsideDown) then { + _flipLeft = !_flipLeft; +}; + +if (!_upsideDown && 55 > abs _bank) exitWith {false}; + +private _bbr = boundingBoxReal _vehicle; +private _vehicleWidth = abs (_bbr#0#0 * 2); + +private _force = (getMass _vehicle * ([1 + (_vehicleWidth/10), _vehicleWidth] select _upsideDown)) * 1.2; + +if (_upsideDown) then { + _force = _force * 1.2; +}; + +private _forcePointX = _bbr select ([0, 1] select _flipLeft) select 0; +private _forcePointZ = _bbr select ([1, 0] select _upsideDown) select 2; + +_vehicle addForce [ + _vehicle vectorModelToWorld [[_force, -_force] select _flipLeft, 0, 0], + [_forcePointX, 0, _forcePointZ] +]; + +true diff --git a/addons/overthrow_main/functions/actions/fn_vehicleCanMove.sqf b/addons/overthrow_main/functions/actions/fn_vehicleCanMove.sqf index af5f0e05..49d4a06b 100644 --- a/addons/overthrow_main/functions/actions/fn_vehicleCanMove.sqf +++ b/addons/overthrow_main/functions/actions/fn_vehicleCanMove.sqf @@ -1,7 +1,12 @@ private _canMove = true; +private _veh = _this; { - if (_this getHitPointDamage _x >= 1) exitWith { - _canMove = false; - }; -} forEach ["HitLFWheel", "HitLF2Wheel", "HitRFWheel", "HitRF2Wheel", "HitFuel", "HitEngine"]; -_canMove \ No newline at end of file + private _hit = configName _x; + if(((_hit find "Wheel") > -1) || ((_hit find "Track") > -1) || _hit isEqualTo "HitFuel" || _hit isEqualTo "HitEngine" || _hit isEqualTo "HitVRotor" || _hit isEqualTo "HitHRotor") then { + if (_veh getHitPointDamage _hit >= 1) exitWith { + _canMove = false; + }; + }; +} forEach ("true" configClasses (configfile >> "CfgVehicles" >> (typeof _veh) >> "HitPoints")); +if((fuel _veh) isEqualTo 0) then {_canMove = false}; +_canMove diff --git a/addons/overthrow_main/functions/actions/fn_warehouseTake.sqf b/addons/overthrow_main/functions/actions/fn_warehouseTake.sqf index abf66919..5262f5cf 100644 --- a/addons/overthrow_main/functions/actions/fn_warehouseTake.sqf +++ b/addons/overthrow_main/functions/actions/fn_warehouseTake.sqf @@ -41,7 +41,7 @@ while {_count < _num} do { if(_cls isKindOf ["Pistol",configFile >> "CfgWeapons"]) exitWith { _veh addWeaponCargoGlobal [_cls,1]; }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _veh addMagazineCargoGlobal [_cls,1]; }; if(_cls isKindOf "Bag_Base") exitWith { diff --git a/addons/overthrow_main/functions/buildings/fn_initPoliceStation.sqf b/addons/overthrow_main/functions/buildings/fn_initPoliceStation.sqf index 641965eb..7cebfa69 100644 --- a/addons/overthrow_main/functions/buildings/fn_initPoliceStation.sqf +++ b/addons/overthrow_main/functions/buildings/fn_initPoliceStation.sqf @@ -7,6 +7,8 @@ if(_garrison == -1) then { //First time server setVariable [format['policepos%1',_town],_pos,true]; + private _soldier = "Police" call OT_fnc_getSoldier; + private _spawnid = spawner getvariable [format["townspawnid%1",_town],-1]; private _groups = spawner getvariable [_spawnid,[]]; @@ -27,7 +29,7 @@ if(_garrison == -1) then { _p = [[[_start,20]]] call BIS_fnc_randomPos; - _civ = _group createUnit ["I_G_Soldier_F", _p, [],0, "NONE"]; + _civ = [_soldier,_p,_group,false] call OT_fnc_createSoldier; _civ setVariable ["polgarrison",_town,false]; [_civ] joinSilent _group; _civ setRank "SERGEANT"; @@ -43,6 +45,7 @@ if(_garrison == -1) then { _mrkid = format["%1-police",_town]; createMarker [_mrkid,_pos]; _mrkid setMarkerShape "ICON"; +_mrkid setMarkerText "2"; _mrkid setMarkerType "o_installation"; _mrkid setMarkerColor "ColorGUER"; _mrkid setMarkerAlpha 1; diff --git a/addons/overthrow_main/functions/cleanup/fn_cleanDead.sqf b/addons/overthrow_main/functions/cleanup/fn_cleanDead.sqf index b81caccd..bbc739b0 100644 --- a/addons/overthrow_main/functions/cleanup/fn_cleanDead.sqf +++ b/addons/overthrow_main/functions/cleanup/fn_cleanDead.sqf @@ -1,13 +1,13 @@ { { if (!alive _x) then { - deleteVehicle _x; + _x remoteExecCall ["deleteVehicle", _x]; }; } foreach crew _x; if (!alive _x) then { - deletevehicle _x; + _x remoteExecCall ["deleteVehicle", _x]; }; } foreach vehicles; { - deleteVehicle _x; + _x remoteExecCall ["deleteVehicle", _x]; } foreach allDeadMen; diff --git a/addons/overthrow_main/functions/cleanup/fn_cleanup.sqf b/addons/overthrow_main/functions/cleanup/fn_cleanup.sqf index 2589752f..3cb62adb 100644 --- a/addons/overthrow_main/functions/cleanup/fn_cleanup.sqf +++ b/addons/overthrow_main/functions/cleanup/fn_cleanup.sqf @@ -1,9 +1,9 @@ -params ["_vehicle"]; +params ["_vehicle",["_force",false]]; if(typename _vehicle isEqualTo "GROUP") exitWith { if(count (units _vehicle) isEqualTo 0) exitWith {deleteGroup _vehicle}; private _l = (units _vehicle) select 0; - [{!((_this#0) call OT_fnc_inSpawnDistance)}, { + [{!((_this#0) call OT_fnc_inSpawnDistance) || _force}, { _vehs = []; _this params ["_l","_vehicle"]; { @@ -23,7 +23,7 @@ if(_vehicle getVariable ["OT_cleanup",false]) exitWith {}; _vehicle setVariable ["OT_cleanup",true,false]; -[{!((_this#0) call OT_fnc_inSpawnDistance)}, { +[{!((_this#0) call OT_fnc_inSpawnDistance) || _force}, { _this params ["_vehicle"]; if(_vehicle isKindOf "CAManBase") then { if(vehicle _vehicle != _vehicle) then {[(vehicle _vehicle)] call OT_fnc_cleanup}; diff --git a/addons/overthrow_main/functions/economy/fn_initEconomy.sqf b/addons/overthrow_main/functions/economy/fn_initEconomy.sqf index 8c56b553..10229303 100644 --- a/addons/overthrow_main/functions/economy/fn_initEconomy.sqf +++ b/addons/overthrow_main/functions/economy/fn_initEconomy.sqf @@ -73,8 +73,9 @@ OT_allShops = []; }foreach(OT_regions); sleep 0.2; }foreach (OT_allTowns); - -server setVariable ["spawntown",OT_spawnTowns call BIS_fnc_selectrandom,true]; +private _spawn = OT_spawnTowns call BIS_fnc_selectrandom; +diag_log format["Overthrow: Spawn town is %1",_spawn]; +server setVariable ["spawntown",_spawn,true]; { private _region = _x; diff --git a/addons/overthrow_main/functions/economy/fn_setupTownEconomy.sqf b/addons/overthrow_main/functions/economy/fn_setupTownEconomy.sqf index 56bad800..fab734f9 100644 --- a/addons/overthrow_main/functions/economy/fn_setupTownEconomy.sqf +++ b/addons/overthrow_main/functions/economy/fn_setupTownEconomy.sqf @@ -1,9 +1,11 @@ params ["_town"]; + private _dist = 600; if(_town in OT_sprawling || _town in OT_capitals) then {_dist = 1000}; private _posTown = server getVariable _town; -private _stability = server getVariable format["stability%1",_town]; -private _population = server getVariable format["population%1",_town]; +private _stability = server getVariable [format["stability%1",_town],100]; +private _population = server getVariable [format["population%1",_town],0]; +diag_log format["Overthrow: Setting up economy in %1 (pop. %2)",_town,_population]; private _shops = 0; private _activeShops = []; private _activecar = []; @@ -77,16 +79,18 @@ server setVariable [format["activeshopsin%1",_town],_activeShops,true]; }foreach(nearestObjects [_posTown, OT_carShops, _dist,false]); server setVariable [format["activecarshopsin%1",_town],_activecar,true]; -{ - private _po = getpos _x; - if !(_po in _piers) then { - _do = true; - { - if(_x distance _po < 80) exitWith {_do = false}; - }foreach(_piers); - if(_do) then { - _piers pushback _po; +if((count OT_piers) > 0) then { + { + private _po = getpos _x; + if !(_po in _piers) then { + _do = true; + { + if(_x distance _po < 80) exitWith {_do = false}; + }foreach(_piers); + if(_do) then { + _piers pushback _po; + }; }; - }; -}foreach(nearestObjects [_posTown,OT_piers, _dist,false]); + }foreach(nearestObjects [_posTown,OT_piers, _dist,false]); +}; server setVariable [format["activepiersin%1",_town],_piers,true]; diff --git a/addons/overthrow_main/functions/events/fn_EnemyDamagedHandler.sqf b/addons/overthrow_main/functions/events/fn_EnemyDamagedHandler.sqf new file mode 100644 index 00000000..9f3de1b8 --- /dev/null +++ b/addons/overthrow_main/functions/events/fn_EnemyDamagedHandler.sqf @@ -0,0 +1,20 @@ +params ["_unit", "_selection", "_damage", "_hitIndex", "_hitPoint", ["_shooter",objNull], ["_projectile",objNull]]; + +if !(isNull _projectile) then { + private _shotParents = getShotParents _projectile; + _shooter = _shotParents select 1; +}; +if(isNull _shooter) then { + private _aceSource = _me getVariable ["ace_medical_lastDamageSource", objNull]; + if ((!isNull _aceSource) && {_aceSource != _unit}) then { + _shooter = _aceSource; + }; +}; +if ((typeOf _shooter) isKindOf "CAManBase") then { + [_shooter,false] remoteExecCall ["setCaptive",_shooter]; + if !((vehicle _shooter) isEqualTo _shooter) then { + { + [_x,false] remoteExecCall ["setCaptive",_x]; + }foreach(crew vehicle _shooter); + }; +}; diff --git a/addons/overthrow_main/functions/events/fn_deathHandler.sqf b/addons/overthrow_main/functions/events/fn_deathHandler.sqf index b5cf9dbf..5d6ca321 100644 --- a/addons/overthrow_main/functions/events/fn_deathHandler.sqf +++ b/addons/overthrow_main/functions/events/fn_deathHandler.sqf @@ -1,16 +1,27 @@ -_me = _this select 0; -_killer = _me getVariable "ace_medical_lastDamageSource"; +params ["_me",["_killer", objNull]]; -if(isNil "_killer") then {_killer = _this select 1}; +if !(local _me) exitWith {}; //Only run this on the machine where unit is local -if((vehicle _killer) != _killer) then {_killer = driver _killer}; +if ((isNull _killer) || {_killer == _me}) then { + private _aceSource = _me getVariable ["ace_medical_lastDamageSource", objNull]; + if ((!isNull _aceSource) && {_aceSource != _unit}) then { + _killer = _aceSource; + }; +}; + +if !((typeOf _killer) isKindOf "CAManBase") then { + _killer = driver _killer; +}; if(_killer call OT_fnc_unitSeen) then { + _killer setCaptive false; _killer setVariable ["lastkill",time,true]; }; + _town = (getpos _me) call OT_fnc_nearestTown; if(isPlayer _me) exitWith { + [_me,true] remoteExecCall ["setCaptive",_me]; if !(isMultiplayer) then { _this params ["_unit", "_killer", "_instigator", "_useEffects"]; if (_unit isEqualTo player) then { @@ -18,7 +29,6 @@ if(isPlayer _me) exitWith { private _new_unit = (creategroup resistance) createUnit ["I_G_Soldier_F",(player getVariable ["home",[worldSize/2,worldSize/2,0]]),[],0,"NONE"]; selectPlayer _new_unit; - player setCaptive true; player forceAddUniform (player getVariable ["uniform",""]); player setdamage 0; [] spawn { @@ -69,6 +79,7 @@ call { [_town,-1] call OT_fnc_stability; }; if(!isNil "_hvt") exitWith { + private _diff = server getVariable ["OT_difficulty",1]; _killer setVariable ["BLUkills",(_killer getVariable ["BLUkills",0])+1,true]; _idx = 0; { @@ -77,7 +88,12 @@ call { }foreach(OT_NATOhvts); OT_NATOhvts deleteAt _idx; format["A high-ranking NATO officer has been killed"] remoteExec ["OT_fnc_notifyMinor",0,false]; - server setvariable ["NATOresources",0,true]; + private _resources = server getvariable ["NATOresources",0]; + _resources = _resources - 500; + if(_diff isEqualTo 1) then {_resources = _resources - 500}; + if(_diff isEqualTo 0) then {_resources = _resources - 1000}; + if(_resources < 250) then {_resources = 250}; + server setvariable ["NATOresources",_resources,true]; [_killer,250] call OT_fnc_experience; }; if(!isNil "_employee") exitWith { @@ -145,10 +161,13 @@ call { if(!isNil "_polgarrison") exitWith { _pop = server getVariable format["police%1",_polgarrison]; if(_pop > 0) then { - server setVariable [format["police%1",_polgarrison],_pop - 1,true]; + _pop = _pop - 1; + server setVariable [format["police%1",_polgarrison],_pop,true]; format["A police officer has been killed in %1",_polgarrison] remoteExec ["OT_fnc_notifyMinor",0,false]; }; [_town,-2] call OT_fnc_stability; + _mrkid = format["%1-police",_polgarrison]; + _mrkid setMarkerText format["%1",_pop]; }; if(!isNil "_garrison" || !isNil "_vehgarrison" || !isNil "_airgarrison") then { _killer setVariable ["BLUkills",(_killer getVariable ["BLUkills",0])+1,true]; @@ -200,10 +219,10 @@ call { }; }; if((_killer call OT_fnc_unitSeen) || (_standingChange < -9)) then { - _killer setCaptive false; + [_killer,false] remoteExecCall ["setCaptive",_killer]; if(vehicle _killer != _killer) then { { - _x setCaptive false; + [_x,false] remoteExecCall ["setCaptive",_x]; }foreach(units vehicle _killer); }; }; diff --git a/addons/overthrow_main/functions/events/fn_keyHandler.sqf b/addons/overthrow_main/functions/events/fn_keyHandler.sqf index 3cc16078..06a2f3f6 100644 --- a/addons/overthrow_main/functions/events/fn_keyHandler.sqf +++ b/addons/overthrow_main/functions/events/fn_keyHandler.sqf @@ -281,9 +281,7 @@ if(!dialog) then { private _cTarget = cursorTarget; if((_cTarget isKindOf "CAManBase") && (alive _cTarget) && (!isplayer _cTarget) && !(side _cTarget isEqualTo west) && (_cTarget distance player) < 10) exitWith { - if((!(player getVariable ["OT_tute",true]) || !(player getVariable ["OT_tute_inProgress", false]))) exitWith { - _cTarget call OT_fnc_talkToCiv; - }; + _cTarget call OT_fnc_talkToCiv; }; [] spawn OT_fnc_mainMenu; }; diff --git a/addons/overthrow_main/functions/events/fn_respawnHandler.sqf b/addons/overthrow_main/functions/events/fn_respawnHandler.sqf index 36122cc4..bc2b68f7 100644 --- a/addons/overthrow_main/functions/events/fn_respawnHandler.sqf +++ b/addons/overthrow_main/functions/events/fn_respawnHandler.sqf @@ -43,11 +43,11 @@ removeBackpack player; removeVest player; player setVariable ["ot_isSmoking", false]; -player addWeapon "ItemMap"; +player addWeaponGlobal "ItemMap"; _housepos = _old getVariable "home"; _town = _housepos call OT_fnc_nearestTown; -player setPos _housepos; +player setPos (_housepos findEmptyPosition [1,20,typeof _new]); _clothes = uniform _old; player forceAddUniform _clothes; [] spawn OT_fnc_setupPlayer; diff --git a/addons/overthrow_main/functions/factions/CRIM/fn_CRIMLoop.sqf b/addons/overthrow_main/functions/factions/CRIM/fn_CRIMLoop.sqf index c0b34b84..511e214c 100644 --- a/addons/overthrow_main/functions/factions/CRIM/fn_CRIMLoop.sqf +++ b/addons/overthrow_main/functions/factions/CRIM/fn_CRIMLoop.sqf @@ -41,6 +41,8 @@ if !(crim_counter < 12) then { server setVariable [format["police%1",_town],_garrison,true]; [_town,-2] call OT_fnc_stability; [_town,-2] call OT_fnc_support; + _mrkid = format["%1-police",_town]; + _mrkid setMarkerText format["%1",_garrison]; }; }; if(_numingang < _garrison) then { diff --git a/addons/overthrow_main/functions/factions/CRIM/fn_formGang.sqf b/addons/overthrow_main/functions/factions/CRIM/fn_formGang.sqf index 80c2b36c..a5137ab1 100644 --- a/addons/overthrow_main/functions/factions/CRIM/fn_formGang.sqf +++ b/addons/overthrow_main/functions/factions/CRIM/fn_formGang.sqf @@ -39,6 +39,8 @@ if((count _possible) > 0) then { //And the gang leader in his own group private _leaderGroup = creategroup [opfor,true]; + _leaderGroup setVariable ["VCM_TOUGHSQUAD",true,true]; + _leaderGroup setVariable ["VCM_NORESCUE",true,true]; private _pos = [_home,10] call SHK_pos_fnc_pos; _civ = _leaderGroup createUnit [OT_CRIM_Unit, _pos, [],0, "NONE"]; _civ setRank "COLONEL"; @@ -51,8 +53,12 @@ if((count _possible) > 0) then { _wp = _leaderGroup addWaypoint [_home,0]; _wp setWaypointType "GUARD"; + _wp = _leaderGroup addWaypoint [_home,0]; + _wp setWaypointType "CYCLE"; private _group = creategroup [opfor,true]; + _group setVariable ["VCM_TOUGHSQUAD",true,true]; + _group setVariable ["VCM_NORESCUE",true,true]; spawner setVariable [format["gangspawn%1",_gangid],_group]; _groups pushback _group; _groups pushback _leaderGroup; diff --git a/addons/overthrow_main/functions/factions/GUER/fn_GUERLoop.sqf b/addons/overthrow_main/functions/factions/GUER/fn_GUERLoop.sqf index 3ac8e4ce..3d50028d 100644 --- a/addons/overthrow_main/functions/factions/GUER/fn_GUERLoop.sqf +++ b/addons/overthrow_main/functions/factions/GUER/fn_GUERLoop.sqf @@ -24,6 +24,16 @@ if(_trackcounter > 5) then { spawner setVariable ["track",_track,false]; }; +//Stop civilians from fleeing after 20 seconds +{ + if(_x getVariable ["fleeing",false]) then { + if((time - (_x getVariable ["fleeingstart",0])) > 20) then { + _x setVariable ["fleeing",false]; + _x setBehaviour "SAFE"; + }; + }; +}foreach(allGroups select {(side _x) isEqualTo civilian}); + private _dead = count alldeadmen; if(_dead > 150) then { format["There are %1 dead bodies, loot them or clean via options",_dead] remoteExec ["OT_fnc_notifyMinor",0,false]; @@ -385,7 +395,7 @@ if ((date select 4) != _lastmin) then { if(_currentCls isKindOf ["Pistol",configFile >> "CfgWeapons"]) exitWith { _veh addWeaponCargoGlobal [_currentCls,_numtoproduce]; }; - if(_currentCls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_currentCls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { _veh addMagazineCargoGlobal [_currentCls,_numtoproduce]; }; _veh addItemCargoGlobal [_currentCls,_numtoproduce]; diff --git a/addons/overthrow_main/functions/factions/NATO/fn_NATOAirSupport.sqf b/addons/overthrow_main/functions/factions/NATO/fn_NATOAirSupport.sqf index 14aa3aee..9babb15f 100644 --- a/addons/overthrow_main/functions/factions/NATO/fn_NATOAirSupport.sqf +++ b/addons/overthrow_main/functions/factions/NATO/fn_NATOAirSupport.sqf @@ -4,7 +4,18 @@ private _vehtype = OT_NATO_Vehicles_AirSupport call BIS_fnc_SelectRandom; private _dir = [_frompos,_attackpos] call BIS_fnc_dirTo; -_pos = [_frompos,0,120,false,[0,0],[250,_vehtype]] call SHK_pos_fnc_pos; +//look for a helipad +private _helipads = (_frompos nearObjects ["Land_HelipadCircle_F", 400]) + (_frompos nearObjects ["Land_HelipadSquare_F", 400]); +private _pos = false; +{ + //check if theres anything on it + private _on = ASLToAGL getPosASL _x nearEntities ["Air",15]; + if((count _on) isEqualTo 0) exitWith {_pos = getPosASL _x;_dir = getDir _x}; +}foreach(_helipads); + +if !(_pos isEqualType []) then { + _pos = [_frompos,0,120,false,[0,0],[250,_vehtype]] call SHK_pos_fnc_pos; +}; private _group = creategroup blufor; private _veh = createVehicle [_vehtype, _pos, [], 0,""]; @@ -83,21 +94,4 @@ while {(count (waypoints _group)) > 0} do { deleteWaypoint ((waypoints _group) select 0); }; -sleep 1; - -_wp = _group addWaypoint [_frompos,50]; -_wp setWaypointType "MOVE"; -_wp setWaypointBehaviour "SAFE"; -_wp setWaypointSpeed "FULL"; - -waitUntil{sleep 10;(alive _veh && (_veh distance _frompos) < 150) || !alive _veh}; - -if(alive _veh) then { - while {(count (waypoints _group)) > 0} do { - deleteWaypoint ((waypoints _group) select 0); - }; - _veh land "LAND"; - waitUntil{sleep 10;(getpos _veh)#2 < 2}; -}; -_veh call OT_fnc_cleanup; -_group call OT_fnc_cleanup; +[_veh,_pos,_group] spawn OT_fnc_landAndCleanupHelicopter; diff --git a/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundForces.sqf b/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundForces.sqf index ab7b5366..bc10dc16 100644 --- a/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundForces.sqf +++ b/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundForces.sqf @@ -19,17 +19,29 @@ if !(_byair) then { sleep 0.5; private _allunits = []; private _veh = false; - +private _pos = false; //Transport private _tgroup = creategroup blufor; +private _dir = 0; -private _pos = _frompos findEmptyPosition [15,100,_vehtype]; -if(count _pos == 0) then { - _pos = [_frompos,0,75,false,[0,0],[120,_vehtype]] call SHK_pos_fnc_pos; +if(_byair) then { + //find helipads + private _helipads = (_frompos nearObjects ["Land_HelipadCircle_F", 400]) + (_frompos nearObjects ["Land_HelipadSquare_F", 400]); + { + //check if theres anything on it + private _on = ASLToAGL getPosASL _x nearEntities ["Air",15]; + if((count _on) isEqualTo 0) exitWith {_pos = getPosASL _x;_dir = getDir _x}; + }foreach(_helipads); }; -private _dir = [_frompos,_ao] call BIS_fnc_dirTo; +if !(_pos isEqualType []) then { + _pos = _frompos findEmptyPosition [15,100,_vehtype]; + if(count _pos == 0) then { + _pos = [_frompos,0,75,false,[0,0],[120,_vehtype]] call SHK_pos_fnc_pos; + }; + _dir = [_frompos,_ao] call BIS_fnc_dirTo; +}; _veh = _vehtype createVehicle _pos; _veh setVariable ["garrison","HQ",false]; @@ -206,31 +218,10 @@ if(typename _tgroup isEqualTo "GROUP") then { _wp setWaypointStatements ["true","this call OT_fnc_cleanup"]; }; if(_byair && (_veh getVariable ["OT_deployedTroops",false])) exitWith { - while {(count (waypoints _tgroup)) > 0} do { - deleteWaypoint ((waypoints _tgroup) select 0); - }; - - sleep 5; - - _wp = _tgroup addWaypoint [_frompos,50]; - _wp setWaypointType "MOVE"; - _wp setWaypointBehaviour "SAFE"; - _wp setWaypointSpeed "FULL"; - - waitUntil{sleep 10;(alive _veh && (_veh distance _frompos) < 150) || !alive _veh}; - - if(alive _veh) then { - while {(count (waypoints _tgroup)) > 0} do { - deleteWaypoint ((waypoints _tgroup) select 0); - }; - _veh land "LAND"; - waitUntil{sleep 10;(getpos _veh)#2 < 2}; - }; - _veh call OT_fnc_cleanup; - _tgroup call OT_fnc_cleanup; + [_veh,_frompos,_tgroup] spawn OT_fnc_landAndCleanupHelicopter; + _done = true; }; - }; }; }; diff --git a/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundPatrol.sqf b/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundPatrol.sqf index ac29a974..ca4aa83e 100644 --- a/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundPatrol.sqf +++ b/addons/overthrow_main/functions/factions/NATO/fn_NATOGroundPatrol.sqf @@ -1,4 +1,4 @@ -//Scramble a helicopter to take out a target +//Send a patrol vehicle to a town params ["_frombase","_topos",["_delay",0]]; private _abandoned = server getVariable ["NATOabandoned",[]]; diff --git a/addons/overthrow_main/functions/factions/NATO/fn_NATOQRF.sqf b/addons/overthrow_main/functions/factions/NATO/fn_NATOQRF.sqf index e1eee82b..49806bc4 100644 --- a/addons/overthrow_main/functions/factions/NATO/fn_NATOQRF.sqf +++ b/addons/overthrow_main/functions/factions/NATO/fn_NATOQRF.sqf @@ -45,6 +45,67 @@ _abandoned = server getvariable ["NATOabandoned",[]]; }foreach([OT_objectiveData + OT_airportData,[],{_pos distance (_x select 0)},"ASCEND"] call BIS_fnc_SortBy); diag_log format["Overthrow: NATO QRF spend is %1",_strength]; +//add helipads to possibles +{ + _x params ["","_name"]; + if !(_name in _abandoned) then { + _air pushback _x; + }; +}foreach(OT_NATOHelipads); + +//sort airfields + helipads by distance +_air = [_air,[],{_pos distance (_x select 0)},"ASCEND"] call BIS_fnc_SortBy; + +//Send ground forces by air +private _count = 0; +{ + _x params ["_obpos","_name","_pri"]; + + _dir = [_pos,_obpos] call BIS_fnc_dirTo; + _ao = [_pos,_dir] call OT_fnc_getAO; + [_obpos,_ao,_pos,true,300] spawn OT_fnc_NATOGroundForces; + diag_log format["Overthrow: NATO Sent ground forces by air from %1 %2",_name,str _obpos]; + _strength = _strength - 100; + + if(_pri > 600 && _strength >= 500) then { + _ao = [_pos,_dir] call OT_fnc_getAO; + [_obpos,_ao,_pos,true,420] spawn OT_fnc_NATOGroundForces; + _strength = _strength - 100; + diag_log format["Overthrow: NATO Sent extra ground forces by air from %1 %2",_name,str _obpos]; + }; + _count = _count + 1; + + if(_strength <=0 || _count isEqualTo 4) exitWith {}; +}foreach(_air); +sleep 2; + +//Send ground forces by land +if(_strength >= 150) then { + { + _x params ["_obpos","_name","_pri"]; + + _dir = [_pos,_obpos] call BIS_fnc_dirTo; + _ao = [_pos,_dir] call OT_fnc_getAO; + + if(_pri > 100 && _popControl > 1000 && _popControl > (random 2000)) then { + [_obpos,_ao,_pos,0] spawn OT_fnc_NATOAPCInsertion; + }else{ + [_obpos,_ao,_pos,false,0] spawn OT_fnc_NATOGroundForces; + }; + + diag_log format["Overthrow: NATO Sent ground forces from %1 %2",_name,str _obpos]; + _strength = _strength - 100; + if(_strength >= 150) then { + _ao = [_pos,_dir] call OT_fnc_getAO; + [_obpos,_ao,_pos,false,120] spawn OT_fnc_NATOGroundForces; + _strength = _strength - 100; + diag_log format["Overthrow: NATO Sent extra ground forces from %1 %2",_name,str _obpos]; + }; + if(_strength <=0) exitWith {}; + }foreach(_ground); +}; +sleep 2; + if(_strength > 500 && (count _air) > 0) then { //Send CAS _obpos = (_air select 0) select 0; @@ -55,7 +116,7 @@ if(_strength > 500 && (count _air) > 0) then { }; sleep 2; -if(_popControl > 500 && _strength > 1500 && (count _air) > 0) then { +if(_popControl > 1000 && _strength > 1000 && (count _air) > 0) then { //Send more CAS private _from = _air call BIS_fnc_selectRandom; _obpos = _from select 0; @@ -98,56 +159,6 @@ if((count _ground > 0) && (_strength > 1500) && (_popControl > 500)) then { }; sleep 2; -//Send ground forces by land -if(_strength >= 150) then { - { - _x params ["_obpos","_name","_pri"]; - - _dir = [_pos,_obpos] call BIS_fnc_dirTo; - _ao = [_pos,_dir] call OT_fnc_getAO; - - if(_pri > 100 && _popControl > 1000 && _popControl > (random 2000)) then { - [_obpos,_ao,_pos,0] spawn OT_fnc_NATOAPCInsertion; - }else{ - [_obpos,_ao,_pos,false,0] spawn OT_fnc_NATOGroundForces; - }; - - diag_log format["Overthrow: NATO Sent ground forces from %1 %2",_name,str _obpos]; - _strength = _strength - 150; - if(_strength >= 150) then { - _ao = [_pos,_dir] call OT_fnc_getAO; - [_obpos,_ao,_pos,false,120] spawn OT_fnc_NATOGroundForces; - _strength = _strength - 150; - diag_log format["Overthrow: NATO Sent extra ground forces from %1 %2",_name,str _obpos]; - }; - if(_strength <=0) exitWith {}; - }foreach(_ground); -}; -sleep 2; - -//Send ground forces by air -if(_strength >= 150) then { - { - _x params ["_obpos","_name","_pri"]; - - _dir = [_pos,_obpos] call BIS_fnc_dirTo; - _ao = [_pos,_dir] call OT_fnc_getAO; - [_obpos,_ao,_pos,true,300] spawn OT_fnc_NATOGroundForces; - diag_log format["Overthrow: NATO Sent ground forces by air from %1 %2",_name,str _obpos]; - _strength = _strength - 150; - - if(_pri > 600 && _strength >= 150) then { - _ao = [_pos,_dir] call OT_fnc_getAO; - [_obpos,_ao,_pos,true,420] spawn OT_fnc_NATOGroundForces; - _strength = _strength - 150; - diag_log format["Overthrow: NATO Sent extra ground forces by air from %1 %2",_name,str _obpos]; - }; - - if(_strength <=0) exitWith {}; - }foreach(_air); -}; -sleep 2; - //Send delayed APC in mid-game if(_popControl > 1000) then { { diff --git a/addons/overthrow_main/functions/factions/NATO/fn_initNATO.sqf b/addons/overthrow_main/functions/factions/NATO/fn_initNATO.sqf index 2adc7315..2d3a9d36 100644 --- a/addons/overthrow_main/functions/factions/NATO/fn_initNATO.sqf +++ b/addons/overthrow_main/functions/factions/NATO/fn_initNATO.sqf @@ -68,6 +68,7 @@ OT_NATOcomms = server getVariable ["NATOcomms",[]]; OT_NATOhvts = server getVariable ["NATOhvts",[]]; OT_allObjectives = []; OT_allComms = []; +OT_NATOHelipads = []; private _diff = server getVariable ["OT_difficulty",1]; @@ -85,7 +86,10 @@ if((server getVariable "StartupType") == "NEW" || (server getVariable ["NATOvers }; }foreach (OT_allTowns); server setVariable ["NATOabandoned",_abandoned,true]; - server setVariable ["NATOresources",2000,true]; + private _startingResources = 500; + if(_diff isEqualTo 1) then {_startingResources = 1500}; + if(_diff isEqualTo 2) then {_startingResources = 2500}; + server setVariable ["NATOresources",_startingResources,true]; server setVariable ["garrisonHQ",1000,false]; OT_NATOobjectives = []; OT_NATOcomms = []; @@ -150,6 +154,13 @@ if((server getVariable "StartupType") == "NEW" || (server getVariable ["NATOvers }else{ OT_NATOobjectives pushBack _x; }; + //Check for helipads + if !(_name in OT_allAirports) then { + private _helipads = (_pos nearObjects ["Land_HelipadCircle_F", 400]) + (_pos nearObjects ["Land_HelipadSquare_F", 400]); + if((count _helipads) > 0) then { + OT_NATOHelipads pushbackUnique _x; + }; + }; }foreach (OT_objectiveData + OT_airportData); private _count = 0; @@ -196,29 +207,31 @@ if((server getVariable "StartupType") == "NEW" || (server getVariable ["NATOvers }; }foreach(OT_airportData); - { - _x params ["_type","_num"]; - private _count = 0; - while {_count < _num} do { - private _name = _prilist call BIS_fnc_selectRandom; - private _garrison = server getVariable [format["airgarrison%1",_name],[]]; - _garrison pushback _type; - _count = _count + 1; - server setVariable [format ["airgarrison%1",_name],_garrison,true]; - }; - }foreach(OT_NATO_Vehicles_AirGarrison); - - //Distribute some random Air vehicles - _airvehs = OT_allBLUOffensiveVehicles select {_x isKindOf "Air"}; - { - _name = _x; - if((random 200) < (count _airvehs)) then { - _type = selectRandom _airvehs; - private _garrison = server getVariable [format["airgarrison%1",_name],[]]; - _garrison pushback _type; - server setVariable [format ["airgarrison%1",_name],_garrison,true]; - }; - }foreach(_prilist); + if((count _prilist) > 0) then { + { + _x params ["_type","_num"]; + private _count = 0; + while {_count < _num} do { + private _name = _prilist call BIS_fnc_selectRandom; + private _garrison = server getVariable [format["airgarrison%1",_name],[]]; + _garrison pushback _type; + _count = _count + 1; + server setVariable [format ["airgarrison%1",_name],_garrison,true]; + }; + }foreach(OT_NATO_Vehicles_AirGarrison); + + //Distribute some random Air vehicles + _airvehs = OT_allBLUOffensiveVehicles select {_x isKindOf "Air"}; + { + _name = _x; + if((random 200) < (count _airvehs)) then { + _type = selectRandom _airvehs; + private _garrison = server getVariable [format["airgarrison%1",_name],[]]; + _garrison pushback _type; + server setVariable [format ["airgarrison%1",_name],_garrison,true]; + }; + }foreach(_prilist); + }; //Distribute static AA to airfields { @@ -262,8 +275,6 @@ if((server getVariable "StartupType") == "NEW" || (server getVariable ["NATOvers }; diag_log "Overthrow: NATO Init Done"; -publicVariable "OT_allComms"; - { _x params ["_pos","_name"]; private _mrk = createMarker [_name,_pos]; @@ -294,6 +305,16 @@ publicVariable "OT_allComms"; server setVariable [_name,_pos,true]; OT_allObjectives pushback _name; + + //Check for helipads + if !((server getVariable "StartupType") == "NEW" || (server getVariable ["NATOversion",0]) < OT_NATOversion) then { + if !(_name in OT_allAirports) then { + private _helipads = (_pos nearObjects ["Land_HelipadCircle_F", 400]) + (_pos nearObjects ["Land_HelipadSquare_F", 400]); + if((count _helipads) > 0) then { + OT_NATOHelipads pushbackUnique _x; + }; + }; + }; }foreach(OT_NATOobjectives); sleep 0.2; @@ -331,6 +352,7 @@ private _revealed = server getVariable ["revealedFOBs",[]]; { _x params ["_pos","_garrison","_upgrades"]; OT_flag_NATO createVehicle _pos; + private _count = 0; private _group = creategroup blufor; while {_count < _garrison} do { @@ -359,6 +381,7 @@ private _revealed = server getVariable ["revealedFOBs",[]]; }; }foreach(server getVariable ["NATOfobs",[]]); - +publicVariable "OT_allObjectives"; +publicVariable "OT_allComms"; OT_NATOInitDone = true; publicVariable "OT_NATOInitDone"; diff --git a/addons/overthrow_main/functions/factions/fn_factionNATO.sqf b/addons/overthrow_main/functions/factions/fn_factionNATO.sqf index a44012fe..0051f357 100644 --- a/addons/overthrow_main/functions/factions/fn_factionNATO.sqf +++ b/addons/overthrow_main/functions/factions/fn_factionNATO.sqf @@ -264,9 +264,9 @@ publicVariable "OT_nextNATOTurn"; _count = 0; _chance = 98; - _gain = 25; + _gain = 75; _mul = 25; - if(_diff > 1) then {_gain = 75;_mul = 50;_chance = 97}; + if(_diff > 1) then {_gain = 150;_mul = 50;_chance = 97}; if(_diff < 1) then {_gain = 0;_mul = 15;_chance = 99}; if(_popControl > 1000) then {_chance = _chance - 1}; if(_popControl > 2000) then {_chance = _chance - 1}; @@ -506,24 +506,30 @@ publicVariable "OT_nextNATOTurn"; //Send a ground patrol private _last = spawner getVariable ["NATOlastpatrol",0]; - if((time - _last) > 1200 && _spend > 150 && _popControl > 200) then { - + if((time - _last) > 1200 && _spend > 150) then { + private _done = false; { _town = _x; _stability = server getVariable format ["stability%1",_town]; _townPos = server getVariable _town; - _base = _townPos call OT_fnc_nearestObjective; - _basename = _base select 1; - _basepos = _base select 0; - _baseregion = _basepos call OT_fnc_getRegion; - _townregion = _townPos call OT_fnc_getRegion; - _dist = _basepos distance _townPos; - if(!(_basename in _abandoned) && _baseregion isEqualTo _townregion && _dist < 5000 && _stability < 50 && (random 100) > _chance) exitWith { - _spend = _spend - 150; - _resources = _resources - 150; - [_basename,_townPos] spawn OT_fnc_NATOGroundPatrol; - spawner setVariable ["NATOlastpatrol",time,false]; + if(_townPos call OT_fnc_inSpawnDistance) then { + _base = _townPos call OT_fnc_nearestObjective; + _basename = _base select 1; + _basepos = _base select 0; + if !(_basename in OT_allComms) then { + _baseregion = _basepos call OT_fnc_getRegion; + _townregion = _townPos call OT_fnc_getRegion; + _dist = _basepos distance _townPos; + if(!(_basename in _abandoned) && _baseregion isEqualTo _townregion && _dist < 5000 && _stability < 50 && (random 100) > _chance) exitWith { + _spend = _spend - 150; + _done = true; + _resources = _resources - 150; + [_basename,_townPos] spawn OT_fnc_NATOGroundPatrol; + spawner setVariable ["NATOlastpatrol",time,false]; + }; + }; }; + if(_done) exitWith {}; }foreach ([OT_allTowns,[],{random 100},"DESCEND"] call BIS_fnc_sortBy); }; diff --git a/addons/overthrow_main/functions/fn_initBaseVar.sqf b/addons/overthrow_main/functions/fn_initBaseVar.sqf index 4b07400f..ccc62247 100644 --- a/addons/overthrow_main/functions/fn_initBaseVar.sqf +++ b/addons/overthrow_main/functions/fn_initBaseVar.sqf @@ -4,19 +4,24 @@ OT_hasAce = true; OT_hasTFAR = (isClass (configFile >> "CfgPatches" >> "task_force_radio")); OT_hasJetsDLC = ("B_Plane_Fighter_01_F" isKindOf "Air"); +//Buildings (mission override) +OT_shopBuildings = []; +OT_spawnHouseBuildings = []; +OT_carShopBuildings = []; + //Default Loadouts OT_Unit_Police = "I_soldier_F"; OT_Loadout_Police = [ - ["arifle_MX_khk_F","","acc_flashlight","",["30Rnd_65x39_caseless_khaki_mag",30],[],""], [], - ["hgun_ACPC2_F","","","",["9Rnd_45ACP_Mag",8],[],""], - ["U_BG_Guerilla2_3",[["ACE_morphine",1],["ACE_epinephrine",1],["ACE_fieldDressing",2],["30Rnd_65x39_caseless_khaki_mag",1,30]]], - ["V_TacVest_blk_POLICE",[["30Rnd_65x39_caseless_khaki_mag",3,30],["9Rnd_45ACP_Mag",1,8]]], + [], + ["hgun_P07_khk_F","","","",["16Rnd_9x21_Mag",17],[],""], + ["U_BG_Guerilla2_3",[]], + ["V_TacVest_blk_POLICE",[["16Rnd_9x21_Mag",4,17]]], [], "H_Cap_police", - "G_Spectacles_Tinted", + "", [], - ["ItemMap","","","","",""] + ["","","","","",""] ]; //Default recruit types and squads diff --git a/addons/overthrow_main/functions/fn_initOverthrow.sqf b/addons/overthrow_main/functions/fn_initOverthrow.sqf index 8b7bd94e..14b456cc 100644 --- a/addons/overthrow_main/functions/fn_initOverthrow.sqf +++ b/addons/overthrow_main/functions/fn_initOverthrow.sqf @@ -69,7 +69,6 @@ OT_tpl_checkpoint = [] call compileFinal preProcessFileLineNumbers "data\templat [] call OT_fnc_initNATO; [] spawn OT_fnc_factionNATO; [] spawn OT_fnc_factionGUER; - [] spawn OT_fnc_factionCIV; [] spawn OT_fnc_factionCRIM; waitUntil {!isNil "OT_NATOInitDone"}; @@ -97,36 +96,34 @@ OT_tpl_checkpoint = [] call compileFinal preProcessFileLineNumbers "data\templat addMissionEventHandler ["PlayerConnected",OT_fnc_playerConnectHandler]; addMissionEventHandler ["HandleDisconnect",OT_fnc_playerDisconnectHandler]; }; - addMissionEventHandler ["EntityKilled",OT_fnc_deathHandler]; + ["Building", "Dammaged", OT_fnc_buildingDamagedHandler] call CBA_fnc_addClassEventHandler; //ACE3 events ["ace_cargoLoaded",OT_fnc_cargoLoadedHandler] call CBA_fnc_addEventHandler; ["ace_common_setFuel",OT_fnc_refuelHandler] call CBA_fnc_addEventHandler; ["ace_explosives_place",OT_fnc_explosivesPlacedHandler] call CBA_fnc_addEventHandler; - ["Building", "Dammaged", OT_fnc_buildingDamagedHandler] call CBA_fnc_addClassEventHandler; ["ace_tagCreated", OT_fnc_taggedHandler] call CBA_fnc_addEventHandler; - //Setup fuel pumps for interaction - { - //[_x,0] call ace_interact_menu_fnc_addMainAction; - }foreach(OT_fuelPumps); - - ["OT_autosave_loop"] call OT_fnc_addActionLoop; - ["OT_civilian_cleanup_crew", "time > OT_cleanup_civilian_loop"," - OT_cleanup_civilian_loop = time + (5*60); - private _totalcivs = {(side _x isEqualTo civilian) && !captive _x} count (allUnits); - if(_totalcivs < 50) exitWith {}; - { - if (side group _x isEqualTo civilian && {!(isPlayer _x)} && {!(_x getVariable [""shopcheck"",false])} && { ({side _x isEqualTo civilian} count ((getPos _x) nearObjects [""CAManBase"",150])) > round(150*OT_spawnCivPercentage) } ) then { - private _group = group _x; - private _unit = _x; - deleteVehicle _unit; - if (count units _group < 1) then { - deleteGroup _group; + if(isServer) then { + addMissionEventHandler ["EntityKilled",OT_fnc_deathHandler]; + + ["OT_autosave_loop"] call OT_fnc_addActionLoop; + ["OT_civilian_cleanup_crew", "time > OT_cleanup_civilian_loop"," + OT_cleanup_civilian_loop = time + (5*60); + private _totalcivs = {(side _x isEqualTo civilian) && !captive _x} count (allUnits); + if(_totalcivs < 50) exitWith {}; + { + if (side group _x isEqualTo civilian && {!(isPlayer _x)} && {!(_x getVariable [""shopcheck"",false])} && { ({side _x isEqualTo civilian} count ((getPos _x) nearObjects [""CAManBase"",150])) > round(150*OT_spawnCivPercentage) } ) then { + private _group = group _x; + private _unit = _x; + deleteVehicle _unit; + if (count units _group < 1) then { + deleteGroup _group; + }; }; - }; - }forEach (allUnits); - "] call OT_fnc_addActionLoop; + }forEach (allUnits); + "] call OT_fnc_addActionLoop; + }; OT_serverInitDone = true; publicVariable "OT_serverInitDone"; diff --git a/addons/overthrow_main/functions/fn_initVar.sqf b/addons/overthrow_main/functions/fn_initVar.sqf index d3aeb467..b9358133 100644 --- a/addons/overthrow_main/functions/fn_initVar.sqf +++ b/addons/overthrow_main/functions/fn_initVar.sqf @@ -82,7 +82,7 @@ OT_voices_eastern = []; }foreach("getNumber(_x >> 'scope') isEqualTo 2" configClasses (configfile >> "CfgVoice")); //Find houses -OT_hugePopHouses = ["Land_MultistoryBuilding_01_F","Land_MultistoryBuilding_03_F","Land_MultistoryBuilding_04_F"]; //buildings with potentially lots of people living in them +OT_hugePopHouses = ["Land_MultistoryBuilding_01_F","Land_MultistoryBuilding_03_F","Land_MultistoryBuilding_04_F","Land_House_2W04_F","Land_House_2W03_F"]; //buildings with potentially lots of people living in them OT_mansions = ["Land_House_Big_02_F","Land_House_Big_03_F","Land_Hotel_01_F","Land_Hotel_02_F"]; //buildings that rich guys like to live in OT_lowPopHouses = []; OT_medPopHouses = []; @@ -266,14 +266,37 @@ OT_spawnHouses = []; OT_allRealEstate pushBackUnique _cls; }foreach( "getNumber ( _x >> ""ot_isPlayerHouse"" ) isEqualTo 1" configClasses ( configFile >> "CfgVehicles" ) ); +//Mission house overrides +{ + _x params ["_cls","_template"]; + OT_spawnHouses pushBack _cls; + OT_allBuyableBuildings pushBackUnique _cls; + OT_allRealEstate pushBackUnique _cls; + templates setVariable [_cls,_template,true]; +}foreach(OT_spawnHouseBuildings); + OT_gunDealerHouses = OT_spawnHouses; private _allShops = "getNumber ( _x >> ""ot_isShop"" ) isEqualTo 1" configClasses ( configFile >> "CfgVehicles" ); OT_shops = _allShops apply {configName _x}; +//Mission shop overrides +{ + _x params ["_cls","_template"]; + OT_shops pushBack _cls; + templates setVariable [_cls,_template,true]; +}foreach(OT_shopBuildings); + private _allCarShops = "getNumber ( _x >> ""ot_isCarDealer"" ) isEqualTo 1" configClasses ( configFile >> "CfgVehicles" ); OT_carShops = _allCarShops apply {configName _x}; +//Mission car shop overrides +{ + _x params ["_cls","_template"]; + OT_carShops pushBack _cls; + templates setVariable [_cls,_template,true]; +}foreach(OT_carShopBuildings); + //Calculate prices //First, load the hardcoded prices from data/prices.sqf if(isServer) then { @@ -757,7 +780,7 @@ OT_allLegalClothing = []; { private _name = configName _x; private _m = getNumber(_x >> "mass"); - if(_name isKindOf ["CA_Magazine",configFile >> "CfgMagazines"] && (_name != "NLAW_F") && !(_name isKindOf ["VehicleMagazine",configFile >> "CfgMagazines"])) then { + if(_name isKindOf ["Default",configFile >> "CfgMagazines"] && (_name != "NLAW_F") && !(_name isKindOf ["VehicleMagazine",configFile >> "CfgMagazines"])) then { private _cost = round(_m * 4); private _desc = getText(_x >> "descriptionShort"); if((_desc find ".408") > -1) then { @@ -823,7 +846,7 @@ if(isServer) then { private _clsCfg = _cfgVeh >> _name; private _cost = getNumber (_clsCfg >> "armor") * _multiply; private _steel = round(getNumber (_clsCfg >> "armor") * 0.5); - private _numturrets = count("!((configName _x) select [0,5] == ""Cargo"")" configClasses(_clsCfg >> "Turrets")); + private _numturrets = count("!((configName _x) select [0,5] == ""Cargo"") && !((count getArray (_x >> ""magazines"")) isEqualTo 0)" configClasses(_clsCfg >> "Turrets")); private _plastic = 2; if(_numturrets > 0) then { _cost = _cost + (_numturrets * _cost * 10); @@ -910,7 +933,7 @@ if(isServer) then { OT_staticMachineGuns = ["I_HMG_01_F","I_HMG_01_high_F","I_HMG_01_A_F","O_HMG_01_F","O_HMG_01_high_F","O_HMG_01_A_F","B_HMG_01_F","B_HMG_01_high_F","B_HMG_01_A_F"]; OT_staticWeapons = ["I_Mortar_01_F","I_static_AA_F","I_static_AT_F","I_GMG_01_F","I_GMG_01_high_F","I_GMG_01_A_F","I_HMG_01_F","I_HMG_01_high_F","I_HMG_01_A_F","O_static_AA_F","O_static_AT_F","O_Mortar_01_F","O_GMG_01_F","O_GMG_01_high_F","O_GMG_01_A_F","O_HMG_01_F","O_HMG_01_high_F","O_HMG_01_A_F","B_static_AA_F","B_static_AT_F","B_Mortar_01_F","B_GMG_01_F","B_GMG_01_high_F","B_GMG_01_A_F","B_HMG_01_F","B_HMG_01_high_F","B_HMG_01_A_F"]; -OT_miscables = ["ACE_Wheel","ACE_Track","Land_PortableLight_double_F","Land_PortableLight_single_F","Land_Camping_Light_F","Land_PortableHelipadLight_01_F","PortableHelipadLight_01_blue_F", +OT_miscables = ["ACE_Wheel","ACE_Track",OT_item_Workbench,"Land_PortableLight_double_F","Land_PortableLight_single_F","Land_Camping_Light_F","Land_PortableHelipadLight_01_F","PortableHelipadLight_01_blue_F", "PortableHelipadLight_01_green_F","PortableHelipadLight_01_red_F","PortableHelipadLight_01_white_F","PortableHelipadLight_01_yellow_F","Land_Campfire_F","ArrowDesk_L_F", "ArrowDesk_R_F","ArrowMarker_L_F","ArrowMarker_R_F","Pole_F","Land_RedWhitePole_F","RoadBarrier_F","RoadBarrier_small_F","RoadCone_F","RoadCone_L_F","Land_VergePost_01_F", "TapeSign_F","Land_LampDecor_F","Land_WheelChock_01_F","Land_Sleeping_bag_F","Land_Sleeping_bag_blue_F","Land_WoodenLog_F","FlagChecked_F","FlagSmall_F","Land_LandMark_F","Land_Bollard_01_F"]; diff --git a/addons/overthrow_main/functions/player/fn_clearPlayerWaypoint.sqf b/addons/overthrow_main/functions/player/fn_clearPlayerWaypoint.sqf index 13938976..730b5a6f 100644 --- a/addons/overthrow_main/functions/player/fn_clearPlayerWaypoint.sqf +++ b/addons/overthrow_main/functions/player/fn_clearPlayerWaypoint.sqf @@ -1 +1,4 @@ OT_missionMarker = nil; +while {(count (waypoints group player)) > 0} do { + deleteWaypoint ((waypoints group player) select 0); +}; diff --git a/addons/overthrow_main/functions/player/fn_initPlayerLocal.sqf b/addons/overthrow_main/functions/player/fn_initPlayerLocal.sqf index faa790f0..d67ba306 100644 --- a/addons/overthrow_main/functions/player/fn_initPlayerLocal.sqf +++ b/addons/overthrow_main/functions/player/fn_initPlayerLocal.sqf @@ -31,10 +31,14 @@ if(isNil {server getVariable "generals"}) then { OT_centerPos = getArray (configFile >> "CfgWorlds" >> worldName >> "centerPosition"); if(isMultiplayer && (!isServer)) then { - // both done on server too, no need to execute them again + // this is all done on server too, no need to execute them again call OT_fnc_initBaseVar; call compile preprocessFileLineNumbers "initVar.sqf"; call OT_fnc_initVar; + addMissionEventHandler ["EntityKilled",OT_fnc_deathHandler]; + ["ace_cargoLoaded",OT_fnc_cargoLoadedHandler] call CBA_fnc_addEventHandler; + ["ace_common_setFuel",OT_fnc_refuelHandler] call CBA_fnc_addEventHandler; + ["ace_explosives_place",OT_fnc_explosivesPlacedHandler] call CBA_fnc_addEventHandler; }else{ OT_varInitDone = true; }; @@ -73,6 +77,7 @@ if((isServer || count ([] call CBA_fnc_players) == 1) && (server getVariable ["S if ((["ot_start_autoload", 0] call BIS_fnc_getParamValue) == 1) then { server setVariable ["OT_difficulty",["ot_start_difficulty", 1] call BIS_fnc_getParamValue,true]; server setVariable ["OT_fastTravelType",["ot_start_fasttravel", 1] call BIS_fnc_getParamValue,true]; + server setVariable ["OT_fastTravelRules",["ot_start_fasttravelrules", 1] call BIS_fnc_getParamValue,true]; [] remoteExec ['OT_fnc_loadGame',2,false]; } else { createDialog "OT_dialog_start"; @@ -81,6 +86,8 @@ if((isServer || count ([] call CBA_fnc_players) == 1) && (server getVariable ["S }else{ "Loading" call OT_fnc_notifyStart; }; +OT_showPlayerMarkers = (["ot_showplayermarkers", 1] call BIS_fnc_getParamValue) isEqualTo 1; + waitUntil {sleep 1;!isNil "OT_NATOInitDone"}; private _aplayers = players_NS getVariable ["OT_allplayers",[]]; @@ -147,6 +154,8 @@ if(isMultiplayer || _startup == "LOAD") then { }foreach(_housepos nearObjects 50); }; + (group player) setVariable ["VCM_Disable",true]; + _recruits = server getVariable ["recruits",[]]; _newrecruits = []; { @@ -159,7 +168,8 @@ if(isMultiplayer || _startup == "LOAD") then { _xp = _x select 6; if(_owner isEqualTo (getplayeruid player)) then { if(typename _civ isEqualTo "ARRAY") then { - _civ = group player createUnit [_type,_civ,[],0,"NONE"]; + _pos = _civ findEmptyPosition [5,20,_type]; + _civ = group player createUnit [_type,_pos,[],0,"NONE"]; [_civ,getplayeruid player] call OT_fnc_setOwner; _civ setVariable ["OT_xp",_xp,true]; _civ setVariable ["NOAI",true,true]; @@ -310,7 +320,10 @@ _count = 0; waitUntil {!isNil "OT_SystemInitDone"}; titleText ["Loading Session", "BLACK FADED", 0]; player setCaptive true; -player setPos _housepos; +player setPos (_housepos findEmptyPosition [1,20,typeof player]); +if !("ItemMap" in (assignedItems player)) then { + player linkItem "ItemMap"; +}; [_housepos,_newplayer] spawn { params ["_housepos","_newplayer"]; setViewDistance -1; diff --git a/addons/overthrow_main/functions/player/fn_mapHandler.sqf b/addons/overthrow_main/functions/player/fn_mapHandler.sqf index 0f20e508..93f3de38 100644 --- a/addons/overthrow_main/functions/player/fn_mapHandler.sqf +++ b/addons/overthrow_main/functions/player/fn_mapHandler.sqf @@ -26,7 +26,7 @@ if(isMultiplayer) then { private _grpUnits = groupSelectedUnits player; { - if (!(isPlayer _x) && {(side _x isEqualTo resistance) || captive _x}) then { + if (!(isPlayer _x) && {(side _x isEqualTo resistance) || captive _x} && !(_x getVariable ["polgarrison",false])) then { private _veh = vehicle _x; if(_veh isEqualTo _x) then { private _color = [[0,0.2,0,1],[0,0.5,0,1]] select captive _x; diff --git a/addons/overthrow_main/functions/player/fn_mapSystem.sqf b/addons/overthrow_main/functions/player/fn_mapSystem.sqf index fb7e0594..ea1ed88f 100644 --- a/addons/overthrow_main/functions/player/fn_mapSystem.sqf +++ b/addons/overthrow_main/functions/player/fn_mapSystem.sqf @@ -2,15 +2,18 @@ private ["_eh","_handler"]; if(isMultiplayer) then { addMissionEventHandler ["Draw3D", { + if !(OT_showPlayerMarkers) exitWith {}; { if !(_x isEqualTo player) then { private _dis = round(_x distance player); - private _t = "m"; - if(_dis > 999) then { - _dis = round(_dis / 1000); - _t = "km"; + if(_dis < 250) then { + private _t = "m"; + if(_dis > 999) then { + _dis = round(_dis / 1000); + _t = "km"; + }; + drawIcon3D ["a3\ui_f\data\map\groupicons\selector_selectable_ca.paa", [1,1,1,0.3], getPosATLVisual _x, 1, 1, 0, format["%1 (%2%3)",name _x,_dis,_t], 0, 0.02, "TahomaB", "center", true]; }; - drawIcon3D ["a3\ui_f\data\map\groupicons\selector_selectable_ca.paa", [1,1,1,0.3], getPosATLVisual _x, 1, 1, 0, format["%1 (%2%3)",name _x,_dis,_t], 0, 0.02, "TahomaB", "center", true]; }; }foreach([] call CBA_fnc_players); }]; @@ -57,9 +60,9 @@ _handler = { }; }foreach(_players); }; - _t = 1; + _t = 2; { - if (!(isPlayer _x) && {(side _x isEqualTo resistance) || captive _x}) then { + if (!(isPlayer _x) && {(side _x isEqualTo resistance) || captive _x} && !(_x getVariable ["polgarrison",false])) then { _veh = vehicle _x; if(_veh isEqualTo _x) then { _color = [0,0.5,0,1]; diff --git a/addons/overthrow_main/functions/player/fn_perkSystem.sqf b/addons/overthrow_main/functions/player/fn_perkSystem.sqf index 9c19fc89..692e9482 100644 --- a/addons/overthrow_main/functions/player/fn_perkSystem.sqf +++ b/addons/overthrow_main/functions/player/fn_perkSystem.sqf @@ -1,8 +1,8 @@ private _fitness = _this getVariable ["OT_fitness",1]; -if(_fitness > 1) then { - if(ace_advanced_fatigue_anreserve < 2300) then { - ace_advanced_fatigue_anreserve = ace_advanced_fatigue_anreserve + (_fitness * 15); - if(_fitness isEqualTo 5) then {ace_advanced_fatigue_anreserve = 2300}; - }; + +if(ace_advanced_fatigue_anreserve < 2300) then { + ace_advanced_fatigue_anreserve = ace_advanced_fatigue_anreserve + (_fitness * 12); + if(_fitness isEqualTo 5) then {ace_advanced_fatigue_anreserve = 2300}; }; -[OT_fnc_perkSystem,_this,2] call CBA_fnc_waitAndExecute; \ No newline at end of file + +[OT_fnc_perkSystem,_this,2] call CBA_fnc_waitAndExecute; diff --git a/addons/overthrow_main/functions/player/fn_setupPlayer.sqf b/addons/overthrow_main/functions/player/fn_setupPlayer.sqf index 6585fa0b..6a177970 100644 --- a/addons/overthrow_main/functions/player/fn_setupPlayer.sqf +++ b/addons/overthrow_main/functions/player/fn_setupPlayer.sqf @@ -8,3 +8,13 @@ player call OT_fnc_mapSystem; player setVariable ["player_uid",getPlayerUID player,true]; disableUserInput false; + +//Scroll actions +{ + _x params ["_pos"]; + private _base = _pos nearObjects [OT_flag_IND,5]; + if((count _base) > 0) then { + _base = _base#0; + _base addAction ["Set As Home", {player setVariable ["home",getpos (_this select 0),true];"This FOB is now your home" call OT_fnc_notifyMinor},nil,0,false,true]; + }; +}foreach(server getVariable ["bases",[]]); diff --git a/addons/overthrow_main/functions/player/fn_wantedLoop.sqf b/addons/overthrow_main/functions/player/fn_wantedLoop.sqf index b6eb7305..e1e0dc03 100644 --- a/addons/overthrow_main/functions/player/fn_wantedLoop.sqf +++ b/addons/overthrow_main/functions/player/fn_wantedLoop.sqf @@ -152,7 +152,7 @@ if !(captive _unit) then { if(_this in OT_NATO_priority) exitWith {500}; 200 }; - if(_obpos distance _unitpos < _dist) exitWith { + if((_obpos distance _unitpos) < _dist) exitWith { if(isPlayer _unit) then { "You are in a restricted area" call OT_fnc_notifyMinor; }; diff --git a/addons/overthrow_main/functions/save/fn_loadGame.sqf b/addons/overthrow_main/functions/save/fn_loadGame.sqf index ff6430ba..b90056f9 100644 --- a/addons/overthrow_main/functions/save/fn_loadGame.sqf +++ b/addons/overthrow_main/functions/save/fn_loadGame.sqf @@ -81,6 +81,7 @@ sleep 0.2; _x params ["_pos","_name","_owner"]; _veh = createVehicle [OT_flag_IND, _pos, [], 0, "CAN_COLLIDE"]; + _veh enableDynamicSimulation true; [_veh,_owner] call OT_fnc_setOwner; _veh = createVehicle ["Land_ClutterCutter_large_F", _pos, [], 0, "CAN_COLLIDE"]; @@ -103,10 +104,12 @@ sleep 0.2; case 2: { _val deleteAt 0; { - if(!isNil "_x" && _x isEqualType []) then { - _x params ["_itemClass",["_itemCount",0,[0]]]; - if (_itemCount > 0) then { - warehouse setVariable [format["item_%1",_itemClass],[_itemClass,_itemCount],true]; + if(!isNil "_x") then { + if(_x isEqualType []) then { + _x params [["_itemClass","",[""]],["_itemCount",0,[0]]]; + if (_itemCount > 0 && !(_itemClass isEqualTo "")) then { + warehouse setVariable [format["item_%1",_itemClass],[_itemClass,_itemCount],true]; + }; }; }; }foreach(_val); @@ -230,8 +233,11 @@ sleep 0.2; if(_cls isKindOf ["Pistol",configFile >> "CfgWeapons"]) exitWith { _veh addWeaponCargoGlobal [_cls,_num]; }; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { - _veh addMagazineCargoGlobal [_cls,_num]; + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { + private _scope = getNumber(configFile >> "CfgMagazines" >> _cls >> "scope"); + if(_scope > 1) then { + _veh addMagazineCargoGlobal [_cls,_num]; + }; }; if(_cls isKindOf "Bag_Base") exitWith { _cls = _cls call BIS_fnc_basicBackpack; @@ -302,9 +308,9 @@ sleep 0.2; _set = false; }; if(_key == "recruitables") then { + private _done = false; { _x params ["_cls","_loadout"]; - private _done = false; { _x params ["_c","_l"]; if(_c == _cls) exitWith {_done = true;_x set [1,_loadout]}; diff --git a/addons/overthrow_main/functions/save/fn_savePlayerData.sqf b/addons/overthrow_main/functions/save/fn_savePlayerData.sqf index 0b7df4c1..4a9d09df 100644 --- a/addons/overthrow_main/functions/save/fn_savePlayerData.sqf +++ b/addons/overthrow_main/functions/save/fn_savePlayerData.sqf @@ -1,4 +1,5 @@ params ["_player"]; +if !(_player getVariable ["OT_Loaded",false]) exitWith {}; private _uid = getPlayerUid _player; private _data = []; diff --git a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnAmbientVehicles.sqf b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnAmbientVehicles.sqf index b6532900..235dc01c 100644 --- a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnAmbientVehicles.sqf +++ b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnAmbientVehicles.sqf @@ -14,14 +14,14 @@ if(_town in OT_capitals + OT_sprawling) then {//larger search radius private _count = 0; private _pop = server getVariable format["population%1",_town]; private _stability = server getVariable format ["stability%1",_town]; -private _numVeh = 4; +private _numVeh = 2; if(_pop > 15) then { _numVeh = 3 + round(_pop * OT_spawnVehiclePercentage); }; if(_town isEqualTo (server getVariable "spawntown")) then { - _numVeh = 12; + _numVeh = 6; }; -if(_numVeh > 12) then {_numVeh = 12}; +if(_numVeh > 6) then {_numVeh = 6}; if(count(vehicles) > 200) then {_numVeh = 3}; private _loops = 0; while {(_count < _numVeh) && (_loops < 50)} do { @@ -42,10 +42,16 @@ while {(_count < _numVeh) && (_loops < 50)} do { if (count _roadscon isEqualTo 2) then { _dirveh = [_road, _roadscon select 0] call BIS_fnc_DirTo; if(isNil "_dirveh") then {_dirveh = random 359}; - _posVeh = ([_pos, 6, _dirveh + 90] call BIS_Fnc_relPos) findEmptyPosition [5,15,_vehtype]; - + _posVeh = [_pos, 6, _dirveh + 90] call BIS_Fnc_relPos; + _posEmpty = _posVeh findEmptyPosition [4,15,_vehtype]; + //dont bother if the position isnt empty for 4m + if(count _posEmpty isEqualTo 0) then { + _posVeh = []; + }else{ + if((_posVeh distance _posEmpty) > 4) then {_posVeh = []}; + }; if(count _posVeh > 0) then { - _veh = _vehtype createVehicle _posVeh; + _veh = _vehtype createVehicle _posEmpty; _veh setVariable ["ambient",true,true]; clearItemCargoGlobal _veh; _veh setFuel (0.2 + (random 0.5)); @@ -53,7 +59,7 @@ while {(_count < _numVeh) && (_loops < 50)} do { _veh setDir _dirveh; _count = _count + 1; - if((random 100) > 85 && (count allunits < 300)) then { + if((random 100) > 90 && (count allunits < 300)) then { _group = createGroup CIVILIAN; _groups pushback _group; _civ = _group createUnit [OT_civType_local, _pos, [],0, "NONE"]; @@ -78,7 +84,7 @@ while {(_count < _numVeh) && (_loops < 50)} do { _wp setWaypointCompletionRadius 60; _wp setWaypointStatements ["true","[vehicle this] call OT_fnc_cleanup;unassignVehicle this;[group this] call OT_fnc_cleanup;"]; }else{ - if(_stability < 50 && (random 100) > 75) then { + if(_stability < 50 && (random 100) > 80) then { _veh setDamage [1,false]; //salvage wreck }; }; diff --git a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnCivilians.sqf b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnCivilians.sqf index 822d50ce..b99d67ab 100644 --- a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnCivilians.sqf +++ b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnCivilians.sqf @@ -93,6 +93,8 @@ private _gangs = OT_civilians getVariable [format["gangs%1",_town],[]]; }; }; private _group = creategroup [opfor,true]; + _group setVariable ["VCM_TOUGHSQUAD",true,true]; + _group setVariable ["VCM_NORESCUE",true,true]; _groups pushback _group; spawner setVariable [format["gangspawn%1",_gangid],_group]; if(count _gang > 4) then { //Filter out old gangs @@ -118,6 +120,8 @@ private _gangs = OT_civilians getVariable [format["gangs%1",_town],[]]; //And the gang leader in his own group private _leaderGroup = creategroup [opfor,true]; + _leaderGroup setVariable ["VCM_TOUGHSQUAD",true,true]; + _leaderGroup setVariable ["VCM_NORESCUE",true,true]; private _pos = [_home,10] call SHK_pos_fnc_pos; _civ = _leaderGroup createUnit [OT_CRIM_Unit, _pos, [],0, "NONE"]; _civ setRank "COLONEL"; @@ -127,9 +131,12 @@ private _gangs = OT_civilians getVariable [format["gangs%1",_town],[]]; [_civ] joinSilent _leaderGroup; _civ setVariable ["OT_gangid",_gangid,true]; [_civ,_town] call OT_fnc_initCrimLeader; + _civ setVariable ["hometown",_town,true]; _wp = _leaderGroup addWaypoint [_home,0]; _wp setWaypointType "GUARD"; + _wp = _leaderGroup addWaypoint [_home,0]; + _wp setWaypointType "CYCLE"; _groups pushback _leaderGroup; @@ -158,7 +165,7 @@ private _gangs = OT_civilians getVariable [format["gangs%1",_town],[]]; _civ setVariable ["OT_gangid",_gangid,true]; _civ setVariable ["OT_civid",_civid,true]; _civ setBehaviour "SAFE"; - _civ setVariable ["hometown",_hometown,true]; + _civ setVariable ["hometown",_town,true]; { _x addCuratorEditableObjects [[_civ]]; diff --git a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnGendarmerie.sqf b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnGendarmerie.sqf index 9ae12091..138e4535 100644 --- a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnGendarmerie.sqf +++ b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnGendarmerie.sqf @@ -27,6 +27,8 @@ while {_count < _numNATO} do { private _groupcount = 0; private _group = createGroup west; + _group setVariable ["VCM_TOUGHSQUAD",true,true]; + _group setVariable ["VCM_NORESCUE",true,true]; _group deleteGroupWhenEmpty true; _groups pushBack _group; diff --git a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOCheckpoint.sqf b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOCheckpoint.sqf index 7840ce37..31c3be73 100644 --- a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOCheckpoint.sqf +++ b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOCheckpoint.sqf @@ -34,6 +34,8 @@ _range = 100; _groupcount = 0; _group = createGroup blufor; +_group setVariable ["VCM_TOUGHSQUAD",true,true]; +_group setVariable ["VCM_NORESCUE",true,true]; _groups pushBack _group; _groupcount = 1; diff --git a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOObjective.sqf b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOObjective.sqf index bf109b32..c1787a02 100644 --- a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOObjective.sqf +++ b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnNATOObjective.sqf @@ -18,6 +18,8 @@ private _groups = []; if(_name in OT_allComms) then { private _group = createGroup [blufor,true]; _groups pushBack _group; + _group setVariable ["VCM_TOUGHSQUAD",true,true]; + _group setVariable ["VCM_NORESCUE",true,true]; private _start = _posTown findEmptyPosition [2,50]; private _civ = _group createUnit [OT_NATO_Unit_Sniper, _start, [], 0, "NONE"]; @@ -57,6 +59,8 @@ if(_name in OT_allComms) then { _wp setWaypointType "GUARD"; _wp setWaypointBehaviour "SAFE"; _wp setWaypointSpeed "LIMITED"; + _wp = _group addWaypoint [_posTown,0]; + _wp setWaypointType "CYCLE"; if(_count < _numNATO) then { _start = _posTown findEmptyPosition [2,50]; @@ -74,6 +78,7 @@ if(_name in OT_allComms) then { //put up a flag private _flag = OT_flag_NATO createVehicle _posTown; _groups pushback _flag; + [_flag,[format["Capture %1",_name], {(((getpos player) call OT_fnc_nearestObjective) select 1) call OT_fnc_triggerBattle},nil,0,false,true,"","true",5]] remoteExec ["addAction",0,_flag]; }; //Garrison any buildings @@ -153,6 +158,9 @@ private _groupcount = 0; while {_count < _numNATO} do { private _start = _posTown findEmptyPosition [5,200]; private _group = createGroup blufor; + _group setVariable ["VCM_TOUGHSQUAD",true,true]; + _group setVariable ["VCM_NORESCUE",true,true]; + _group deleteGroupWhenEmpty true; _groups pushBack _group; _groupcount = 1; @@ -281,7 +289,7 @@ private _road = objNull; if(_loc == _name && _status == "") then { private _group = createGroup blufor; _groups pushBack _group; - _group setVariable ["Vcm_Disable",true,false]; //stop him from running off + _group setVariable ["Vcm_Disable",true,true]; //stop him from running off private _pos = [_posTown, 10, 100, 10, 0, 0.3, 0] call BIS_Fnc_findSafePos; private _civ = _group createUnit [OT_NATO_Unit_HVT, _pos, [],0, "NONE"]; _civ setVariable ["garrison","HQ",false]; @@ -303,6 +311,8 @@ private _road = objNull; private _wp = _group addWaypoint [_pos, 50]; _wp setWaypointType "GUARD"; + _wp = _group addWaypoint [_pos, 50]; + _wp setWaypointType "CYCLE"; }; }foreach(OT_NATOhvts); diff --git a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnPolice.sqf b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnPolice.sqf index cc8e59f6..d9cb4203 100644 --- a/addons/overthrow_main/functions/virtualization/spawners/fn_spawnPolice.sqf +++ b/addons/overthrow_main/functions/virtualization/spawners/fn_spawnPolice.sqf @@ -22,6 +22,8 @@ _pergroup = 4; while {_count < _numNATO} do { _groupcount = 0; _group = createGroup resistance; + _group setVariable ["VCM_TOUGHSQUAD",true,true]; + _group setVariable ["VCM_NORESCUE",true,true]; _groups pushBack _group; _start = [[[_posTown,_range]]] call BIS_fnc_randomPos; diff --git a/addons/overthrow_main/functions/warehouse/fn_verifyLoadoutFromWarehouse.sqf b/addons/overthrow_main/functions/warehouse/fn_verifyLoadoutFromWarehouse.sqf index a59d7c25..18094d20 100644 --- a/addons/overthrow_main/functions/warehouse/fn_verifyLoadoutFromWarehouse.sqf +++ b/addons/overthrow_main/functions/warehouse/fn_verifyLoadoutFromWarehouse.sqf @@ -35,7 +35,7 @@ private _ignore = []; _missing pushback _cls; }; _totake = _count - _boxAmount; - if(_cls isKindOf ["CA_Magazine",configFile >> "CfgMagazines"]) exitWith { + if(_cls isKindOf ["Default",configFile >> "CfgMagazines"]) exitWith { while{_count > _boxAmount} do { _count = _count - 1; if(_correct) then {_unit removeMagazine _cls}; diff --git a/addons/overthrow_main/mission_component.hpp b/addons/overthrow_main/mission_component.hpp index 56358ac6..cf399da5 100644 --- a/addons/overthrow_main/mission_component.hpp +++ b/addons/overthrow_main/mission_component.hpp @@ -60,6 +60,18 @@ class Params { texts[] = {"Free", "Costs", "Disabled"}; default = 1; }; + class ot_start_fasttravelrules { + title = "Fast Travel Rules (Only with autoload)"; + values[] = {0, 1, 2}; + texts[] = {"Open", "No Weapons", "Restricted"}; + default = 1; + }; + class ot_showplayermarkers { + title = "Show Player Markers on HUD"; + values[] = {1,0}; + texts[] = {"True", "False"}; + default = 1; + }; class ace_medical_level { title = "ACE Medical Level"; ACE_setting = 1; diff --git a/addons/overthrow_main/missions/fugitive.sqf b/addons/overthrow_main/missions/fugitive.sqf index 38c2c5cc..3d3ed316 100644 --- a/addons/overthrow_main/missions/fugitive.sqf +++ b/addons/overthrow_main/missions/fugitive.sqf @@ -47,6 +47,8 @@ private _difficulty = 1.8; private _civ = _group createUnit [OT_civType_gunDealer, _destination, [],0, "NONE"]; _civ setVariable ["notalk",true,true]; //Tells Overthrow this guy cannot be recruited etc + _civ disableAI "MOVE"; + //Set face,voice and uniform [_civ, (OT_faces_western call BIS_fnc_selectRandom)] remoteExecCall ["setFace", 0, _civ]; [_civ, (OT_voices_western call BIS_fnc_selectRandom)] remoteExecCall ["setSpeaker", 0, _civ]; @@ -56,6 +58,7 @@ private _difficulty = 1.8; [_civ] joinSilent nil; [_civ] joinSilent _group; _civ setVariable ["NOAI",true,false]; + _group setVariable ["Vcm_Disable",true,true]; //reward to killer _civ setVariable ["OT_bounty",2500,true]; @@ -67,6 +70,8 @@ private _difficulty = 1.8; private _numGoons = 1+round(random 4); private _count = 0; private _bgroup = creategroup [blufor,true]; + _bgroup setVariable ["VCM_TOUGHSQUAD",true,true]; + _bgroup setVariable ["VCM_NORESCUE",true,true]; while {(_count < _numGoons)} do { private _start = [[[_destination,5]]] call BIS_fnc_randomPos; @@ -80,8 +85,10 @@ private _difficulty = 1.8; _count = _count + 1; }; - private _wp = _bgroup addWaypoint [_destination,0]; + _wp = _bgroup addWaypoint [_destination,0]; _wp setWaypointType "GUARD"; + _wp = _bgroup addWaypoint [_destination,0]; + _wp setWaypointType "CYCLE"; }, { //Fail check... @@ -99,6 +106,7 @@ private _difficulty = 1.8; }foreach(_destination nearEntities ["CAManBase",15]); if(_alerted and !_alreadyAlerted) then { + _civ enableAI "MOVE"; private _factionName = server getvariable format["factionname%1",_faction]; format ["Incoming message from %1: Traitor has been alerted.",_factionName] remoteExec ["OT_fnc_notifyMinor",0,false]; private _wp = group _civ addWaypoint [[[[_destination,500]]] call BIS_fnc_randomPos,0]; diff --git a/addons/overthrow_main/missions/informant.sqf b/addons/overthrow_main/missions/informant.sqf index 3c7cb792..99a2117b 100644 --- a/addons/overthrow_main/missions/informant.sqf +++ b/addons/overthrow_main/missions/informant.sqf @@ -47,10 +47,13 @@ private _difficulty = 1.8; [_civ, (OT_voices_western call BIS_fnc_selectRandom)] remoteExecCall ["setSpeaker", 0, _civ]; _civ forceAddUniform (OT_clothes_guerilla call BIS_fnc_selectRandom); + _civ disableAI "MOVE"; + //Make sure hes in the group [_civ] joinSilent nil; [_civ] joinSilent _group; _civ setVariable ["NOAI",true,false]; + _group setVariable ["Vcm_Disable",true,true]; //reward to killer _civ setVariable ["OT_bounty",1500,true]; @@ -62,6 +65,8 @@ private _difficulty = 1.8; private _numGoons = 1+round(random 4); private _count = 0; private _bgroup = creategroup [blufor, true]; + _bgroup setVariable ["VCM_TOUGHSQUAD",true,true]; + _bgroup setVariable ["VCM_NORESCUE",true,true]; while {(_count < _numGoons)} do { private _start = [[[_destination,5]]] call BIS_fnc_randomPos; @@ -75,8 +80,10 @@ private _difficulty = 1.8; _count = _count + 1; }; - private _wp = _bgroup addWaypoint [_destination,0]; + _wp = _bgroup addWaypoint [_destination,0]; _wp setWaypointType "GUARD"; + _wp = _bgroup addWaypoint [_destination,0]; + _wp setWaypointType "CYCLE"; }, { //Fail check... @@ -94,6 +101,7 @@ private _difficulty = 1.8; }foreach(_destination nearEntities ["CAManBase",15]); if(_alerted && !_alreadyAlerted) then { + _civ enableAI "MOVE"; format ["NATO Informant has been alerted."] remoteExec ["OT_fnc_notifyMinor",0,false]; private _wp = (group _civ) addWaypoint [[[[_destination,500]]] call BIS_fnc_randomPos,0]; _wp setWaypointSpeed "FULL"; diff --git a/addons/overthrow_main/script_version.hpp b/addons/overthrow_main/script_version.hpp index 001911e1..737fe5ae 100644 --- a/addons/overthrow_main/script_version.hpp +++ b/addons/overthrow_main/script_version.hpp @@ -19,4 +19,4 @@ #define MAJOR 0 #define MINOR 7 #define PATCHLVL 8 -#define BUILD 3 +#define BUILD 4 diff --git a/addons/overthrow_main/ui/dialogs/main.hpp b/addons/overthrow_main/ui/dialogs/main.hpp index 7b02392f..a3eeac13 100644 --- a/addons/overthrow_main/ui/dialogs/main.hpp +++ b/addons/overthrow_main/ui/dialogs/main.hpp @@ -304,7 +304,7 @@ class OT_dialog_vehiclewarehouse w = 0.149531 * safezoneW; h = 0.077 * safezoneH; tooltip = "Stores the contents of this vehicle in the warehouse"; //--- ToDo: Localize; - action = "closeDialog 0;[] spawn OT_fnc_transferTo;"; + action = "closeDialog 0;[] spawn OT_fnc_storeAll;"; }; class RscButton_1603: RscOverthrowButton { @@ -1160,6 +1160,18 @@ class OT_dialog_main h = 0.044 * safezoneH; tooltip = "Purchase this building"; //--- ToDo: Localize; }; + class RscButton_1630: RscOverthrowButton + { + idc = 1630; + action = "closeDialog 0;[] call OT_fnc_logisticsDialog"; + + text = "Vehicles"; //--- ToDo: Localize; + x = 0.881562 * safezoneW + safezoneX; + y = 0.247 * safezoneH + safezoneY; + w = 0.113437 * safezoneW; + h = 0.044 * safezoneH; + tooltip = "List of all military vehicles and their state"; //--- ToDo: Localize; + }; class RscButton_1609: RscOverthrowButton { idc = 1609; diff --git a/addons/overthrow_main/ui/dialogs/resistance.hpp b/addons/overthrow_main/ui/dialogs/resistance.hpp index 9da9659e..55688751 100644 --- a/addons/overthrow_main/ui/dialogs/resistance.hpp +++ b/addons/overthrow_main/ui/dialogs/resistance.hpp @@ -391,5 +391,99 @@ class OT_dialog_jobs + }; +}; + +class OT_dialog_logistics +{ + idd=8000; + movingenable=false; + + class controlsBackground { + class RscStructuredText_1199: RscOverthrowStructuredText + { + idc = 1199; + x = 0.242187 * safezoneW + safezoneX; + y = 0.214 * safezoneH + safezoneY; + w = 0.654844 * safezoneW; + h = 0.572 * safezoneH; + colorBackground[] = {0.1,0.1,0.1,1}; + colorActive[] = {0.1,0.1,0.1,1}; + }; + }; + + class controls + { + //////////////////////////////////////////////////////// + // GUI EDITOR OUTPUT START (by ARMAzac, v1.063, #Jeduvu) + //////////////////////////////////////////////////////// + + class RscListbox_1500: RscOverthrowListbox + { + idc = 1500; + x = 0.247344 * safezoneW + safezoneX; + y = 0.225 * safezoneH + safezoneY; + w = 0.402187 * safezoneW; + h = 0.55 * safezoneH; + colorBackground[] = {0,0,0,0.9}; + onLBSelChanged = "_this call OT_fnc_displayLogisticDetails"; + }; + class RscPicture_1200: RscOverthrowPicture + { + idc = 1200; + text = ""; + x = 0.654688 * safezoneW + safezoneX; + y = 0.225 * safezoneH + safezoneY; + w = 0.237187 * safezoneW; + h = 0.165 * safezoneH; + colorBackground[] = {0,0,0,0}; + }; + class RscButton_1600: RscOverthrowButton + { + idc = 1600; + text = "Set Waypoint"; //--- ToDo: Localize; + x = 0.840312 * safezoneW + safezoneX; + y = 0.676 * safezoneH + safezoneY; + w = 0.0515625 * safezoneW; + h = 0.099 * safezoneH; + colorBackground[] = {0,0,0,0.8}; + action = "[] call OT_fnc_setVehicleWaypoint;"; + }; + class RscButton_1601: RscOverthrowButton + { + idc = 1601; + text = "Clear Waypoint"; //--- ToDo: Localize; + x = 0.778437 * safezoneW + safezoneX; + y = 0.676 * safezoneH + safezoneY; + w = 0.0567187 * safezoneW; + h = 0.099 * safezoneH; + colorBackground[] = {0,0,0,0.8}; + action = "[] call OT_fnc_clearPlayerWaypoint;"; + }; + class RscStructuredText_1100: RscOverthrowStructuredText + { + idc = 1100; + x = 0.654688 * safezoneW + safezoneX; + y = 0.4 * safezoneH + safezoneY; + w = 0.237187 * safezoneW; + h = 0.265 * safezoneH; + colorBackground[] = {0,0,0,0.3}; + }; + class RscButton_1699: RscOverthrowButton + { + idc = 1699; + text = "X"; //--- ToDo: Localize; + action = "closeDialog 0"; + x = 0.732031 * safezoneW + safezoneX; + y = 0.181 * safezoneH + safezoneY; + w = 0.0257812 * safezoneW; + h = 0.044 * safezoneH; + }; + //////////////////////////////////////////////////////// + // GUI EDITOR OUTPUT END + //////////////////////////////////////////////////////// + + + }; };