Looks like the overlay is now hiding because the opacity expression hits 0 instantly once health_flash_post_timer is still 0, so you never see the drop fade out. Try these steps:
-
Loading requirement – make sure it checks
health_flash_post_timer > 0(or remove it) so the element can still exist while the post timer runs. If it still checkshealth_flash_timer, the overlay gets deleted as soon as the flash ends. -
Verify the timer – add a temporary Text element with
{"placeholder":"getvariable","values":{"name":"health_flash_post_timer"}}so you can see it climb from0to5(or whatever value you expect) after taking damage. -
Use a smoother fade – the expression you posted only fades over five ticks, which is why it feels too fast. Try something like this instead (uses
calc+minnum/maxnumto clamp between0and1):{ "placeholder": "minnum", "values": { "first": "1", "second": { "placeholder": "maxnum", "values": { "first": "0", "second": { "placeholder": "calc", "values": { "decimal": "true", "expression": "(5 - {"placeholder":"getvariable","values":{"name":"health_flash_post_timer"}}) / 5" } } } } } }This keeps opacity at
1while the timer is0, then slowly fades out over 5 ticks (you can increase the5to stretch the fade). If you’d rather keep the original format withmax(0, …), just wrap it inmaxnumandminnumper the placeholder docs so it can’t drop below0or above1.
Let me know if you want me to tweak that expression for a longer fade or combine it with a delay.