public void MoveUnitByRoutine(List <Vector2Int> routine, float speed, UnityAction onComplete) { var s = PositionMath.GetTileOccupyStatus(routine[0]); PositionMath.ResetTileOccupyStatus(routine[0]); PositionMath.SetOccupyStatus(routine[routine.Count - 1], s); gameMode.unitShower.MoveUnit(routine, onComplete, speed); }