Well, that's a tricky one. There actually is a way to check what it is (but if you use obstacles or pit or anything else that isn't wall, you'll run into issues or have to make multiple checks) - use 'Wait for item'. Unfortunately, no, there isn't a way to extend the character's turn. You'll have to do everything before you move.
I assume your code looks like this:
Click here to view the secret text
× Imperative 10 Label Start If ... Wait until var "_MyX" = _X If ... Wait until var "_MyY" > _Y Move 0,-1,0,1 Go to Start Else Move 0,1,0,1 Go to Start If End If End If ... Wait until var "_MyY" = _Y If ... Wait until var "_MyX" > _X Move -1,0,0,1 Go to Start Else Move 1,0,0,1 Go to Start If End If End If ... Wait until var "_MyX" > _X If ... Wait until var "_MyY" > _Y Move -1,-1,0,1 Go to Start Else Move -1,1,0,1 Go to Start If End Else If ... Wait until var "_MyY" > _Y Move 1,-1,0,1 Go to Start Else Move 1,1,0,1 Go to Start If End If End Go to Start
The reason that you can't use wait 0 there is that it always ends execution for the turn. So it will move, stop execution, and then next turn see wait 0 and stop execution.
There is one other way to do it, if they aren't going to run into each other. If you place a character in between each of the monsters in the movement order, then have the monsters pass intended direction and location in variables to the other characters, those characters can find the monster and perform whatever action is required.
This reminds me; I have to add something to my list of things that the scripting engine is missing.