Pārlūkot izejas kodu

Fix direct module, try to fix orbital

m3ales 4 gadi atpakaļ
vecāks
revīzija
b752d1d3f8

+ 1 - 0
addons - Copy/RD501_Droid_Dispenser/config_macros.hpp

@@ -14,4 +14,5 @@
 	#define QGVAR(name) QUOTE(GVAR(name))
 	#define UNIT_NAME(side,name) CONCAT_3(PREFIX,_,CONCAT_3(side,_unit_,name))
 	#define ORDNANCE(name) CONCAT_3(PREFIX,_Ordnance_,name)
+	#define DEBUG
 #endif

+ 6 - 3
addons - Copy/RD501_Droid_Dispenser/functions/fnc_droidDispenserPFH.sqf

@@ -39,10 +39,13 @@ if(_aliveUnits < _target getVariable QGVAR(maxUnits)) exitWith
 	};
 	LOGF_2("%1 spawning in %2",_target,_selectedUnit);
 	_unit = _group createUnit [_selectedUnit, position _target, [], 0, "NONE"];
-	_unit call ace_common_fnc_fixPosition;
-	_unit commandMove (_unit getPos [25, 0]);
 	[{
-		params["_unit"];
+		params["_unit"];		
+		_unit call ace_common_fnc_fixPosition;
+		_group = group _unit;
+		_group setBehaviour "SAFE";
+		_group1 setCombatMode "RED";
+		_unit commandMove (_unit getPos [25, 0]);
 		{
 			_x addCuratorEditableObjects [[_unit], true];
 		} forEach allCurators;

+ 1 - 1
addons - Copy/RD501_Droid_Dispenser/functions/fnc_moduleDroidDispenser.sqf

@@ -3,6 +3,6 @@ params["_logic"];
 if !(local _logic) exitWith {};
 private _unit = attachedTo _logic;
 
-_unit call FUNC(droidDispenserInit);
+[_unit] remoteExecCall [QUOTE(FUNC(droidDispenserInit)), 2, false];
 
 deleteVehicle _logic;

+ 11 - 2
addons - Copy/RD501_Droid_Dispenser/functions/fnc_moduleOrbitalDroidDispenser.sqf

@@ -3,14 +3,23 @@
 LOG("Triggered Orbital Drop Droid Dispenser");
 //wait for projectile to land and then spawn vehicle
 params["_logic"];
+
+if !(local _logic) exitWith {};
+
 _position = position _logic;
+
 LOGF_2("Firing Droid Dispenser Artillery at '%1', for '%2'",_postition,_unit);
 [{
 	params["_position"];
 	_spawner = GVAR(spawnerDefaultObject) createVehicle _position;
-	LOGF_2("Created Droid Dispenser Object '%1' at '%2'",_spawner,position _spawner);
+	LOGF_2("Created Droid Dispenser Object '%1' at '%2'",_spawner, position _spawner);
 	[_spawner] call FUNC(droidDispenserInit);
+	[{
+		params["_unit"];
+		{
+			_x addCuratorEditableObjects [[_unit], true];
+		} forEach allCurators;
+	}, _spawner] call CBA_fnc_execNextFrame;
 }, [_position], GVAR(fireSupportSpawnDelay)] call CBA_fnc_waitAndExecute;
-
 // fire projectile
 _this call ace_zeus_fnc_bi_moduleProjectile;