diff --git a/configs/minorVersion.hpp b/configs/minorVersion.hpp index 2ebc6516c..f0b5c72ca 100644 --- a/configs/minorVersion.hpp +++ b/configs/minorVersion.hpp @@ -1 +1 @@ -56 \ No newline at end of file +57 \ No newline at end of file diff --git a/src/AI/Commander/AICommander.sqf b/src/AI/Commander/AICommander.sqf index a5e626375..d80105606 100644 --- a/src/AI/Commander/AICommander.sqf +++ b/src/AI/Commander/AICommander.sqf @@ -2241,6 +2241,10 @@ http://patorjk.com/software/taag/#p=display&f=Univers&t=CMDR%20AI private _srcGarrisons = CALLM0(_worldNow, "getAliveGarrisons") select { // Must be on our side and not involved in another action GETV(_x, "side") == _side and + { + // General garrison (not anti-air or air) + CALLM0(_x, "getType") == GARRISON_TYPE_GENERAL + } and { !CALLM0(_x, "isBusy") } and { // Must have at least a minimum strength of twice min efficiency @@ -2253,6 +2257,10 @@ http://patorjk.com/software/taag/#p=display&f=Univers&t=CMDR%20AI private _tgtGarrisons = CALLM0(_worldFuture, "getAliveGarrisons") select { // Must be on our side GETV(_x, "side") == _side and + { + // General garrison (not anti-air or air) + CALLM0(_x, "getType") == GARRISON_TYPE_GENERAL + } and { // Not involved in another reinforce action private _action = CALLM0(_x, "getAction"); diff --git a/src/AI/Garrison/initDatabase.sqf b/src/AI/Garrison/initDatabase.sqf index 366b7f4a0..a8176dc83 100644 --- a/src/AI/Garrison/initDatabase.sqf +++ b/src/AI/Garrison/initDatabase.sqf @@ -11,10 +11,10 @@ private _s = WSP_GAR_COUNT; // ---------------- Goal relevance values and effects // The actual relevance returned by goal can be different from the one which is set below ["GoalGarrisonSurrender", 60 ] call AI_misc_fnc_setGoalIntrinsicRelevance; // Only runs when not in combat -["GoalGarrisonRepairAllVehicles", 50 ] call AI_misc_fnc_setGoalIntrinsicRelevance; // Only runs when not in combat ["GoalGarrisonAttackAssignedTargets", 36 ] call AI_misc_fnc_setGoalIntrinsicRelevance; // Gets activated when garrison can see any of the assigned targets ["GoalGarrisonRebalanceVehicleGroups", 35 ] call AI_misc_fnc_setGoalIntrinsicRelevance; // Needs to be higher than defend actions ["GoalGarrisonDefendActive", 34 ] call AI_misc_fnc_setGoalIntrinsicRelevance; +["GoalGarrisonRepairAllVehicles", 33 ] call AI_misc_fnc_setGoalIntrinsicRelevance; // Only runs when not in combat ["GoalGarrisonClearArea", 32 ] call AI_misc_fnc_setGoalIntrinsicRelevance; ["GoalGarrisonJoinLocation", 12 ] call AI_misc_fnc_setGoalIntrinsicRelevance; ["GoalGarrisonMove", 11 ] call AI_misc_fnc_setGoalIntrinsicRelevance; diff --git a/src/AI/Unit/ActionUnitRepairVehicle.sqf b/src/AI/Unit/ActionUnitRepairVehicle.sqf index 04e1945f1..b5e016697 100644 --- a/src/AI/Unit/ActionUnitRepairVehicle.sqf +++ b/src/AI/Unit/ActionUnitRepairVehicle.sqf @@ -14,6 +14,7 @@ CLASS("ActionUnitRepairVehicle", "ActionUnit") VARIABLE("hVeh"); VARIABLE("timeActivated"); + VARIABLE("timeRepairAnimation"); public override METHOD(getPossibleParameters) [ @@ -38,6 +39,7 @@ CLASS("ActionUnitRepairVehicle", "ActionUnit") pr _hVeh = T_GETV("hVeh"); _hO action ["repairVehicle", _hVeh]; + T_SETV("timeRepairAnimation", GAME_TIME); pr _ai = T_GETV("ai"); SETV(_ai, "interactionObject", _hVeh); @@ -63,10 +65,18 @@ CLASS("ActionUnitRepairVehicle", "ActionUnit") pr _state = T_CALLM0("activateIfInactive"); if (_state == ACTION_STATE_ACTIVE) then { - // Makethe actual repair affects lag behind the animation - if (GAME_TIME - T_GETV("timeActivated") > 10) then { - pr _hO = T_GETV("hO"); - pr _hveh = T_GETV("hVeh"); + + pr _hO = T_GETV("hO"); + pr _hveh = T_GETV("hVeh"); + + // Repeat the repair animation periodically + if (GAME_TIME - T_GETV("timeRepairAnimation") > 7) then { + _hO action ["repairVehicle", _hVeh]; + T_SETV("timeRepairAnimation", GAME_TIME); + }; + + // Make the actual repair affects lag behind the animation + if (GAME_TIME - T_GETV("timeActivated") > 45) then { // Check if the unit is not an actual engineer // Doesn't matter much actually // Sometimes engineers can be without toolkit and thus unable to repair vehicle in arma-native way diff --git a/src/Garrison/updateSpawnState.sqf b/src/Garrison/updateSpawnState.sqf index 1ce7a9ac7..75da892d4 100644 --- a/src/Garrison/updateSpawnState.sqf +++ b/src/Garrison/updateSpawnState.sqf @@ -37,8 +37,8 @@ pr _minDistToAi = 0; if (_type == GARRISON_TYPE_ANTIAIR) then { // Anti-air garrison is very special - _minDistToPlayer = 10000; // These are hardcoded for now - _minDistToAi = 4000; + _minDistToPlayer = 5000; // Hardcoded for now + _minDistToAi = vin_spawnDist_garrisonToAI; } else { _minDistToPlayer = vin_spawnDist_garrisonToPlayer; _minDistToAi = vin_spawnDist_garrisonToAI; diff --git a/src/JeroenArsenal/JNA/fn_arsenal_container.sqf b/src/JeroenArsenal/JNA/fn_arsenal_container.sqf index f3e74f144..9ddfa6eda 100644 --- a/src/JeroenArsenal/JNA/fn_arsenal_container.sqf +++ b/src/JeroenArsenal/JNA/fn_arsenal_container.sqf @@ -306,6 +306,7 @@ switch _mode do { /////////////////////////////////////////////////////////////////////////////////////////// case "ColorTabs":{ params["_display"]; +/* { _ctrlTab = _display displayctrl (IDC_RSCDISPLAYARSENAL_TAB + _forEachIndex); @@ -320,8 +321,10 @@ switch _mode do { _ctrlTab ctrlSetBackgroundColor _color; _ctrlTab ctrlSetForegroundColor _color; } forEach jnva_loadout; +*/ }; + /////////////////////////////////////////////////////////////////////////////////////////// case "TabSelect": { params["_display","_index"]; diff --git a/src/Templates/Factions/3CB_TNA_B.sqf b/src/Templates/Factions/3CB_TNA_B.sqf index 44e9cf37d..dc2d497bb 100644 --- a/src/Templates/Factions/3CB_TNA_B.sqf +++ b/src/Templates/Factions/3CB_TNA_B.sqf @@ -31,7 +31,7 @@ _inf set [T_INF_marksman, ["UK3CB_TKA_B_MK"]]; _inf set [T_INF_sniper, ["UK3CB_TKA_B_SF_SNI"]]; _inf set [T_INF_spotter, ["UK3CB_TKA_B_SF_SPOT"]]; _inf set [T_INF_exp, ["UK3CB_TKA_B_DEM"]]; -_inf set [T_INF_ammo, ["UK3CB_TKA_B_STATIC_TRI_AGS30", "UK3CB_TKA_B_STATIC_TRI_DSHKM_HIGH", "UK3CB_TKA_B_STATIC_TRI_DSHKM_LOW", "UK3CB_TKA_B_STATIC_TRI_KORD", "UK3CB_TKA_B_STATIC_TRI_KORNET", "UK3CB_TKA_B_STATIC_TRI_METIS", "UK3CB_TKA_B_STATIC_TRI_NSV", "UK3CB_TKA_B_STATIC_TRI_PODNOS", "UK3CB_TKA_B_STATIC_TRI_SPG9", "UK3CB_TKA_B_AA_ASST", "UK3CB_TKA_B_AT_ASST"]]; +_inf set [T_INF_ammo, ["UK3CB_TKA_B_AA_ASST", "UK3CB_TKA_B_AT_ASST"]]; _inf set [T_INF_LAT, ["UK3CB_TKA_B_LAT"]]; _inf set [T_INF_AT, ["UK3CB_TKA_B_AT"]]; _inf set [T_INF_AA, ["UK3CB_TKA_B_AA"]]; diff --git a/src/Templates/Factions/3CB_TNA_O.sqf b/src/Templates/Factions/3CB_TNA_O.sqf index bb5e8af18..91f0b806b 100644 --- a/src/Templates/Factions/3CB_TNA_O.sqf +++ b/src/Templates/Factions/3CB_TNA_O.sqf @@ -31,7 +31,7 @@ _inf set [T_INF_marksman, ["UK3CB_TKA_O_MK"]]; _inf set [T_INF_sniper, ["UK3CB_TKA_O_SF_SNI"]]; _inf set [T_INF_spotter, ["UK3CB_TKA_O_SF_SPOT"]]; _inf set [T_INF_exp, ["UK3CB_TKA_O_DEM"]]; -_inf set [T_INF_ammo, ["UK3CB_TKA_O_STATIC_TRI_AGS30", "UK3CB_TKA_O_STATIC_TRI_DSHKM_HIGH", "UK3CB_TKA_O_STATIC_TRI_DSHKM_LOW", "UK3CB_TKA_O_STATIC_TRI_KORD", "UK3CB_TKA_O_STATIC_TRI_KORNET", "UK3CB_TKA_O_STATIC_TRI_METIS", "UK3CB_TKA_O_STATIC_TRI_NSV", "UK3CB_TKA_O_STATIC_TRI_PODNOS", "UK3CB_TKA_O_STATIC_TRI_SPG9", "UK3CB_TKA_O_AA_ASST", "UK3CB_TKA_O_AT_ASST"]]; +_inf set [T_INF_ammo, ["UK3CB_TKA_O_AA_ASST", "UK3CB_TKA_O_AT_ASST"]]; _inf set [T_INF_LAT, ["UK3CB_TKA_O_LAT"]]; _inf set [T_INF_AT, ["UK3CB_TKA_O_AT"]]; _inf set [T_INF_AA, ["UK3CB_TKA_O_AA"]]; diff --git a/src/Templates/Factions/VN_ARVN.sqf b/src/Templates/Factions/VN_ARVN.sqf index c9b8a8a0c..63bb9d2d0 100644 --- a/src/Templates/Factions/VN_ARVN.sqf +++ b/src/Templates/Factions/VN_ARVN.sqf @@ -1,133 +1,121 @@ -/* -AAF templates for ARMA III -*/ - _array = []; _array set [T_SIZE-1, nil]; //Make an array having the size equal to the number of categories first // Name, description, faction, addons, etc -_array set [T_NAME, "tAAF"]; -_array set [T_DESCRIPTION, "Standard Altis Armed Forces from base game."]; -_array set [T_DISPLAY_NAME, "Arma 3 AAF"]; +_array set [T_NAME, "tVN_ARVN"]; +_array set [T_DESCRIPTION, "Vietman war ARVN."]; +_array set [T_DISPLAY_NAME, "VN DLC - ARVN"]; _array set [T_FACTION, T_FACTION_Military]; -_array set [T_REQUIRED_ADDONS, ["A3_Characters_F"]]; +_array set [T_REQUIRED_ADDONS, [ + "A3_Characters_F", + "vn_weapons", + "vn_data_f" + ]]; //==== Infantry ==== _inf = []; _inf resize T_INF_SIZE; -_inf set [T_INF_default, ["I_soldier_F"]]; //Default infantry if nothing is found - -_inf set [T_INF_SL, ["I_Soldier_SL_F"]]; -_inf set [T_INF_TL, ["I_Soldier_TL_F"]]; -_inf set [T_INF_officer, ["I_officer_F"]]; -_inf set [T_INF_GL, ["I_Soldier_GL_F"]]; -_inf set [T_INF_rifleman, ["I_soldier_F", 3, "I_Soldier_lite_F", 1]]; -_inf set [T_INF_marksman, ["I_Soldier_M_F"]]; -_inf set [T_INF_sniper, ["Arma3_AAF_sniper"]]; -_inf set [T_INF_spotter, ["Arma3_AAF_spotter"]]; -_inf set [T_INF_exp, ["I_Soldier_exp_F", "I_soldier_mine_F"]]; -_inf set [T_INF_ammo, ["I_Soldier_A_F"]]; -_inf set [T_INF_LAT, ["I_Soldier_LAT2_F"]]; -_inf set [T_INF_AT, ["I_Soldier_LAT_F", 5, "I_Soldier_AT_F", 1]]; -_inf set [T_INF_AA, ["I_Soldier_AA_F"]]; -_inf set [T_INF_LMG, ["I_Soldier_AR_F"]]; -_inf set [T_INF_HMG, ["Arma3_AAF_HMG"]]; -_inf set [T_INF_medic, ["I_medic_F"]]; -_inf set [T_INF_engineer, ["I_engineer_F", "I_Soldier_repair_F"]]; -_inf set [T_INF_crew, ["I_crew_F"]]; -_inf set [T_INF_crew_heli, ["I_helicrew_F"]]; -_inf set [T_INF_pilot, ["I_pilot_F"]]; -_inf set [T_INF_pilot_heli, ["I_helipilot_F"]]; -_inf set [T_INF_survivor, ["I_Survivor_F"]]; -_inf set [T_INF_unarmed, ["I_Soldier_unarmed_F"]]; +_inf set [T_INF_default, ["vn_i_men_army_15"]]; //Default infantry if nothing is found + +_inf set [T_INF_SL, ["vn_i_men_army_02"]]; +_inf set [T_INF_TL, ["vn_i_men_army_08"]]; +_inf set [T_INF_officer, ["vn_i_men_army_01"]]; +_inf set [T_INF_GL, ["vn_i_men_army_07", "vn_i_men_army_17"]]; +_inf set [T_INF_rifleman, ["vn_i_men_army_15", "vn_i_men_army_16", "vn_i_men_army_18", "vn_i_men_army_19", "vn_i_men_army_20", "vn_i_men_army_21"]]; +_inf set [T_INF_marksman, ["vn_i_men_army_10"]]; +_inf set [T_INF_sniper, ["vn_i_men_army_11"]]; +_inf set [T_INF_spotter, ["vn_i_men_army_09"]]; +_inf set [T_INF_exp, ["vn_i_men_army_05"]]; +_inf set [T_INF_ammo, ["vn_i_men_army_15", "vn_i_men_army_16", "vn_i_men_army_18", "vn_i_men_army_19", "vn_i_men_army_20", "vn_i_men_army_21"]]; +_inf set [T_INF_LAT, ["vn_i_men_army_12"]]; +_inf set [T_INF_AT, ["vn_i_men_army_12"]]; +_inf set [T_INF_AA, ["vn_i_men_army_12"]]; +_inf set [T_INF_LMG, ["vn_i_men_army_06"]]; +_inf set [T_INF_HMG, ["vn_i_men_army_06"]]; +_inf set [T_INF_medic, ["vn_i_men_army_03"]]; +_inf set [T_INF_engineer, ["vn_i_men_army_04"]]; +_inf set [T_INF_crew, ["vn_i_men_army_13", "vn_i_men_army_14"]]; +_inf set [T_INF_crew_heli, ["vn_i_men_aircrew_01"]]; +_inf set [T_INF_pilot, ["vn_i_men_aircrew_01"]]; +_inf set [T_INF_pilot_heli, ["vn_i_men_aircrew_01"]]; +_inf set [T_INF_survivor, ["vn_i_men_army_15", "vn_i_men_army_16", "vn_i_men_army_18", "vn_i_men_army_19", "vn_i_men_army_20", "vn_i_men_army_21"]]; +_inf set [T_INF_unarmed, ["vn_i_men_army_15", "vn_i_men_army_16", "vn_i_men_army_18", "vn_i_men_army_19", "vn_i_men_army_20", "vn_i_men_army_21"]]; //==== Recon ==== -_inf set [T_INF_recon_TL, ["Arma3_AAF_recon_TL"]]; -_inf set [T_INF_recon_rifleman, ["Arma3_AAF_recon_rifleman", 3, "Arma3_AAF_recon_autorifleman", 1]]; -_inf set [T_INF_recon_medic, ["Arma3_AAF_recon_medic"]]; -_inf set [T_INF_recon_exp, ["Arma3_AAF_recon_explosives"]]; -_inf set [T_INF_recon_LAT, ["Arma3_AAF_recon_LAT"]]; +_inf set [T_INF_recon_TL, ["vn_i_men_sf_01"]]; +_inf set [T_INF_recon_rifleman, ["vn_i_men_ranger_15", "vn_i_men_ranger_16", "vn_i_men_ranger_18", "vn_i_men_ranger_19", "vn_i_men_ranger_20", "vn_i_men_ranger_21", "vn_i_men_sf_09"]]; +_inf set [T_INF_recon_medic, ["vn_i_men_ranger_03", "vn_i_men_sf_03"]]; +_inf set [T_INF_recon_exp, ["vn_i_men_sf_04", "vn_i_men_sf_05"]]; +_inf set [T_INF_recon_LAT, ["vn_i_men_sf_12", "vn_i_men_ranger_12"]]; //_inf set [T_INF_recon_LMG, ["Arma3_AAF_recon_autorifleman"]]; // There is no T_INF_recon_LMG right now -_inf set [T_INF_recon_marksman, ["Arma3_AAF_recon_marksman"]]; -_inf set [T_INF_recon_JTAC, ["Arma3_AAF_recon_JTAC"]]; +_inf set [T_INF_recon_marksman, ["vn_i_men_ranger_10", "vn_i_men_sf_10"]]; +_inf set [T_INF_recon_JTAC, ["vn_i_men_sf_08", "vn_i_men_ranger_08"]]; //==== Drivers ==== -_inf set [T_INF_diver_TL, ["I_diver_TL_F"]]; -_inf set [T_INF_diver_rifleman, ["I_diver_F"]]; -_inf set [T_INF_diver_exp, ["I_diver_exp_F"]]; +/*_inf set [T_INF_diver_TL, [""]]; +_inf set [T_INF_diver_rifleman, [""]]; +_inf set [T_INF_diver_exp, [""]];*/ //==== Vehicles ==== _veh = []; _veh resize T_VEH_SIZE; _veh set [T_VEH_SIZE-1, nil]; -_veh set [T_VEH_DEFAULT, ["I_G_Offroad_01_F"]]; - -_veh set [T_VEH_car_unarmed, ["A3_AAF_offroad_unarmed"]]; -_veh set [T_VEH_car_armed, ["I_G_Offroad_01_armed_F_1"]]; - -_veh set [T_VEH_MRAP_unarmed, ["I_MRAP_03_F"]]; -_veh set [T_VEH_MRAP_HMG, ["I_MRAP_03_hmg_F"]]; -_veh set [T_VEH_MRAP_GMG, ["I_MRAP_03_gmg_F"]]; - -_veh set [T_VEH_IFV, ["I_APC_tracked_03_cannon_F_1", "I_APC_tracked_03_cannon_F_2", "I_APC_tracked_03_cannon_F_3", "I_APC_tracked_03_cannon_F_4"]]; -_veh set [T_VEH_APC, ["I_APC_Wheeled_03_cannon_F_1"]]; -_veh set [T_VEH_MBT, ["I_MBT_03_cannon_F_1", "I_MBT_03_cannon_F_2", "I_MBT_03_cannon_F_3", "I_MBT_03_cannon_F_4"]]; -_veh set [T_VEH_MRLS, ["I_Truck_02_MRL_F"]]; -_veh set [T_VEH_SPA, ["I_Truck_02_MRL_F"]]; -_veh set [T_VEH_SPAA, ["I_LT_01_AA_F"]]; - -_veh set [T_VEH_stat_HMG_high, ["I_E_HMG_01_high_F", 1,"I_HMG_02_high_F", 4]]; -_veh set [T_VEH_stat_GMG_high, ["I_GMG_01_high_F"]]; -_veh set [T_VEH_stat_HMG_low, ["I_HMG_02_F"]]; -_veh set [T_VEH_stat_GMG_low, ["I_GMG_01_F"]]; -_veh set [T_VEH_stat_AA, ["I_static_AA_F"]]; -_veh set [T_VEH_stat_AT, ["I_static_AT_F"]]; -_veh set [T_VEH_stat_mortar_light, ["I_Mortar_01_F"]]; -//_veh set [T_VEH_stat_mortar_heavy, ["I_Mortar_01_F"]]; - -_veh set [T_VEH_heli_light, ["I_Heli_light_03_unarmed_F"]]; -_veh set [T_VEH_heli_heavy, ["I_Heli_Transport_02_F"]]; -_veh set [T_VEH_heli_cargo, ["I_Heli_Transport_02_F"]]; -_veh set [T_VEH_heli_attack, ["I_Heli_light_03_dynamicLoadout_F"]]; - -_veh set [T_VEH_plane_attack, ["I_Plane_Fighter_03_dynamicLoadout_F"]]; -_veh set [T_VEH_plane_fighter , ["I_Plane_Fighter_04_F"]]; +_veh set [T_VEH_DEFAULT, ["vn_i_wheeled_m151_01"]]; + +_veh set [T_VEH_car_unarmed, ["vn_i_wheeled_m151_01", "vn_i_wheeled_m151_02"]]; +_veh set [T_VEH_car_armed, ["vn_i_wheeled_m151_mg_01", "vn_b_wheeled_m151_mg_02", "vn_b_wheeled_m151_mg_04", "vn_b_wheeled_m151_mg_03", "vn_b_wheeled_m151_mg_05"]]; + +//_veh set [T_VEH_MRAP_unarmed, [""]]; +_veh set [T_VEH_MRAP_HMG, ["vn_b_wheeled_m54_mg_01", "vn_b_wheeled_m54_mg_03"]]; +//_veh set [T_VEH_MRAP_GMG, [""]]; + +//_veh set [T_VEH_IFV, [""]]; +//_veh set [T_VEH_APC, [""]]; +_veh set [T_VEH_MBT, ["vn_i_armor_m41_01", "vn_i_armor_type63_01"]]; +//_veh set [T_VEH_MRLS, [""]]; +//_veh set [T_VEH_SPA, [""]]; +_veh set [T_VEH_SPAA, ["vn_b_wheeled_m54_mg_02"]]; + +_veh set [T_VEH_stat_HMG_high, ["vn_b_army_static_m1919a4_high", "vn_b_sf_static_m2_high", "vn_b_army_static_m60_high"]]; +//_veh set [T_VEH_stat_GMG_high, [""]]; +_veh set [T_VEH_stat_HMG_low, ["vn_b_army_static_m1919a4_low", "vn_b_army_static_m2_low", "vn_b_army_static_m60_low"]]; +//_veh set [T_VEH_stat_GMG_low, [""]]; +_veh set [T_VEH_stat_AA, ["vn_i_static_m45"]]; +_veh set [T_VEH_stat_AT, ["vn_i_static_tow"]]; +_veh set [T_VEH_stat_mortar_light, ["vn_i_static_mortar_m2", "vn_i_static_mortar_m29"]]; +_veh set [T_VEH_stat_mortar_heavy, ["vn_i_static_m101_02"]]; + +//_veh set [T_VEH_heli_light, [""]]; +//_veh set [T_VEH_heli_heavy, [""]]; +//_veh set [T_VEH_heli_cargo, [""]]; +_veh set [T_VEH_heli_attack, ["vn_i_air_uh1d_02_01", "vn_i_air_uh1d_01_01", "vn_i_air_uh1c_01_01", "vn_i_air_uh1c_02_01", "vn_i_air_uh1c_07_01", "vn_i_air_ch34_02_02"]]; + +//_veh set [T_VEH_plane_attack, [""]]; +//_veh set [T_VEH_plane_fighter , [""]]; //_veh set [T_VEH_plane_cargo, [""]]; //_veh set [T_VEH_plane_unarmed , [""]]; //_veh set [T_VEH_plane_VTOL, [""]]; -_veh set [T_VEH_boat_unarmed, ["I_Boat_Transport_01_F"]]; -_veh set [T_VEH_boat_armed, ["I_Boat_Armed_01_minigun_F"]]; +//_veh set [T_VEH_boat_unarmed, [""]]; +//_veh set [T_VEH_boat_armed, [""]]; -_veh set [T_VEH_personal, ["I_Quadbike_01_F"]]; +_veh set [T_VEH_personal, ["vn_i_wheeled_m151_01"]]; -_veh set [T_VEH_truck_inf, ["I_Truck_02_covered_F", "I_Truck_02_transport_F"]]; -_veh set [T_VEH_truck_cargo, ["I_Truck_02_transport_F"]]; -_veh set [T_VEH_truck_ammo, ["I_Truck_02_ammo_F"]]; -_veh set [T_VEH_truck_repair, ["I_Truck_02_box_F"]]; -_veh set [T_VEH_truck_medical , ["I_Truck_02_medical_F"]]; -_veh set [T_VEH_truck_fuel, ["I_Truck_02_fuel_F"]]; +_veh set [T_VEH_truck_inf, ["vn_i_wheeled_m54_01", "vn_i_wheeled_m54_02"]]; +_veh set [T_VEH_truck_cargo, ["vn_i_wheeled_m54_01", "vn_i_wheeled_m54_02"]]; +_veh set [T_VEH_truck_ammo, ["vn_i_wheeled_m54_ammo"]]; +_veh set [T_VEH_truck_repair, ["vn_i_wheeled_m54_repair"]]; +_veh set [T_VEH_truck_medical , ["vn_i_wheeled_m54_03"]]; +_veh set [T_VEH_truck_fuel, ["vn_i_wheeled_m54_fuel"]]; -_veh set [T_VEH_submarine, ["I_SDV_01_F"]]; +//_veh set [T_VEH_submarine, [""]]; //==== Drones ==== -_drone = []; _drone resize T_DRONE_SIZE; +_drone = +(tDefault select T_DRONE); _drone set [T_DRONE_SIZE-1, nil]; -_drone set [T_DRONE_DEFAULT, ["I_UGV_01_F"]]; - -_drone set [T_DRONE_UGV_unarmed, ["I_UGV_01_F"]]; -_drone set [T_DRONE_UGV_armed, ["I_UGV_01_rcws_F"]]; -_drone set [T_DRONE_plane_attack, ["I_UAV_02_dynamicLoadout_F"]]; -//_drone set [T_DRONE_plane_unarmed, ["I_UAV_02_dynamicLoadout_F"]]; -//_drone set [T_DRONE_heli_attack, ["I_UAV_02_dynamicLoadout_F"]]; -_drone set [T_DRONE_quadcopter, ["I_UAV_01_F"]]; -//_drone set [T_DRONE_designator, ["I_UAV_02_dynamicLoadout_F"]]; -_drone set [T_DRONE_stat_HMG_low, ["I_HMG_01_A_F"]]; -_drone set [T_DRONE_stat_GMG_low, ["I_GMG_01_A_F"]]; -//_drone set [T_DRONE_stat_AA, ["I_UAV_02_dynamicLoadout_F"]]; //==== Cargo ==== _cargo = +(tDefault select T_CARGO); diff --git a/src/Templates/Factions/VN_ARVN_police.sqf b/src/Templates/Factions/VN_ARVN_police.sqf index c9b8a8a0c..398180ea3 100644 --- a/src/Templates/Factions/VN_ARVN_police.sqf +++ b/src/Templates/Factions/VN_ARVN_police.sqf @@ -1,133 +1,36 @@ -/* -AAF templates for ARMA III -*/ - _array = []; -_array set [T_SIZE-1, nil]; //Make an array having the size equal to the number of categories first - -// Name, description, faction, addons, etc -_array set [T_NAME, "tAAF"]; -_array set [T_DESCRIPTION, "Standard Altis Armed Forces from base game."]; -_array set [T_DISPLAY_NAME, "Arma 3 AAF"]; -_array set [T_FACTION, T_FACTION_Military]; -_array set [T_REQUIRED_ADDONS, ["A3_Characters_F"]]; - -//==== Infantry ==== -_inf = []; -_inf resize T_INF_SIZE; -_inf set [T_INF_default, ["I_soldier_F"]]; //Default infantry if nothing is found - -_inf set [T_INF_SL, ["I_Soldier_SL_F"]]; -_inf set [T_INF_TL, ["I_Soldier_TL_F"]]; -_inf set [T_INF_officer, ["I_officer_F"]]; -_inf set [T_INF_GL, ["I_Soldier_GL_F"]]; -_inf set [T_INF_rifleman, ["I_soldier_F", 3, "I_Soldier_lite_F", 1]]; -_inf set [T_INF_marksman, ["I_Soldier_M_F"]]; -_inf set [T_INF_sniper, ["Arma3_AAF_sniper"]]; -_inf set [T_INF_spotter, ["Arma3_AAF_spotter"]]; -_inf set [T_INF_exp, ["I_Soldier_exp_F", "I_soldier_mine_F"]]; -_inf set [T_INF_ammo, ["I_Soldier_A_F"]]; -_inf set [T_INF_LAT, ["I_Soldier_LAT2_F"]]; -_inf set [T_INF_AT, ["I_Soldier_LAT_F", 5, "I_Soldier_AT_F", 1]]; -_inf set [T_INF_AA, ["I_Soldier_AA_F"]]; -_inf set [T_INF_LMG, ["I_Soldier_AR_F"]]; -_inf set [T_INF_HMG, ["Arma3_AAF_HMG"]]; -_inf set [T_INF_medic, ["I_medic_F"]]; -_inf set [T_INF_engineer, ["I_engineer_F", "I_Soldier_repair_F"]]; -_inf set [T_INF_crew, ["I_crew_F"]]; -_inf set [T_INF_crew_heli, ["I_helicrew_F"]]; -_inf set [T_INF_pilot, ["I_pilot_F"]]; -_inf set [T_INF_pilot_heli, ["I_helipilot_F"]]; -_inf set [T_INF_survivor, ["I_Survivor_F"]]; -_inf set [T_INF_unarmed, ["I_Soldier_unarmed_F"]]; +_array set [T_SIZE-1, nil]; -//==== Recon ==== -_inf set [T_INF_recon_TL, ["Arma3_AAF_recon_TL"]]; -_inf set [T_INF_recon_rifleman, ["Arma3_AAF_recon_rifleman", 3, "Arma3_AAF_recon_autorifleman", 1]]; -_inf set [T_INF_recon_medic, ["Arma3_AAF_recon_medic"]]; -_inf set [T_INF_recon_exp, ["Arma3_AAF_recon_explosives"]]; -_inf set [T_INF_recon_LAT, ["Arma3_AAF_recon_LAT"]]; -//_inf set [T_INF_recon_LMG, ["Arma3_AAF_recon_autorifleman"]]; // There is no T_INF_recon_LMG right now -_inf set [T_INF_recon_marksman, ["Arma3_AAF_recon_marksman"]]; -_inf set [T_INF_recon_JTAC, ["Arma3_AAF_recon_JTAC"]]; +_array set [T_NAME, "tVN_ARVN_police"]; //Template name + variable (not displayed) +_array set [T_DESCRIPTION, "Vietman war ARVN military police."]; //Template display description +_array set [T_DISPLAY_NAME, "VN DLC - ARVN Military Police"]; //Template display name +_array set [T_FACTION, T_FACTION_Police]; //Faction type: police, T_FACTION_military, T_FACTION_Police +_array set [T_REQUIRED_ADDONS, [ + "A3_Characters_F", + "vn_weapons", + "vn_data_f" + ]]; //Addons required to play this template +//==== API ==== -//==== Drivers ==== -_inf set [T_INF_diver_TL, ["I_diver_TL_F"]]; -_inf set [T_INF_diver_rifleman, ["I_diver_F"]]; -_inf set [T_INF_diver_exp, ["I_diver_exp_F"]]; +//==== Infantry ==== +_inf = []; _inf resize T_INF_size; +_inf set [T_INF_SIZE-1, nil]; //Make an array full of nil +_inf set [T_INF_default, ["vn_i_men_army_22"]]; //Default infantry if nothing is found +_inf set [T_INF_SL, ["vn_i_men_army_22"]]; +_inf set [T_INF_TL, ["vn_i_men_army_22"]]; +_inf set [T_INF_officer, ["vn_i_men_army_22"]]; //==== Vehicles ==== _veh = []; _veh resize T_VEH_SIZE; -_veh set [T_VEH_SIZE-1, nil]; -_veh set [T_VEH_DEFAULT, ["I_G_Offroad_01_F"]]; - -_veh set [T_VEH_car_unarmed, ["A3_AAF_offroad_unarmed"]]; -_veh set [T_VEH_car_armed, ["I_G_Offroad_01_armed_F_1"]]; - -_veh set [T_VEH_MRAP_unarmed, ["I_MRAP_03_F"]]; -_veh set [T_VEH_MRAP_HMG, ["I_MRAP_03_hmg_F"]]; -_veh set [T_VEH_MRAP_GMG, ["I_MRAP_03_gmg_F"]]; - -_veh set [T_VEH_IFV, ["I_APC_tracked_03_cannon_F_1", "I_APC_tracked_03_cannon_F_2", "I_APC_tracked_03_cannon_F_3", "I_APC_tracked_03_cannon_F_4"]]; -_veh set [T_VEH_APC, ["I_APC_Wheeled_03_cannon_F_1"]]; -_veh set [T_VEH_MBT, ["I_MBT_03_cannon_F_1", "I_MBT_03_cannon_F_2", "I_MBT_03_cannon_F_3", "I_MBT_03_cannon_F_4"]]; -_veh set [T_VEH_MRLS, ["I_Truck_02_MRL_F"]]; -_veh set [T_VEH_SPA, ["I_Truck_02_MRL_F"]]; -_veh set [T_VEH_SPAA, ["I_LT_01_AA_F"]]; - -_veh set [T_VEH_stat_HMG_high, ["I_E_HMG_01_high_F", 1,"I_HMG_02_high_F", 4]]; -_veh set [T_VEH_stat_GMG_high, ["I_GMG_01_high_F"]]; -_veh set [T_VEH_stat_HMG_low, ["I_HMG_02_F"]]; -_veh set [T_VEH_stat_GMG_low, ["I_GMG_01_F"]]; -_veh set [T_VEH_stat_AA, ["I_static_AA_F"]]; -_veh set [T_VEH_stat_AT, ["I_static_AT_F"]]; -_veh set [T_VEH_stat_mortar_light, ["I_Mortar_01_F"]]; -//_veh set [T_VEH_stat_mortar_heavy, ["I_Mortar_01_F"]]; - -_veh set [T_VEH_heli_light, ["I_Heli_light_03_unarmed_F"]]; -_veh set [T_VEH_heli_heavy, ["I_Heli_Transport_02_F"]]; -_veh set [T_VEH_heli_cargo, ["I_Heli_Transport_02_F"]]; -_veh set [T_VEH_heli_attack, ["I_Heli_light_03_dynamicLoadout_F"]]; - -_veh set [T_VEH_plane_attack, ["I_Plane_Fighter_03_dynamicLoadout_F"]]; -_veh set [T_VEH_plane_fighter , ["I_Plane_Fighter_04_F"]]; -//_veh set [T_VEH_plane_cargo, [""]]; -//_veh set [T_VEH_plane_unarmed , [""]]; -//_veh set [T_VEH_plane_VTOL, [""]]; - -_veh set [T_VEH_boat_unarmed, ["I_Boat_Transport_01_F"]]; -_veh set [T_VEH_boat_armed, ["I_Boat_Armed_01_minigun_F"]]; - -_veh set [T_VEH_personal, ["I_Quadbike_01_F"]]; - -_veh set [T_VEH_truck_inf, ["I_Truck_02_covered_F", "I_Truck_02_transport_F"]]; -_veh set [T_VEH_truck_cargo, ["I_Truck_02_transport_F"]]; -_veh set [T_VEH_truck_ammo, ["I_Truck_02_ammo_F"]]; -_veh set [T_VEH_truck_repair, ["I_Truck_02_box_F"]]; -_veh set [T_VEH_truck_medical , ["I_Truck_02_medical_F"]]; -_veh set [T_VEH_truck_fuel, ["I_Truck_02_fuel_F"]]; - -_veh set [T_VEH_submarine, ["I_SDV_01_F"]]; - +_veh set [T_VEH_DEFAULT, ["vn_i_wheeled_m151_01_mp"]]; +_veh set [T_VEH_car_unarmed, ["vn_i_wheeled_m151_02_mp", "vn_i_wheeled_m151_01_mp"]]; //==== Drones ==== _drone = []; _drone resize T_DRONE_SIZE; _drone set [T_DRONE_SIZE-1, nil]; -_drone set [T_DRONE_DEFAULT, ["I_UGV_01_F"]]; - -_drone set [T_DRONE_UGV_unarmed, ["I_UGV_01_F"]]; -_drone set [T_DRONE_UGV_armed, ["I_UGV_01_rcws_F"]]; -_drone set [T_DRONE_plane_attack, ["I_UAV_02_dynamicLoadout_F"]]; -//_drone set [T_DRONE_plane_unarmed, ["I_UAV_02_dynamicLoadout_F"]]; -//_drone set [T_DRONE_heli_attack, ["I_UAV_02_dynamicLoadout_F"]]; -_drone set [T_DRONE_quadcopter, ["I_UAV_01_F"]]; -//_drone set [T_DRONE_designator, ["I_UAV_02_dynamicLoadout_F"]]; -_drone set [T_DRONE_stat_HMG_low, ["I_HMG_01_A_F"]]; -_drone set [T_DRONE_stat_GMG_low, ["I_GMG_01_A_F"]]; -//_drone set [T_DRONE_stat_AA, ["I_UAV_02_dynamicLoadout_F"]]; //==== Cargo ==== _cargo = +(tDefault select T_CARGO); @@ -135,11 +38,17 @@ _cargo = +(tDefault select T_CARGO); //==== Groups ==== _group = +(tDefault select T_GROUP); -//==== Set arrays ==== +//==== API ==== +_api = []; _api resize T_API_SIZE; +_api set [T_API_SIZE-1, nil]; //Make an array full of nil +_api set [T_API_fnc_VEH_siren, {}]; + +//==== Arrays ==== +_array set [T_API, _api]; _array set [T_INF, _inf]; _array set [T_VEH, _veh]; _array set [T_DRONE, _drone]; _array set [T_CARGO, _cargo]; _array set [T_GROUP, _group]; -_array // End template +_array \ No newline at end of file diff --git a/src/Templates/Factions/VN_CIVILIAN.sqf b/src/Templates/Factions/VN_CIVILIAN.sqf index 50cbe9e7f..3d266ceb2 100644 --- a/src/Templates/Factions/VN_CIVILIAN.sqf +++ b/src/Templates/Factions/VN_CIVILIAN.sqf @@ -204,11 +204,11 @@ private _civCars = [ "vn_c_bicycle_01", 10, "vn_c_wheeled_m151_01", 30, "vn_c_wheeled_m151_02", 30, - "C_Truck_02_box_F", 10, - "C_Offroad_02_unarmed_F", 30, + "vn_c_car_04_01", 10, + "vn_c_car_02_01", 30, "C_Truck_02_transport_F", 10, "C_Truck_02_covered_F", 10, - "C_Offroad_01_F", 10, + "vn_c_car_03_01", 10, "C_Tractor_01_F", 3 /* diff --git a/src/Templates/Factions/VN_US_Army.sqf b/src/Templates/Factions/VN_US_Army.sqf index 3ac61e34c..6f2eb6d93 100644 --- a/src/Templates/Factions/VN_US_Army.sqf +++ b/src/Templates/Factions/VN_US_Army.sqf @@ -65,10 +65,10 @@ _veh set [T_VEH_SIZE-1, nil]; _veh set [T_VEH_DEFAULT, ["vn_b_wheeled_m151_01"]]; _veh set [T_VEH_car_unarmed, ["vn_b_wheeled_m151_01", "vn_b_wheeled_m151_02"]]; -_veh set [T_VEH_car_armed, ["vn_b_wheeled_m151_mg_02", "vn_b_wheeled_m151_mg_04", "vn_b_wheeled_m151_mg_03"]]; +_veh set [T_VEH_car_armed, ["vn_b_wheeled_m151_mg_02", "vn_b_wheeled_m151_mg_04", "vn_b_wheeled_m151_mg_03", "vn_b_wheeled_m151_mg_05"]]; //_veh set [T_VEH_MRAP_unarmed, [""]]; -_veh set [T_VEH_MRAP_HMG, ["vn_b_wheeled_m54_mg_01"]]; +_veh set [T_VEH_MRAP_HMG, ["vn_b_wheeled_m54_mg_01", "vn_b_wheeled_m54_mg_03"]]; //_veh set [T_VEH_MRAP_GMG, [""]]; //_veh set [T_VEH_IFV, [""]]; @@ -82,7 +82,7 @@ _veh set [T_VEH_stat_HMG_high, ["vn_b_army_static_m1919a4_high", "vn_b_sf_static //_veh set [T_VEH_stat_GMG_high, [""]]; _veh set [T_VEH_stat_HMG_low, ["vn_b_army_static_m1919a4_low", "vn_b_army_static_m2_low", "vn_b_army_static_m60_low"]]; //_veh set [T_VEH_stat_GMG_low, [""]]; -_veh set [T_VEH_stat_AA, ["vn_b_army_static_m45"]]; +_veh set [T_VEH_stat_AA, ["vn_b_army_static_m45", "vn_b_navy_static_l60mk3", "vn_b_navy_static_l70mk2"]]; _veh set [T_VEH_stat_AT, ["vn_b_sf_static_tow"]]; _veh set [T_VEH_stat_mortar_light, ["vn_b_army_static_mortar_m2", "vn_b_sf_static_mortar_m29"]]; _veh set [T_VEH_stat_mortar_heavy, ["vn_b_sf_static_m101_01", "vn_b_army_static_m101_02"]]; diff --git a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_1.sqf b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_1.sqf index 38ffdc598..58317b7ab 100644 --- a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_1.sqf +++ b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== if (random 10 < 3) then { diff --git a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Militant_1.sqf b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Militant_1.sqf index 6d73a6e23..ca49e4fbd 100644 --- a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Militant_1.sqf +++ b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Militant_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; private _uniforms = [ "UK3CB_CHC_C_U_HIKER_01", diff --git a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Saboteur_1.sqf b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Saboteur_1.sqf index 12c9f8d19..926901f58 100644 --- a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Saboteur_1.sqf +++ b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_CIVILIAN_Saboteur_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _headgear = [ diff --git a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_PLAYER_1.sqf b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_PLAYER_1.sqf index 1fd25fdc2..824ec91e8 100644 --- a/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_PLAYER_1.sqf +++ b/src/Templates/Loadouts/3CB_CCIVS/3CB_CCIVS_PLAYER_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== if (random 10 < 4) then { diff --git a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_1.sqf b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_1.sqf index aa07fa86f..e7bb7453c 100644 --- a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_1.sqf +++ b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _HeadGear = selectRandom[ diff --git a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Militant_1.sqf b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Militant_1.sqf index d464defce..c314c17d1 100644 --- a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Militant_1.sqf +++ b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Militant_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _HeadGear = [ diff --git a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Saboteur_1.sqf b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Saboteur_1.sqf index d037909b9..498e3d3e2 100644 --- a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Saboteur_1.sqf +++ b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_CIVILIAN_Saboteur_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _Headgear = [ diff --git a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_PLAYER_1.sqf b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_PLAYER_1.sqf index 8d4a1eb94..de31e2ee7 100644 --- a/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_PLAYER_1.sqf +++ b/src/Templates/Loadouts/3CB_TCIV/3CB_TCIV_PLAYER_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _HeadGear = [ diff --git a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_1.sqf b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_1.sqf index 4ae7a4a26..c9f23f051 100644 --- a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_1.sqf +++ b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; private _uniforms = [ "U_C_E_LooterJacket_01_F", diff --git a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_Saboteur_1.sqf b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_Saboteur_1.sqf index b769e775b..da066b72e 100644 --- a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_Saboteur_1.sqf +++ b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_CIVILIAN_Saboteur_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; private _uniforms = [ "U_C_E_LooterJacket_01_F", diff --git a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1.sqf b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1.sqf index 537c7bbd1..556a606b5 100644 --- a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1.sqf +++ b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1.sqf @@ -201,4 +201,4 @@ this addItemToUniform "ACE_tourniquet"; this addItemToUniform "ACE_Flashlight_Maglite_ML300L"; //====Identity==== -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; \ No newline at end of file +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; \ No newline at end of file diff --git a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1_RHS.sqf b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1_RHS.sqf index 4e7757ecf..7df12c71d 100644 --- a/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1_RHS.sqf +++ b/src/Templates/Loadouts/Arma3_CIVILIAN/A3_PLAYER_1_RHS.sqf @@ -110,4 +110,4 @@ this addItemToUniform "ACE_tourniquet"; this addItemToUniform "ACE_Flashlight_Maglite_ML300L"; //====Identity==== -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; \ No newline at end of file +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; \ No newline at end of file diff --git a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_CIVILIAN_1.sqf b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_CIVILIAN_1.sqf index b0e346553..52f3eb9c6 100644 --- a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_CIVILIAN_1.sqf +++ b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_CIVILIAN_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== if (random 10 < 3) then { diff --git a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Militant_1.sqf b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Militant_1.sqf index dda065674..57b2149d1 100644 --- a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Militant_1.sqf +++ b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Militant_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _headgear = [ diff --git a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_PLAYER_1.sqf b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_PLAYER_1.sqf index e91fa9362..064886af0 100644 --- a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_PLAYER_1.sqf +++ b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_PLAYER_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== if (random 10 < 4) then { diff --git a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Saboteur_1.sqf b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Saboteur_1.sqf index 81cccdd90..20158e596 100644 --- a/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Saboteur_1.sqf +++ b/src/Templates/Loadouts/CUP_RUS_CIVILIAN/CUP_Saboteur_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _headgear = [ diff --git a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_CIVILIAN_1.sqf b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_CIVILIAN_1.sqf index d3fa981b3..6519e40ca 100644 --- a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_CIVILIAN_1.sqf +++ b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_CIVILIAN_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _lungeHeadGear = selectRandom[ diff --git a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Militant_1.sqf b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Militant_1.sqf index 1bcfba178..8801bddc0 100644 --- a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Militant_1.sqf +++ b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Militant_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _lungeHeadGearFront = [ diff --git a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_PLAYER_1.sqf b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_PLAYER_1.sqf index 5b99f4323..f15165704 100644 --- a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_PLAYER_1.sqf +++ b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_PLAYER_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _lungeHeadGear = selectRandom[ diff --git a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Saboteur_1.sqf b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Saboteur_1.sqf index 9863736b0..9b675cce6 100644 --- a/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Saboteur_1.sqf +++ b/src/Templates/Loadouts/CUP_TKA_CIVILIAN/CUP_Saboteur_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; // ==== Headgear ==== private _lungeHeadGearFront = [ diff --git a/src/Templates/Loadouts/GEXP_POLICE/GEXP_PatrolOfficer.sqf b/src/Templates/Loadouts/GEXP_POLICE/GEXP_PatrolOfficer.sqf index 0a9330bae..fa1138f02 100644 --- a/src/Templates/Loadouts/GEXP_POLICE/GEXP_PatrolOfficer.sqf +++ b/src/Templates/Loadouts/GEXP_POLICE/GEXP_PatrolOfficer.sqf @@ -36,8 +36,10 @@ this addVest selectRandom _vest; // ==== Weapons ==== if(random 10 < 2) then { private _gunAndAmmo = [ - ["SMG_03_black", "50Rnd_570x28_SMG_03"], 0.3, - ["prpl_benelli_rail", "prpl_6Rnd_12Gauge_Pellets"], 0.2 + ["SMG_03_black", "50Rnd_570x28_SMG_03"], 0.5, + ["prpl_benelli_rail", "prpl_6Rnd_12Gauge_Pellets"], 0.2, + ["ExpansionMod_SMG_03C_black", "50Rnd_570x28_SMG_03"], 0.3, + ["SMG_02_F", "30Rnd_9x21_Mag_SMG_02"], 0.4 ]; (selectRandomWeighted _gunAndAmmo) params ["_gun", "_ammo"]; diff --git a/src/Templates/Loadouts/GEXP_POLICE/GEXP_ResponseOfficer.sqf b/src/Templates/Loadouts/GEXP_POLICE/GEXP_ResponseOfficer.sqf index ce79b8f73..06de63054 100644 --- a/src/Templates/Loadouts/GEXP_POLICE/GEXP_ResponseOfficer.sqf +++ b/src/Templates/Loadouts/GEXP_POLICE/GEXP_ResponseOfficer.sqf @@ -29,10 +29,18 @@ this addItemToUniform "FirstAidKit"; this addVest "Modular_lvl1"; // ==== Weapons ==== -this addWeapon "SMG_02_F"; -this addPrimaryWeaponItem "30Rnd_9x21_Mag_SMG_02"; +private _gunAndAmmo = [ + ["SMG_03_black", "50Rnd_570x28_SMG_03"], 0.5, + ["prpl_benelli_rail", "prpl_6Rnd_12Gauge_Pellets"], 0.2, + ["ExpansionMod_SMG_03C_black", "50Rnd_570x28_SMG_03"], 0.3, + ["SMG_02_F", "30Rnd_9x21_Mag_SMG_02"], 0.4 +]; + +(selectRandomWeighted _gunAndAmmo) params ["_gun", "_ammo"]; +this addWeapon _gun; +this addPrimaryWeaponItem _ammo; this addPrimaryWeaponItem "optic_aco_smg"; -for "_i" from 1 to 4 do {this addItemToVest _ammo;}; +for "_i" from 1 to 2 do {this addItemToVest _ammo;}; this addWeapon "hgun_Rook40_F"; this addHandgunItem "16Rnd_9x21_Mag"; diff --git a/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_1.sqf b/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_1.sqf index 4478d058e..a4c4a4217 100644 --- a/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_1.sqf +++ b/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; this forceAddUniform selectRandom [ "gm_gc_civ_uniform_man_01_80_blk", diff --git a/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Militant_1.sqf b/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Militant_1.sqf index b2d83aeb9..5ff103057 100644 --- a/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Militant_1.sqf +++ b/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Militant_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; private _uniforms = [ "gm_gc_civ_uniform_man_01_80_blk", diff --git a/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Saboteur_1.sqf b/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Saboteur_1.sqf index 1a1b8ccc2..505ded305 100644 --- a/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Saboteur_1.sqf +++ b/src/Templates/Loadouts/GM_CIVILIAN/GM_CIVILIAN_Saboteur_1.sqf @@ -7,7 +7,7 @@ removeBackpack this; removeHeadgear this; removeGoggles this; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; this forceAddUniform selectRandom [ "gm_gc_civ_uniform_man_01_80_blk", @@ -26,4 +26,4 @@ this addBackpack selectRandom [ "gm_ge_backpack_satchel_80_san" ]; -[this, selectRandom gVanillaFaces, "ace_novoice"] call BIS_fnc_setIdentity; \ No newline at end of file +[this, selectRandom gVanillaFaces] call BIS_fnc_setIdentity; \ No newline at end of file diff --git a/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_1.sqf b/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_1.sqf index 3767fa283..5a1ae3f66 100644 --- a/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_1.sqf +++ b/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_1.sqf @@ -118,4 +118,4 @@ this addItemToUniform "ACE_packingBandage"; this addItemToUniform "ACE_quikclot";*/ //====Identity==== -[this, "", "ace_novoice"] call BIS_fnc_setIdentity; \ No newline at end of file +[this, ""] call BIS_fnc_setIdentity; \ No newline at end of file diff --git a/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_Default.sqf b/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_Default.sqf index 8c021b158..016fe599b 100644 --- a/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_Default.sqf +++ b/src/Templates/Loadouts/VN_CIVILIAN/VN_CIVILIAN_Default.sqf @@ -143,4 +143,4 @@ this addItemToUniform "ACE_packingBandage"; this addItemToUniform "ACE_quikclot";*/ //====Identity==== -[this, "", "ace_novoice"] call BIS_fnc_setIdentity; \ No newline at end of file +[this, ""] call BIS_fnc_setIdentity; \ No newline at end of file diff --git a/src/Templates/Loadouts/VN_CIVILIAN/VN_PLAYER_1.sqf b/src/Templates/Loadouts/VN_CIVILIAN/VN_PLAYER_1.sqf index fd85acc33..b0aca6bb3 100644 --- a/src/Templates/Loadouts/VN_CIVILIAN/VN_PLAYER_1.sqf +++ b/src/Templates/Loadouts/VN_CIVILIAN/VN_PLAYER_1.sqf @@ -147,4 +147,4 @@ this addItemToUniform "ACE_packingBandage"; this addItemToUniform "ACE_quikclot";*/ //====Identity==== -[this, "", "ace_novoice"] call BIS_fnc_setIdentity; \ No newline at end of file +[this, ""] call BIS_fnc_setIdentity; \ No newline at end of file diff --git a/src/Templates/initFactions.sqf b/src/Templates/initFactions.sqf index f38008cc5..0dff2d0e2 100644 --- a/src/Templates/initFactions.sqf +++ b/src/Templates/initFactions.sqf @@ -62,8 +62,9 @@ private _classes = "isClass _x" configClasses (configFile >> "VinExternalFaction "Templates\Factions\NATOAAF.sqf", "Templates\Factions\AAFCSAT.sqf", "Templates\Factions\NATOCSAT.sqf", - "Templates\Factions\VN_US_Army.sqf"/*, - "Templates\Factions\VN_NVA.sqf", + "Templates\Factions\VN_US_Army.sqf", + "Templates\Factions\VN_ARVN.sqf"/* + "Templates\Factions\VN_NVA.sqf",/* "Templates\Factions\VN_ARVN.sqf", "Templates\Factions\VN_VC.sqf"*/ ]; @@ -104,7 +105,7 @@ private _classes = "isClass _x" configClasses (configFile >> "VinExternalFaction "Templates\Factions\Expansion_Police.sqf", "Templates\Factions\DSI.sqf", "Templates\Factions\AT.sqf", - "Templates\Factions\VN_US_Army_police.sqf"/*, - "Templates\Factions\VN_ARVN_police.sqf", + "Templates\Factions\VN_US_Army_police.sqf", + "Templates\Factions\VN_ARVN_police.sqf"/* "Templates\Factions\VN_VC_police.sqf"*/ ]; \ No newline at end of file diff --git a/src/Unit/Unit.sqf b/src/Unit/Unit.sqf index 3f2990415..891a00407 100644 --- a/src/Unit/Unit.sqf +++ b/src/Unit/Unit.sqf @@ -1652,6 +1652,15 @@ CLASS("Unit", ["Storable" ARG "GOAP_Agent"]) // Remove all weapons removeAllWeapons _hO; + // Add FAKs to uniform + for "_i" from 0 to 1 do {_hO addItemToUniform "FirstAidKit";}; + + // Add misc items + _hO linkItem "ItemMap"; + _hO linkItem "ItemCompass"; + _hO linkItem "ItemWatch"; + _hO linkItem "ItemRadio"; + // Set headgear removeHeadgear _hO; pr _headgear = _gear#UNIT_GEAR_ID_HEADGEAR; @@ -1664,6 +1673,9 @@ CLASS("Unit", ["Storable" ARG "GOAP_Agent"]) pr _vest = _gear#UNIT_GEAR_ID_VEST; if(_vest != "") then { _hO addVest _vest; + + // Add FAKs to vest + for "_i" from 0 to 2 do {_hO addItemToUniform "FirstAidKit";}; }; // Add main gun diff --git a/src/cba_settings.sqf b/src/cba_settings.sqf index 9963f3320..5109f4e53 100644 --- a/src/cba_settings.sqf +++ b/src/cba_settings.sqf @@ -1,2 +1,4 @@ force ace_map_mapIllumination = false; ace_vehiclelock_defaultLockpickStrength = 20; +force ace_vehicle_damage_enabled = false; +force ace_noradio_enabled = false; \ No newline at end of file