mirror of
https://github.com/acemod/ACE3.git
synced 2024-08-30 18:23:18 +00:00
Medical Feedback - fix heart rate effect (#6927)
* Medical Fedback - fix heart rate effect and limit setVar for acre/tfar * Apply suggestions from code review Co-Authored-By: PabstMirror <pabstmirror@gmail.com> * Update XEH_postInit.sqf * use "task_force_radio"
This commit is contained in:
parent
0926d8508c
commit
69dc73ee45
@ -24,10 +24,13 @@ GVAR(heartBeatEffectRunning) = false;
|
|||||||
if (_unit != ACE_player) exitWith {};
|
if (_unit != ACE_player) exitWith {};
|
||||||
|
|
||||||
// Toggle unconscious player's ability to talk in radio addons
|
// Toggle unconscious player's ability to talk in radio addons
|
||||||
|
if (["task_force_radio"] call EFUNC(common,isModLoaded)) then {
|
||||||
_unit setVariable ["tf_voiceVolume", [1, 0] select _unconscious, true];
|
_unit setVariable ["tf_voiceVolume", [1, 0] select _unconscious, true];
|
||||||
_unit setVariable ["tf_unable_to_use_radio", _unconscious]; // Only used locally
|
_unit setVariable ["tf_unable_to_use_radio", _unconscious]; // Only used locally
|
||||||
|
};
|
||||||
|
if (["acre_main"] call EFUNC(common,isModLoaded)) then {
|
||||||
_unit setVariable ["acre_sys_core_isDisabled", _unconscious, true];
|
_unit setVariable ["acre_sys_core_isDisabled", _unconscious, true];
|
||||||
|
};
|
||||||
// Greatly reduce player's hearing ability while unconscious (affects radio addons)
|
// Greatly reduce player's hearing ability while unconscious (affects radio addons)
|
||||||
[QUOTE(ADDON), VOL_UNCONSCIOUS, _unconscious] call EFUNC(common,setHearingCapability);
|
[QUOTE(ADDON), VOL_UNCONSCIOUS, _unconscious] call EFUNC(common,setHearingCapability);
|
||||||
|
|
||||||
@ -40,22 +43,29 @@ GVAR(heartBeatEffectRunning) = false;
|
|||||||
params ["_unit"];
|
params ["_unit"];
|
||||||
|
|
||||||
if (_unit != ACE_player) exitWith {};
|
if (_unit != ACE_player) exitWith {};
|
||||||
|
if (["task_force_radio"] call EFUNC(common,isModLoaded)) then {
|
||||||
_unit setVariable ["tf_voiceVolume", 1, true];
|
_unit setVariable ["tf_voiceVolume", 1, true];
|
||||||
_unit setVariable ["tf_unable_to_use_radio", false];
|
_unit setVariable ["tf_unable_to_use_radio", false];
|
||||||
|
};
|
||||||
|
if (["acre_main"] call EFUNC(common,isModLoaded)) then {
|
||||||
_unit setVariable ["acre_sys_core_isDisabled", false, true];
|
_unit setVariable ["acre_sys_core_isDisabled", false, true];
|
||||||
|
};
|
||||||
[QUOTE(ADDON), 1, false] call EFUNC(common,setHearingCapability);
|
[QUOTE(ADDON), 1, false] call EFUNC(common,setHearingCapability);
|
||||||
}] call CBA_fnc_addEventHandler;
|
}] call CBA_fnc_addEventHandler;
|
||||||
|
|
||||||
// Update effects to match new unit's current status (this also handles respawn)
|
// Update effects to match new unit's current status (this also handles respawn)
|
||||||
["unit", {
|
["unit", {
|
||||||
params ["_new", "_old"];
|
params ["_new"];
|
||||||
|
|
||||||
private _status = _new getVariable ["ace_unconscious", false];
|
private _status = _new getVariable ["ace_unconscious", false];
|
||||||
|
|
||||||
|
if (["task_force_radio"] call EFUNC(common,isModLoaded)) then {
|
||||||
_new setVariable ["tf_voiceVolume", [1, 0] select _status, true];
|
_new setVariable ["tf_voiceVolume", [1, 0] select _status, true];
|
||||||
_new setVariable ["tf_unable_to_use_radio", _status];
|
_new setVariable ["tf_unable_to_use_radio", _status];
|
||||||
|
};
|
||||||
|
if (["acre_main"] call EFUNC(common,isModLoaded)) then {
|
||||||
_new setVariable ["acre_sys_core_isDisabled", _status, true];
|
_new setVariable ["acre_sys_core_isDisabled", _status, true];
|
||||||
|
};
|
||||||
[QUOTE(ADDON), VOL_UNCONSCIOUS, _status] call EFUNC(common,setHearingCapability);
|
[QUOTE(ADDON), VOL_UNCONSCIOUS, _status] call EFUNC(common,setHearingCapability);
|
||||||
[_status, 0] call FUNC(effectUnconscious);
|
[_status, 0] call FUNC(effectUnconscious);
|
||||||
["unconscious", _status] call EFUNC(common,setDisableUserInputStatus);
|
["unconscious", _status] call EFUNC(common,setDisableUserInputStatus);
|
||||||
|
@ -4,18 +4,18 @@
|
|||||||
* Handles the hear beat sound.
|
* Handles the hear beat sound.
|
||||||
*
|
*
|
||||||
* Arguments:
|
* Arguments:
|
||||||
* 0: Heart rate <NUMBER>
|
* None
|
||||||
*
|
*
|
||||||
* Return Value:
|
* Return Value:
|
||||||
* None
|
* None
|
||||||
*
|
*
|
||||||
* Example:
|
* Example:
|
||||||
* [120] call ace_medical_feedback_fnc_effectHeartBeat
|
* [] call ace_medical_feedback_fnc_effectHeartBeat
|
||||||
*
|
*
|
||||||
* Public: No
|
* Public: No
|
||||||
*/
|
*/
|
||||||
|
|
||||||
params ["_heartRate"];
|
private _heartRate = GET_HEART_RATE(ACE_player);
|
||||||
|
|
||||||
if (_heartRate == 0) exitWith {
|
if (_heartRate == 0) exitWith {
|
||||||
TRACE_1("Ending heart beat effect - zero",_heartRate);
|
TRACE_1("Ending heart beat effect - zero",_heartRate);
|
||||||
|
Loading…
Reference in New Issue
Block a user