Ah, I remember I had similar problem.
IIRC, such properties as IdleState refer to exactly the FIRST FRAME of the state animation. Thus, if an actor is at different frame, the equation won't work.
I think you should use either StateIsInRange or StateIsInSe
