コード例 #1
0
 public JumpNode FollowedBy(IPhutballMove newMove)
 {
     return(new JumpNode(ActualGraph, newMove)
     {
         MovesFromRoot = MovesFromRoot.FollowedBy(newMove)
     });
 }
コード例 #2
0
ファイル: MovesHistory.cs プロジェクト: wobuzhudao/Phutball
 public void PerformAndStore(Func<IPerformMoves> movePerfomer, IPhutballMove move)
 {
     var item = MoveHistoryItem.Item(movePerfomer, move);
     item.Perform();
     _done.Add(item);
     _undone.Clear();
 }
コード例 #3
0
ファイル: JumpNode.cs プロジェクト: wobuzhudao/Phutball
 public JumpNode FollowedBy(IPhutballMove newMove)
 {
     return new JumpNode(ActualGraph, newMove)
                {
                    MovesFromRoot = MovesFromRoot.FollowedBy(newMove)
                };
 }
コード例 #4
0
 public static MoveHistoryItem Item(Func<IPerformMoves> movePerfomer, IPhutballMove move)
 {
     return new MoveHistoryItem
                {
                    Performer = movePerfomer,
                    Move = move
                };
 }
コード例 #5
0
        public void PerformAndStore(Func <IPerformMoves> movePerfomer, IPhutballMove move)
        {
            var item = MoveHistoryItem.Item(movePerfomer, move);

            item.Perform();
            _done.Add(item);
            _undone.Clear();
        }
コード例 #6
0
 public void Undo(IPhutballMove moveToUndo)
 {
     moveToUndo.Undo(new PhutballMoveContext(_callbackPerformer)
     {
         FieldsUpdater = _fieldsUpdater,
         SwitchPlayer  = _playersState
     });
 }
コード例 #7
0
ファイル: PerformMoves.cs プロジェクト: wobuzhudao/Phutball
 public void Perform(IPhutballMove moveToPerform)
 {
     moveToPerform.Perform(new PhutballMoveContext(_callbackPerformer)
                               {
                                   FieldsUpdater = _fieldsUpdater,
                                   SwitchPlayer = _playersState
                               });
 }
コード例 #8
0
ファイル: PerformMoves.cs プロジェクト: wobuzhudao/Phutball
 public void Undo(IPhutballMove moveToUndo)
 {
     moveToUndo.Undo(new PhutballMoveContext(_callbackPerformer)
                         {
                             FieldsUpdater = _fieldsUpdater,
                             SwitchPlayer = _playersState
                         });
 }
コード例 #9
0
 public void Perform(IPhutballMove moveToPerform)
 {
     moveToPerform.Perform(new PhutballMoveContext(_callbackPerformer)
     {
         FieldsUpdater = _fieldsUpdater,
         SwitchPlayer  = _playersState
     });
 }
コード例 #10
0
 public static MoveHistoryItem Item(Func <IPerformMoves> movePerfomer, IPhutballMove move)
 {
     return(new MoveHistoryItem
     {
         Performer = movePerfomer,
         Move = move
     });
 }
コード例 #11
0
 public BoardJumpTree(IFieldsGraph actualGraph, IPhutballMove moveToApply, ITree <JumpNode> parent)
 {
     Parent          = parent;
     Node            = new JumpNode(actualGraph, moveToApply);
     _jumpersFactory = new JumpersFactory(actualGraph);
 }
コード例 #12
0
 protected override void Because()
 {
     _bestMove = Sut.Search(_fieldsGraph).Move;
 }
コード例 #13
0
 public static IPhutballMove FollowedBy(this IPhutballMove left, IPhutballMove right)
 {
     return(new CompositeMove(left, right));
 }
コード例 #14
0
 public PhutballMoveScore(IPhutballMove move, int score)
 {
     Move = move;
     Score = score;
 }
コード例 #15
0
 public PhutballMoveScore(IPhutballMove move, int score)
 {
     Move  = move;
     Score = score;
 }
コード例 #16
0
 public void Undo(IPhutballMove moveToUndo)
 {
 }
コード例 #17
0
ファイル: CompositeMove.cs プロジェクト: wobuzhudao/Phutball
 public void Add(IPhutballMove move)
 {
     _moves.Add(move);
 }
コード例 #18
0
 public void Add(IPhutballMove move)
 {
     _moves.Add(move);
 }
コード例 #19
0
 public JumpNode(IFieldsGraph sourceGraph, IPhutballMove moveToApply)
 {
     ActualGraph   = sourceGraph;
     LastMove      = moveToApply;
     MovesFromRoot = new EmptyPhutballMove();
 }
コード例 #20
0
 public void Perform(IPhutballMove moveToPerform)
 {
 }
コード例 #21
0
 public void Perform(IPhutballMove moveToPerform)
 {
 }
コード例 #22
0
 public void Undo(IPhutballMove moveToUndo)
 {
 }
コード例 #23
0
ファイル: JumpNode.cs プロジェクト: wobuzhudao/Phutball
 public JumpNode(IFieldsGraph sourceGraph, IPhutballMove moveToApply)
 {
     ActualGraph = sourceGraph;
     LastMove = moveToApply;
     MovesFromRoot = new EmptyPhutballMove();
 }
コード例 #24
0
 public PhutballMoveScore FollowedBy(IPhutballMove phutballMove)
 {
     return new PhutballMoveScore(Move.FollowedBy(phutballMove), Score);
 }
コード例 #25
0
 public static IPhutballMove FollowedBy(this IPhutballMove left, IPhutballMove right)
 {
     return new CompositeMove(left, right);
 }
コード例 #26
0
 public PhutballMoveScore FollowedBy(IPhutballMove phutballMove)
 {
     return(new PhutballMoveScore(Move.FollowedBy(phutballMove), Score));
 }