Blueprints : Disable Input causes switch case issues

Right, simple enough idea, using an enum called state (which includes the values : standing, running, dying and death).

This enum is connected to a switch which, based on the value of the “State” enum, performs certain actions.

I have a simple key press wired in ( / ) which takes 50% of my player characters hp away. Once the HP <= 0, the enum state is set to “Dying”.

This state, which runs from the update animation event node, then plays the dying animation. (Using flipbook and paper 2d) I can then use disable input as you would expect.

Up to this point all is fine.

However, I wanted the “Dying” Flipbook to just play once (i.e. not loop) and then to lead into the “Dead” flipbook which was just one frame of the character lying on the ground.

My thought was, to run a delay node from either: The end of the switch case for Dying (so straight after the set flipbook to dying animation node)

or

after the damage counter branch which checks to see if hp <= 0

and then from that delay, attach a get flipbook length to the variable input pin and then a set state to “Dead” from
the execution pin. This works fine up to this point, either way I try it.

BUT if I try and then place a disable input node at any point in my script, the switch case keeps looping the dying case and never reaches the dead case.

What the hell is going on?

Also I accidentally disconnected the set state dying node in the damage counter before print screening, ignore that please.