Skip to content

Commit

Permalink
Medical Engine - Allow disabling seat locking on vehicle types (acemo…
Browse files Browse the repository at this point in the history
  • Loading branch information
PabstMirror authored and blake8090 committed Aug 18, 2024
1 parent 0f18e6a commit a70d6d7
Show file tree
Hide file tree
Showing 2 changed files with 14 additions and 1 deletion.
8 changes: 7 additions & 1 deletion addons/medical_engine/functions/fnc_lockUnconsciousSeat.sqf
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,6 @@
*
* Public: No
*/
if (missionNamespace getVariable [QGVAR(disableSeatLocking), false]) exitWith {};
params ["_unit"];

private _vehicle = objectParent _unit;
Expand All @@ -20,6 +19,13 @@ TRACE_3("lockUnconsciousSeat",_unit,_vehicle,lifeState _unit);
if (isNull _vehicle) exitWith {};
if (alive _unit && {lifeState _unit != "INCAPACITATED"}) exitWith {};

private _disable = missionNamespace getVariable [QGVAR(disableSeatLocking), false];
if (_disable isEqualTo true || {
_disable isEqualType [] && {
(_disable findIf {_vehicle isKindOf _x}) != -1
}
}) exitWith {};

switch (true) do {
case (_unit isEqualTo (driver _vehicle)): {
_vehicle lockDriver true;
Expand Down
7 changes: 7 additions & 0 deletions docs/wiki/framework/medical-framework.md
Original file line number Diff line number Diff line change
Expand Up @@ -241,3 +241,10 @@ The damage elements are sorted in descending order according to how much damage
Some of ACE Medical's underlying behavior, primarily related to damage handling and the vitals loop, can be fine-tuned by editing `ace_medical_const_` variables, found in [script_macros_medical.hpp](https://github.com/acemod/ACE3/blob/master/addons/medical_engine/script_macros_medical.hpp).

Modification of those values should be done by advanced users only. Values and variable names are subject to change without prior warning. Modifying values mid-mission may lead to undefined behavior. Expect minimal support.

### 5.1 Disable seat locking for unconscious
ACE will lock the seat of an unconscious or dead unit to prevent automatic unloading. This can be disabled by setting:
```sqf
ace_medical_engine_disableSeatLocking = true; // disable on everything
ace_medical_engine_disableSeatLocking = ["ship"]; // disable just on boats
```

0 comments on commit a70d6d7

Please sign in to comment.