You set a variable that's never used, you use animation condition instead? I would keep it to the variable as it's easier to debug rather than checking if an animation is playing.
Also for the downed enemy it might be easier to use a Family instance variable for example isDown then you can use the condition 'Enemy is overlapping button' and replace the LOS thing with 'Enemy isDown=false'.
To debug this it's difficult, what you mentioned about disabling the collision is not shown in the screenshots so we can't know if that's happening at the time of collision. But yeah do the above and simplify it down to get rid of LOS and only use Enemies conditions to start debugging the problem. If disabling the collisions is part of the gameplay itself you could still use it but not as part of the conditions with the buttons.