Collision and damage logic between player and enemies