Drowning widget is bugged
-
A "Flash" widget (a pulsing red bar) is not shown when PC is drowning (see Drowning.jpg).
-
A drowning widget looks different from vanilla.
-
A flash widget color is hardcoded in hud.cpp:
float intensity = (cos(mDrowningFlashTheta) + 1.0f) / 2.0f; mDrowningFlash->setColour(MyGUI::Colour(intensity, 0, 0));
We should use texture "Colour" property value as max intensity instead. Also the vanilla red bar is much darker, max intensity is something like 0.785 (C70000 - strong red) instead of 1.0 (FF0000 - red) in OpenMW.
- A drowning widget visibility check in MechanicsManager::update (file mechanicsmanagerimp.cpp) is bugged:
if(stats.getTimeToStartDrowning() != mWatchedTimeToStartDrowning)
If OpenMW is just started, but PC is already drowning: stats.getTimeToStartDrowning() = mWatchedTimeToStartDrowning = 0 and drowning widget will not be shown (see Drowning_widget_hidden.jpg).
(RM-3801 from redmine: created on 2017-03-23 by Andrei Kortunov, , closed on 2017-03-25 by Andrei Kortunov)