Use GetRealX/Y for GetEventsXY and fix some minor bugs

Avoid using uninitialized data. Call MoveTypeCustom after the event has
been pushed back in the pending vector. After the last move, end move
routes as soon as the characters stop moving.