Use enemy.dead rather than enemy.isAlive. Add counter in while-loop to ensure we avoid never ending loops
Move health-check to from update to takeDamage. No need to check if no damage is recieved
Make sure no target is set in create, make call to Enemy.findTarget instead