Browse Source

Add packup into vehicle action

m3ales 3 years ago
parent
commit
669ac27753

+ 7 - 2
addons - Copy/RD501_Main/XEH_postinit.sqf

@@ -48,8 +48,9 @@ call macro_fnc_name(fortify_tool);
 // Medical CCP Building
 rd501_medical_ccp_building = "Land_Medevac_house_V1_F";
 rd501_medical_ccp_classes = ["Land_Medevac_house_V1_F"];
-rd501_medical_ccp_stitchDurationSeconds = 10;
-rd501_medical_ccp_bandageDurationSeconds = 10;
+rd501_medical_ccp_truck = "rd501_mash_truck";
+rd501_medical_ccp_stitchDurationSeconds = 5;
+rd501_medical_ccp_bandageDurationSeconds = 5;
 
 ["rd501_medical_ccp_incrementStitch",{ 
 	_this call rd501_fnc_incrementStitchProgress 
@@ -67,6 +68,10 @@ rd501_medical_ccp_bandageDurationSeconds = 10;
 	_this call rd501_fnc_deployCCPServer;
 }] call CBA_fnc_addEventHandler;
 
+["rd501_medical_ccp_packupCCPServer", {
+	_this call rd501_fnc_packupCCPServer;
+}] call CBA_fnc_addEventHandler;
+
 // Surrender stun
 call macro_fnc_name(stun);
 

+ 2 - 0
addons - Copy/RD501_Main/XEH_preInit.sqf

@@ -133,6 +133,8 @@ macro_prep_xeh(medical_ccp\fnc_incrementStitchProgress.sqf,incrementStitchProgre
 macro_prep_xeh(medical_ccp\fnc_deployCCP.sqf,deployCCP)
 macro_prep_xeh(medical_ccp\fnc_deployCCPLocal.sqf,deployCCPLocal)
 macro_prep_xeh(medical_ccp\fnc_deployCCPServer.sqf,deployCCPServer)
+macro_prep_xeh(medical_ccp\fnc_packupCCP.sqf,packupCCP)
+macro_prep_xeh(medical_ccp\fnc_packupCCPServer.sqf,packupCCPServer)
 macro_prep_xeh(medical_ccp\fnc_isDoctor.sqf,isDoctor)
 macro_prep_xeh(medical_ccp\fnc_canBandageNearbyCCP.sqf,canBandageNearbyCCP)
 macro_prep_xeh(medical_ccp\fnc_canStitchNearbyCCP.sqf,canStitchNearbyCCP)

+ 10 - 1
addons - Copy/RD501_Main/functions/medical_ccp/fnc_deployCCPLocal.sqf

@@ -28,4 +28,13 @@ _action = ["rd501_medical_ccp_stitchAll", "Stitch All Patients", "", {
 	params ["_target", "_player", "_params"];
 		[_player, _target, 20] call rd501_fnc_stitchAllWoundsNearbyCCP;
 	}, {_this call rd501_fnc_canStitchNearbyCCP}, {[]}] call ace_interact_menu_fnc_createAction;
-[_ccp, 0, ["ACE_MainActions"], _action] call ace_interact_menu_fnc_addActionToObject;
+[_ccp, 0, ["ACE_MainActions"], _action] call ace_interact_menu_fnc_addActionToObject;
+
+_action = ["rd501_medical_ccp_packup", "Pack", "", {}, {true}, {[]}] call ace_interact_menu_fnc_createAction;
+[_ccp, 0, ["ACE_MainActions"], _action] call ace_interact_menu_fnc_addActionToObject;
+
+_action = ["rd501_medical_ccp_packupIntoVehicle", "Pack into Vehicle", "", {
+	params ["_target", "_player", "_params"];
+		[_target] call rd501_fnc_packupCCP;
+	}, {true}, {[]}] call ace_interact_menu_fnc_createAction;
+[_ccp, 0, ["ACE_MainActions","rd501_medical_ccp_packup"], _action] call ace_interact_menu_fnc_addActionToObject;

+ 2 - 1
addons - Copy/RD501_Main/functions/medical_ccp/fnc_deployCCPServer.sqf

@@ -21,4 +21,5 @@ deleteVehicle _target;
 _spawner = rd501_medical_ccp_building createVehicle _position;
 systemChat format["Deployed CCP"];
 
-["rd501_medical_ccp_deployCCPLocal", [_spawner]] call CBA_fnc_globalEventJIP; // raise on all clients (we should be on server)
+_jipId = ["rd501_medical_ccp_deployCCPLocal", [_spawner]] call CBA_fnc_globalEventJIP; // raise on all clients (we should be on server)
+[_jipId, _spawner] call CBA_fnc_removeGlobalEventJIP;

+ 14 - 0
addons - Copy/RD501_Main/functions/medical_ccp/fnc_packupCCP.sqf

@@ -0,0 +1,14 @@
+/*
+ * Author: M3ales
+ *
+ * Example:
+ * [cursorTarget, player, []] call rd501_fnc_packupCCP
+ *
+ * Public: No
+ */
+
+params ["_target", "_player", "_params"];
+
+["rd501_medical_ccp_packupCCPServer", [_target]] call CBA_fnc_serverEvent;
+
+["Packing up CCP into Vehicle"] call ACE_common_fnc_displayText;

+ 22 - 0
addons - Copy/RD501_Main/functions/medical_ccp/fnc_packupCCPServer.sqf

@@ -0,0 +1,22 @@
+/*
+ * Author: M3ales
+ *
+ * Replaces the given target CCP object with its packup object if specified, and adds an ace interact on JIP
+ *
+ * Arguments:
+ * Target Object
+ * Return Value:
+ * None
+ *
+ * Example:
+ * [cursorTarget] call rd501_fnc_packupCCPServer
+ *
+ * Public: No
+ */
+
+params["_target"];
+
+_position = position _target;
+deleteVehicle _target;
+_spawner = rd501_medical_ccp_truck createVehicle _position;
+systemChat format["Packed into Truck"];