Shouldn't the variable isDead be called isAlive instead? isAlive=1 means the player is alive. isAlive=0 means not alive any more. (since in any programming language 1 is true and 0 is false)
Checking if the player has any health left or if it's dead on every tick is not a good practice. I suggest you move these event inside the event where the player actually receives damage. For example:
Bullet On Collision with Player : Player subtract 1 from Health
.... Player health<=0
.... : Player set isAlive=0
.... : Player play animation "Death"
See if it helps. If the animation still doesn't work, run the game in debug mode and check the variables on the Player object.