diff --git a/addons/medical_ui/XEH_PREP.hpp b/addons/medical_ui/XEH_PREP.hpp
index 3879a25bb1..c7f0dd1dfb 100644
--- a/addons/medical_ui/XEH_PREP.hpp
+++ b/addons/medical_ui/XEH_PREP.hpp
@@ -1,3 +1,5 @@
+TRACE_1("",QUOTE(ADDON));
+
PREP(effectBleeding);
PREP(effectBloodVolume);
PREP(effectHeartBeat);
diff --git a/addons/medical_ui/XEH_postInit.sqf b/addons/medical_ui/XEH_postInit.sqf
index a90c04ae70..e3ae32bf2c 100644
--- a/addons/medical_ui/XEH_postInit.sqf
+++ b/addons/medical_ui/XEH_postInit.sqf
@@ -2,6 +2,7 @@
if (!hasInterface) exitWith {};
+GVAR(nextFadeIn) = 0;
GVAR(heartBeatEffectRunning) = false;
[false] call FUNC(initEffects);
diff --git a/addons/medical_ui/XEH_preInit.sqf b/addons/medical_ui/XEH_preInit.sqf
index 1cdc5f20be..3de7bb526a 100644
--- a/addons/medical_ui/XEH_preInit.sqf
+++ b/addons/medical_ui/XEH_preInit.sqf
@@ -2,7 +2,9 @@
ADDON = false;
+PREP_RECOMPILE_START;
#include "XEH_PREP.hpp"
+PREP_RECOMPILE_END;
[
QGVAR(painEffectType),
@@ -11,7 +13,7 @@ ADDON = false;
"ACE Medical", // @todo
[
[0, 1],
- ["White flashing", "Pulsing blur"],
+ [localize LSTRING(painEffectType_whiteFlashing), localize LSTRING(painEffectType_pulsingBlur)],
0
],
false,
diff --git a/addons/medical_ui/functions/fnc_effectBleeding.sqf b/addons/medical_ui/functions/fnc_effectBleeding.sqf
index bee4334eb8..0575585c40 100644
--- a/addons/medical_ui/functions/fnc_effectBleeding.sqf
+++ b/addons/medical_ui/functions/fnc_effectBleeding.sqf
@@ -26,6 +26,7 @@ if (!_enable) exitWith {
// Initialize controls
if (isNull _blood1) then {
+ TRACE_1("Creating Blood Controls",_controls);
_blood1 = findDisplay 46 ctrlCreate ["RscPicture", -1];
_blood2 = findDisplay 46 ctrlCreate ["RscPicture", -1];
diff --git a/addons/medical_ui/functions/fnc_effectHeartBeat.sqf b/addons/medical_ui/functions/fnc_effectHeartBeat.sqf
index ac77904359..41f1f04f5c 100644
--- a/addons/medical_ui/functions/fnc_effectHeartBeat.sqf
+++ b/addons/medical_ui/functions/fnc_effectHeartBeat.sqf
@@ -11,13 +11,18 @@
#include "script_component.hpp"
private _heartRate = ACE_player getVariable [QEGVAR(medical,heartRate), DEFAULT_HEART_RATE];
-if (_heartRate == 0) exitWith {GVAR(heartBeatEffectRunning) = false;};
-
+if (_heartRate == 0) exitWith {
+ TRACE_1("Ending heart beat effect - zero",_heartRate);
+ GVAR(heartBeatEffectRunning) = false;
+};
private _waitTime = 60 / _heartRate;
+// TRACE_2("",_heartRate,_waitTime);
+
switch (true) do {
case (_heartRate > 160): {
- playSound SND_HEARBEAT_FAST;
+ // playSound SND_HEARBEAT_FAST; // Array doesn't blend together well, just play one file consistently
+ playSound "ACE_heartbeat_fast_1";
[DFUNC(effectHeartBeat), [], _waitTime] call CBA_fnc_waitAndExecute;
};
case (_heartRate < 60): {
@@ -26,7 +31,7 @@ switch (true) do {
};
default {
- TRACE_1("Ending heart beat effect",_heartRate);
+ TRACE_1("Ending heart beat effect - normal",_heartRate);
GVAR(heartBeatEffectRunning) = false;
};
};
diff --git a/addons/medical_ui/functions/fnc_handleEffects.sqf b/addons/medical_ui/functions/fnc_handleEffects.sqf
index 7efdf88de2..8a02bc26b2 100644
--- a/addons/medical_ui/functions/fnc_handleEffects.sqf
+++ b/addons/medical_ui/functions/fnc_handleEffects.sqf
@@ -18,9 +18,10 @@ if (EGVAR(common,OldIsCamera) || {!alive ACE_player}) exitWith {
[false] call FUNC(effectBleeding);
};
+BEGIN_COUNTER(handleEffects);
+
// - Current state info -------------------------------------------------------
private _bleedingStrength = [ACE_player] call EFUNC(medical,getBloodloss);
-// private _bleeding = _bleedingStrength > 0;
private _bloodVolume = ACE_player getVariable [QEGVAR(medical,bloodVolume), DEFAULT_BLOOD_VOLUME];
private _unconscious = ACE_player getVariable [QEGVAR(medical,isUnconscious), false];
private _heartRate = ACE_player getVariable [QEGVAR(medical,heartRate), DEFAULT_HEART_RATE];
@@ -43,3 +44,5 @@ if (!_unconscious) then {
};
[true, _bleedingStrength] call FUNC(effectBleeding);
+
+END_COUNTER(handleEffects);
diff --git a/addons/medical_ui/stringtable.xml b/addons/medical_ui/stringtable.xml
index 76883319c2..a0a891d0b2 100644
--- a/addons/medical_ui/stringtable.xml
+++ b/addons/medical_ui/stringtable.xml
@@ -15,5 +15,11 @@
痛みの種類
고통 효과 종류
+
+ White flashing
+
+
+ Pulsing blur
+