diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/def/mission.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/def/mission.sqf index a3d953e4a..2a4faed4b 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/def/mission.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/def/mission.sqf @@ -127,9 +127,9 @@ if (isServer) then { btc_type_pallet = ["Land_Pallets_stack_F","Land_Pallets_F","Land_Pallet_F"]; btc_type_box = ["Box_East_Wps_F","Box_East_WpsSpecial_F","Box_East_Ammo_F"]; - //Vehs btc_vehicles = [btc_veh_1,btc_veh_2,btc_veh_3,btc_veh_4,btc_veh_5,btc_veh_6,btc_veh_7,btc_veh_8,btc_veh_9,btc_veh_10,btc_veh_11,btc_veh_12,btc_veh_13,btc_veh_14]; + btc_helo = [btc_helo_1]; }; //City @@ -171,87 +171,117 @@ btc_info_hideout_radius = 4000; btc_supplies_mat ="Land_Cargo20_red_F"; //Log -btc_construction_array = -[ - [ - "Fortifications", - "Static", - "Ammobox", - "Containers", - "Supplies", - "FOB" - ], +if (isServer) then { + _btc_rearming_vehicles = (btc_vehicles + btc_helo) apply {typeOf _x}; + { + _btc_rearming_vehicles = _btc_rearming_vehicles - [_x]; + if (count (configFile >> "CfgVehicles" >> _x >> "Turrets") > 0) then { + _btc_rearming_vehicles pushBack _x; + }; + } forEach _btc_rearming_vehicles; + + #define REARM_TURRET_PATHS [[-1], [0], [0,0], [0,1], [1], [2], [0,2]] + btc_construction_array = [ [ - //"Fortifications" - "Land_BagBunker_Small_F", - "Land_BagFence_Corner_F", - "Land_BagFence_End_F", - "Land_BagFence_Long_F", - "Land_BagFence_Round_F", - "Land_BagFence_Short_F", - "Land_HBarrier_1_F", - "Land_HBarrier_3_F", - "Land_HBarrier_5_F", - "Land_HBarrierBig_F", - "Land_Razorwire_F", - "Land_CncBarrier_F", - "Land_CncBarrierMedium_F", - "Land_CncBarrierMedium4_F", - "Land_CncWall1_F", - "Land_CncWall4_F", - "Land_Mil_ConcreteWall_F", - "Land_Mil_WallBig_4m_F", - "Land_Mil_WallBig_Corner_F", - "Land_PortableLight_double_F" - ], - [ - //"Static" - "B_static_AT_F", - "B_static_AA_F", - "B_GMG_01_A_F", - "B_GMG_01_high_F", - "B_GMG_01_F", - "B_HMG_01_A_F", - "B_HMG_01_high_F", - "B_HMG_01_F", - "B_Mortar_01_F" - ], + "Fortifications", + "Static", + "Ammobox", + "Containers", + "Supplies", + "FOB", + "Vehicle Logistic" + ] + (_btc_rearming_vehicles apply {getText (configFile >> "cfgVehicles" >> _x >> "displayName")}), [ - //"Ammobox" - "rhsusf_mags_crate", - "Box_NATO_Ammo_F", - "Box_NATO_Support_F", - "ACE_medicalSupplyCrate_advanced", - "ACE_medicalSupplyCrate", - "B_supplyCrate_F", - "B_CargoNet_01_ammo_F", - "ACE_Wheel", - "ACE_Track", - "FlexibleTank_01_forest_F", - "Box_NATO_AmmoVeh_F" - - ], - [ - //"Containers" - "Land_Cargo20_military_green_F", - "Land_Cargo40_military_green_F" + [ + //"Fortifications" + "Land_BagBunker_Small_F", + "Land_BagFence_Corner_F", + "Land_BagFence_End_F", + "Land_BagFence_Long_F", + "Land_BagFence_Round_F", + "Land_BagFence_Short_F", + "Land_HBarrier_1_F", + "Land_HBarrier_3_F", + "Land_HBarrier_5_F", + "Land_HBarrierBig_F", + "ACE_ConcertinaWireCoil", + "Land_CncBarrier_F", + "Land_CncBarrierMedium_F", + "Land_CncBarrierMedium4_F", + "Land_CncWall1_F", + "Land_CncWall4_F", + "Land_Mil_ConcreteWall_F", + "Land_Mil_WallBig_4m_F", + "Land_Mil_WallBig_Corner_F", + "Land_PortableLight_double_F" + ], + [ + //"Static" + "B_static_AT_F", + "B_static_AA_F", + "B_GMG_01_A_F", + "B_GMG_01_high_F", + "B_GMG_01_F", + "B_HMG_01_A_F", + "B_HMG_01_high_F", + "B_HMG_01_F", + "B_Mortar_01_F" + ], + [ + //"Ammobox" + "rhsusf_mags_crate", + "Box_NATO_Ammo_F", + "Box_NATO_Support_F", + "ACE_medicalSupplyCrate_advanced", + "ACE_medicalSupplyCrate", + "B_supplyCrate_F", + "B_CargoNet_01_ammo_F" + ], + [ + //"Containers" + "Land_Cargo20_military_green_F", + "Land_Cargo40_military_green_F" + + ], + [ + //"Supplies" + btc_supplies_mat + ], + [ + //"FOB" + btc_fob_mat + ], + [ + //"Vehicle logistic" + "ACE_Wheel", + "ACE_Track" + ] + ] + (_btc_rearming_vehicles apply { + _vehicles = _x; + _magazines = []; + { + _magazines append (([_vehicles,_x] call btc_fnc_log_getconfigmagazines)); + } forEach REARM_TURRET_PATHS; + { + _magazines = _magazines - [_x]; + _magazines pushBack _x; + } forEach _magazines; + _magazines + }) + ]; +} else { + btc_int_ask_data = nil; + // [[7,nil,player],"btc_fnc_int_ask_var",false] spawn BIS_fnc_MP; + [7,nil,player] remoteExec ["btc_fnc_int_ask_var",2]; - ], - [ - //"Supplies" - btc_supplies_mat - ], - [ - //FOB - btc_fob_mat - ] - ] -]; + waitUntil {sleep 0.5; !(isNil "btc_int_ask_data")}; + btc_construction_array = btc_int_ask_data; +}; _c_array = btc_construction_array select 1; btc_log_def_draggable = (_c_array select 1) + (_c_array select 2); -btc_log_def_loadable = (_c_array select 0) + (_c_array select 1) + (_c_array select 2) + (_c_array select 3) + (_c_array select 4) + (_c_array select 5); +btc_log_def_loadable = (_c_array select 0) + (_c_array select 1) + (_c_array select 2) + (_c_array select 3) + (_c_array select 4) + (_c_array select 5) + (_c_array select 6) + (["ace_rearm_defaultCarriedObject", "ace_rearm_Bo_Mk82","ace_rearm_Bomb_04_F","ace_rearm_Bo_GBU12_LGB","ace_rearm_Bomb_03_F","ace_rearm_Missile_AA_03_F","ace_rearm_Missile_AGM_02_F","ace_rearm_Missile_AGM_01_F","ace_rearm_Rocket_03_AP_F","ace_rearm_R_80mm_HE","ace_rearm_R_60mm_HE","ace_rearm_Rocket_04_HE_F","ace_rearm_R_Hydra_HE","ace_rearm_Missile_AA_04_F","ace_rearm_M_PG_AT","ace_rearm_R_230mm_HE","ace_rearm_Rocket_03_HE_F","ace_rearm_Rocket_04_AP_F","ace_rearm_R_230mm_fly"]); btc_log_def_can_load = (_c_array select 3); btc_log_def_placeable = (_c_array select 0) + (_c_array select 3) + (_c_array select 4) + (_c_array select 5); btc_log_max_distance_load = 15; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/compile.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/compile.sqf index 1b127c29e..dde46dd79 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/compile.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/compile.sqf @@ -103,6 +103,9 @@ if (isServer) then { btc_fnc_side_civtreatment = compile preprocessFileLineNumbers "core\fnc\side\civtreatment.sqf"; btc_fnc_side_tower = compile preprocessFileLineNumbers "core\fnc\side\tower.sqf"; btc_fnc_side_checkpoint = compile preprocessFileLineNumbers "core\fnc\side\checkpoint.sqf"; + + //LOG + btc_fnc_log_getconfigmagazines = compile preprocessFile "core\fnc\log\getconfigmagazines.sqf"; }; /////////////////////CLIENT AND SERVER\\\\\\\\\\\\\\\\\\\\\ diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/load.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/load.sqf index f107b3aa5..8d4967140 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/load.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/load.sqf @@ -208,8 +208,9 @@ diag_log format ["5: %1",(_x select 5)]; private ["_type","_cargo_obj","_obj","_weap_obj","_mags_obj","_items_obj"]; //{_cargo pushBack [(typeOf _x),[getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]]} foreach (_x getVariable ["cargo",[]]); _type = _x select 0; - _cargo_obj = _x select 1; + _cargo_obj = _x select 2; _obj = _type createVehicle [0,0,0]; + if ((_x select 1) != "") then {_obj setVariable ["ace_rearm_magazineClass",(_x select 1),true]}; btc_log_obj_created = btc_log_obj_created + [_obj]; btc_curator addCuratorEditableObjects [[_obj], false]; clearWeaponCargoGlobal _obj;clearItemCargoGlobal _obj;clearMagazineCargoGlobal _obj; @@ -277,6 +278,7 @@ _objs = profileNamespace getVariable [format ["btc_hm_%1_objs",_name],[]]; btc_curator addCuratorEditableObjects [[_obj], false]; _obj setDir (_x select 2); _obj setPosASL (_x select 1); + if ((_x select 3) != "") then {_obj setVariable ["ace_rearm_magazineClass",(_x select 3),true]}; { /*private "_l"; _l = _x createVehicle [0,0,0]; @@ -287,8 +289,9 @@ _objs = profileNamespace getVariable [format ["btc_hm_%1_objs",_name],[]]; private ["_type","_cargo_obj","_l","_weap_obj","_mags_obj","_items_obj"]; //{_cargo pushBack [(typeOf _x),[getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]]} foreach (_x getVariable ["cargo",[]]); _type = _x select 0; - _cargo_obj = _x select 1; + _cargo_obj = _x select 2; _l = _type createVehicle [0,0,0]; + if ((_x select 1) != "") then {_l setVariable ["ace_rearm_magazineClass",(_x select 1),true]}; btc_log_obj_created = btc_log_obj_created + [_l]; btc_curator addCuratorEditableObjects [[_l], false]; clearWeaponCargoGlobal _l;clearItemCargoGlobal _l;clearMagazineCargoGlobal _l; @@ -311,8 +314,8 @@ _objs = profileNamespace getVariable [format ["btc_hm_%1_objs",_name],[]]; }; }; [_l,_obj] call btc_fnc_log_server_load; - } foreach (_x select 3); - _cont = (_x select 4); + } foreach (_x select 4); + _cont = (_x select 5); clearWeaponCargoGlobal _obj;clearItemCargoGlobal _obj;clearMagazineCargoGlobal _obj; _weap = _cont select 0; if (count _weap > 0) then { diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/save.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/save.sqf index 4d8c64092..119a5a171 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/save.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/db/save.sqf @@ -108,7 +108,7 @@ _array_veh = []; _data pushBack (fuel _x); _data pushBack (damage _x); _cargo = []; - {_cargo pushBack [(typeOf _x),[getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]]} foreach (_x getVariable ["cargo",[]]); + {_cargo pushBack [(typeOf _x),(_x getVariable ["ace_rearm_magazineClass",""]),[getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]]} foreach (_x getVariable ["cargo",[]]); _data pushBack _cargo; _cont = [getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]; _data pushBack _cont; @@ -125,12 +125,13 @@ _array_obj = []; _data pushBack (typeOf _x); _data pushBack (getPosASL _x); _data pushBack (getDir _x); + _data pushBack (_x getVariable ["ace_rearm_magazineClass",""]); _cargo = []; - {_cargo pushBack [(typeOf _x),[getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]]} foreach (_x getVariable ["cargo",[]]); + {_cargo pushBack [(typeOf _x),(_x getVariable ["ace_rearm_magazineClass",""]),[getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]]} foreach (_x getVariable ["cargo",[]]); _data pushBack _cargo; _cont = [getWeaponCargo _x,getMagazineCargo _x,getItemCargo _x]; _data pushBack _cont; - + _array_obj pushBack _data; }; } foreach btc_log_obj_created; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/int/ask_var.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/int/ask_var.sqf index fe005aafe..de097d8f9 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/int/ask_var.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/int/ask_var.sqf @@ -21,6 +21,7 @@ switch (_id) do { case 4 : {_data = _target getVariable ["tow",objNull];}; case 5 : {_data = btc_side_jip_data;}; case 6 : {_data = btc_fobs;}; + case 7 : {_data = btc_construction_array;}; }; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/check_cargo.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/check_cargo.sqf index 73bfe6dc8..f6ca28554 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/check_cargo.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/check_cargo.sqf @@ -25,13 +25,15 @@ _cargo = btc_int_ask_data; _text = ("Vehicle: " + getText (configFile >> "cfgVehicles" >> typeof _veh >> "displayName") + format [" CC: %1/%2",[_veh,_cargo] call btc_fnc_log_check_cc,[_veh] call btc_fnc_log_get_cc]); (_ui displayCtrl 990) ctrlSetText _text; - + { private ["_index","_displayName"]; _displayName = getText (configFile >> "cfgVehicles" >> typeof _x >> "displayName"); + if (_displayName isEqualTo "ace_rearm_dummy_obj") then {_displayName = getText (configfile >> "CfgMagazines" >> (_x getVariable "ace_rearm_magazineClass") >> "displayName"); + }; _index = lbAdd [ 991, _displayName ]; lbSetData [ 991, _index, typeOf _x ]; - lbSetTooltip [ 991, _index, _displayName ]; + lbSetTooltip [ 991, _index, _displayName ]; } foreach _cargo; lbSetCurSel [ 991, 0 ]; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create.sqf index 96d9e84c6..79b998335 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create.sqf @@ -1,4 +1,6 @@ +private ["_new","_class","_selected"]; + closeDialog 0; btc_log_create_obj = _this select 0; @@ -16,7 +18,11 @@ call btc_fnc_log_create_load; //_class = lbText [72,lbCurSel 72]; _class = lbData [72, lbCurSel 72]; _selected = _class; -_new = _class createVehicleLocal [getpos btc_log_create_obj select 0,getpos btc_log_create_obj select 1,0]; +if (getText (configFile >> "cfgVehicles" >> _selected >> "displayName") isEqualTo "") then { + _new = "Box_NATO_Ammo_F" createVehicleLocal [getpos btc_log_create_obj select 0,getpos btc_log_create_obj select 1,0]; +} else { + _new = _class createVehicleLocal [getpos btc_log_create_obj select 0,getpos btc_log_create_obj select 1,0]; +}; while {dialog} do { //if (_class != lbData [72, 1]) then @@ -26,7 +32,11 @@ while {dialog} do _class = lbData [72, lbCurSel 72]; //_class = lbText [72,lbCurSel 72]; _selected = _class; - _new = _class createVehicleLocal [getpos btc_log_create_obj select 0,getpos btc_log_create_obj select 1,0]; + if (getText (configFile >> "cfgVehicles" >> _selected >> "displayName") isEqualTo "") then { + _new = "Box_NATO_Ammo_F" createVehicleLocal [getpos btc_log_create_obj select 0,getpos btc_log_create_obj select 1,0]; + } else { + _new = _class createVehicleLocal [getpos btc_log_create_obj select 0,getpos btc_log_create_obj select 1,0]; + }; _new setDir (getDir btc_log_create_obj); _new setPos [getpos btc_log_create_obj select 0,getpos btc_log_create_obj select 1,0]; }; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_change_target.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_change_target.sqf index 94e37f656..e0feb60ae 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_change_target.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_change_target.sqf @@ -9,6 +9,9 @@ for "_i" from 0 to ((count _category) - 1) do private ["_class","_display","_index"]; _class = (_category select _i); _display = getText (configFile >> "cfgVehicles" >> _class >> "displayName"); + if (_display isEqualTo "") then { + _display = getText (configfile >> "CfgMagazines" >> _class >> "displayName"); + }; //_lb = lbAdd [72,_display]; _index = lbAdd [72,_display]; lbSetData [72, _index, _class]; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_s.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_s.sqf index fb9672bf9..34df7333c 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_s.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/create_s.sqf @@ -1,4 +1,8 @@ private "_obj"; -_obj = _this createVehicle [getpos btc_create_object_point select 0,getpos btc_create_object_point select 1,0]; +if (getText (configFile >> "cfgVehicles" >> _this >> "displayName") isEqualTo "") then { + _obj = [btc_create_object_point,_this] call ace_rearm_fnc_createDummy; +} else { + _obj = _this createVehicle [getpos btc_create_object_point select 0,getpos btc_create_object_point select 1,0]; +}; btc_log_obj_created = btc_log_obj_created + [_obj]; btc_curator addCuratorEditableObjects [[_obj], false]; \ No newline at end of file diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/getconfigmagazines.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/getconfigmagazines.sqf new file mode 100644 index 000000000..83da20c85 --- /dev/null +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/getconfigmagazines.sqf @@ -0,0 +1,54 @@ +/* + * Author: GitHawk, Jonpas + * Returns all magazines a turret can hold according to config. + * + * Arguments: + * 0: Target + * 1: Turret Path + * + * Return Value: + * Magazine classes in TurretPath + * + * Example: + * [typeOf vehicle, [0]] call ace_rearm_fnc_getConfigMagazines + * + * Public: No + */ + +private ["_target","_turretPath","_cfg"]; + +_target = _this select 0; +_turretPath = _this select 1; + +_cfg = configFile >> "CfgVehicles" >> (_target) >> "Turrets"; + +if (count _turretPath == 1) then { + _turretPath params ["_subPath"]; + + if (_subPath == -1) exitWith { + _cfg = configFile >> "CfgVehicles" >> (_target); + }; + + if (count _cfg > _subPath) then { + _cfg = _cfg select _subPath; + } else { + _cfg = nil; + }; +} else { + _turretPath params ["", "_subPath"]; + if (count _cfg > 0) then { + _cfg = (_cfg select 0) >> "Turrets"; + if (count _cfg > _subPath) then { + _cfg = _cfg select _subPath; + } else { + _cfg = nil; + }; + } else { + _cfg = nil; + }; +}; + +if (isNil {_cfg}) exitWith {[]}; +if !(isClass _cfg) exitWith {[]}; + +getArray (_cfg >> "magazines") \ No newline at end of file diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/load.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/load.sqf index fb3042f8a..77b355ea5 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/load.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/load.sqf @@ -5,6 +5,8 @@ _veh = _this; _veh_name = getText (configFile >> "cfgVehicles" >> typeof _veh >> "displayName"); _obj_name = getText (configFile >> "cfgVehicles" >> typeof btc_log_object_selected >> "displayName"); +if (_obj_name isEqualTo "ace_rearm_dummy_obj") then {_obj_name = getText (configfile >> "CfgMagazines" >> (btc_log_object_selected getVariable "ace_rearm_magazineClass") >> "displayName"); +}; if (btc_log_object_selected distance _veh > btc_log_max_distance_load) exitWith {hint format ["%1 is too far from %2!",_veh_name,_obj_name];}; if (speed _veh > 3) exitWith {hint format ["%1 is moving!",_veh_name];}; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/select.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/select.sqf index bfc022040..2e4e3832f 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/select.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/select.sqf @@ -1,4 +1,10 @@ +private ["_displayName"]; + btc_log_object_selected = _this; -hint parseText format ["%1 selected
CR: %2
Interact with a vehicle to load it in!",getText (configFile >> "cfgVehicles" >> typeof btc_log_object_selected >> "displayName"),[btc_log_object_selected] call btc_fnc_log_get_rc]; \ No newline at end of file +_displayName = getText (configFile >> "cfgVehicles" >> typeof btc_log_object_selected >> "displayName"); +if (_displayName isEqualTo "ace_rearm_dummy_obj") then {_displayName = getText (configfile >> "CfgMagazines" >> (btc_log_object_selected getVariable "ace_rearm_magazineClass") >> "displayName"); +}; + +hint parseText format ["%1 selected
CR: %2
Interact with a vehicle to load it in!",_displayName,[btc_log_object_selected] call btc_fnc_log_get_rc]; \ No newline at end of file diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/server_load.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/server_load.sqf index 10999e51d..0e1823f6a 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/server_load.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/server_load.sqf @@ -1,4 +1,6 @@ +private ["_obj","_veh","_cargo"]; + _obj = _this select 0; _veh = _this select 1; diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/unload.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/unload.sqf index daae90dd0..68cc83d12 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/unload.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/fnc/log/unload.sqf @@ -1,5 +1,5 @@ -private ["_obj_type","_veh","_ctrlProgressBar","_ctrlProgressBarTitle","_time"]; +private ["_obj_name","_obj_type","_veh","_ctrlProgressBar","_ctrlProgressBarTitle","_time"]; if (!Dialog) exitWith {}; @@ -9,15 +9,18 @@ _veh = btc_log_veh_selected; closeDialog 0; +_obj_name = getText (configFile >> "cfgVehicles" >> _obj_type >> "displayName"); +if (_obj_name isEqualTo "ace_rearm_dummy_obj") then {_obj_name = "Ammo";}; + if (vehicle player != player && {_veh isKindOf "Air"}) then { - [5,format ["Unloading %1. . .",getText (configFile >> "cfgVehicles" >> _obj_type >> "displayName")],_veh,99999] call btc_fnc_int_action_result; + [5,format ["Unloading %1. . .",_obj_name],_veh,99999] call btc_fnc_int_action_result; } else { - [5,format ["Unloading %1. . .",getText (configFile >> "cfgVehicles" >> _obj_type >> "displayName")],_veh] call btc_fnc_int_action_result; + [5,format ["Unloading %1. . .",_obj_name],_veh] call btc_fnc_int_action_result; }; waitUntil {!(isNil "btc_int_action_result")}; if (btc_int_action_result) then { [[_obj_type,_veh],"btc_fnc_log_server_unload",false] spawn BIS_fnc_MP; - hint format ["%1 has been unloaded from %2",getText (configFile >> "cfgVehicles" >> _obj_type >> "displayName"),getText (configFile >> "cfgVehicles" >> typeOf _veh >> "displayName")]; + hint format ["%1 has been unloaded from %2",_obj_name,getText (configFile >> "cfgVehicles" >> typeOf _veh >> "displayName")]; } else {hint "Unloading aborted";}; \ No newline at end of file diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/core/init_server.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/core/init_server.sqf index d0ba2c013..20fc61834 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/core/init_server.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/core/init_server.sqf @@ -4,13 +4,12 @@ if (btc_db_load && {profileNamespace getVariable [format ["btc_hm_%1_db",worldNa call compile preprocessFile "core\fnc\db\load.sqf"; } else { for "_i" from 1 to btc_hideout_n do {[] call btc_fnc_mil_create_hideout;}; - + setTimeMultiplier btc_p_acctime; - + [] execVM "core\fnc\cache\init.sqf"; [] spawn {{waitUntil {!isNull _x};_x addMPEventHandler ["MPKilled", {if (isServer) then {_this call btc_fnc_eh_veh_killed};}];} foreach btc_vehicles;}; }; -[btc_helo_1,30,true] spawn btc_fnc_eh_veh_add_respawn; -//[btc_helo_1,true,30] spawn btc_fnc_veh_track_marker; \ No newline at end of file +{[_x,30,false] spawn btc_fnc_eh_veh_add_respawn;} forEach btc_helo; \ No newline at end of file diff --git a/=BTC=co@30_Hearts_and_Minds.Altis/init.sqf b/=BTC=co@30_Hearts_and_Minds.Altis/init.sqf index 246fb3928..8d075f1e2 100644 --- a/=BTC=co@30_Hearts_and_Minds.Altis/init.sqf +++ b/=BTC=co@30_Hearts_and_Minds.Altis/init.sqf @@ -1,8 +1,8 @@ enableSaving [false,false]; //Server +call compile preprocessFile "core\fnc\compile.sqf"; call compile preprocessFile "core\def\mission.sqf"; call compile preprocessFile "define_mod.sqf"; -call compile preprocessFile "core\fnc\compile.sqf"; if (isServer) then { call compile preprocessFile "core\init_server.sqf";