Well as your text object shows..
the angle() expression that is used for setting enemyhitbox.playerangle returns a value inbetween -180 and 180..
(-180 left, -90 up, 0 right, 90 down, and 180 facing left again)
but then in the sub-events for the actual movement, you were checking for values from 0 to 360 instead of -180 to 180
so just need to change those values
alternatively you could use anglediff() .. which automatically works out any inconsistent angle values.
<img src="https://dl.dropbox.com/u/53374990/Forum/anglediff.png" border="0" />