For taking turns, can't you just have a variable which alternates between 0 and 1? When its 0 the player gets to move, and when 1 the AI moves?
For movement, each time the turn changes each unit gets their "move" variable set to a value (3 for moving 3 grids). If a unit has more than 0 in "move", then they can be selected to move (subtract from it when moving a grid).
When all units on your side have their "move" at 0. Then change the turn variable so the other player gets to go.
Just an idea.
Yeah that is very good ideas, thanks a lot! I basically did what you said but can't figure out how to get it to register my movements correctly. For example i set the events to remove 1 point from move each time a unit moved. However it did not work, the unit just got stuck between two grids. I suppose its because the "Is moving" event doesn't register each grid as 64x64. It just detects that the unit moved and therefore subtracts from the "move" value. Any idea how to work around this? Thanks in advance.