예제 #1
0
        public LogicMoveResult MakeMove()
        {
            var gameState = GetGameState();
            var result    = new LogicMoveResult(gameState.UnitStates.Count);

            this.Logic.MakeMove(gameState, result);
            return(result);
        }
예제 #2
0
        internal void MakeMove(GameState gameState, LogicMoveResult moves)
        {
            #region Argument Check

            if (gameState == null)
            {
                throw new ArgumentNullException("gameState");
            }

            if (moves == null)
            {
                throw new ArgumentNullException("moves");
            }

            #endregion

            OnMakeMove(gameState, moves);
        }
예제 #3
0
 protected abstract void OnMakeMove(GameState gameState, LogicMoveResult moves);