public JumpNode FollowedBy(IPhutballMove newMove) { return(new JumpNode(ActualGraph, newMove) { MovesFromRoot = MovesFromRoot.FollowedBy(newMove) }); }
public void PerformAndStore(Func<IPerformMoves> movePerfomer, IPhutballMove move) { var item = MoveHistoryItem.Item(movePerfomer, move); item.Perform(); _done.Add(item); _undone.Clear(); }
public JumpNode FollowedBy(IPhutballMove newMove) { return new JumpNode(ActualGraph, newMove) { MovesFromRoot = MovesFromRoot.FollowedBy(newMove) }; }
public static MoveHistoryItem Item(Func<IPerformMoves> movePerfomer, IPhutballMove move) { return new MoveHistoryItem { Performer = movePerfomer, Move = move }; }
public void PerformAndStore(Func <IPerformMoves> movePerfomer, IPhutballMove move) { var item = MoveHistoryItem.Item(movePerfomer, move); item.Perform(); _done.Add(item); _undone.Clear(); }
public void Undo(IPhutballMove moveToUndo) { moveToUndo.Undo(new PhutballMoveContext(_callbackPerformer) { FieldsUpdater = _fieldsUpdater, SwitchPlayer = _playersState }); }
public void Perform(IPhutballMove moveToPerform) { moveToPerform.Perform(new PhutballMoveContext(_callbackPerformer) { FieldsUpdater = _fieldsUpdater, SwitchPlayer = _playersState }); }
public static MoveHistoryItem Item(Func <IPerformMoves> movePerfomer, IPhutballMove move) { return(new MoveHistoryItem { Performer = movePerfomer, Move = move }); }
public BoardJumpTree(IFieldsGraph actualGraph, IPhutballMove moveToApply, ITree <JumpNode> parent) { Parent = parent; Node = new JumpNode(actualGraph, moveToApply); _jumpersFactory = new JumpersFactory(actualGraph); }
protected override void Because() { _bestMove = Sut.Search(_fieldsGraph).Move; }
public static IPhutballMove FollowedBy(this IPhutballMove left, IPhutballMove right) { return(new CompositeMove(left, right)); }
public PhutballMoveScore(IPhutballMove move, int score) { Move = move; Score = score; }
public void Undo(IPhutballMove moveToUndo) { }
public void Add(IPhutballMove move) { _moves.Add(move); }
public JumpNode(IFieldsGraph sourceGraph, IPhutballMove moveToApply) { ActualGraph = sourceGraph; LastMove = moveToApply; MovesFromRoot = new EmptyPhutballMove(); }
public void Perform(IPhutballMove moveToPerform) { }
public PhutballMoveScore FollowedBy(IPhutballMove phutballMove) { return new PhutballMoveScore(Move.FollowedBy(phutballMove), Score); }
public static IPhutballMove FollowedBy(this IPhutballMove left, IPhutballMove right) { return new CompositeMove(left, right); }
public PhutballMoveScore FollowedBy(IPhutballMove phutballMove) { return(new PhutballMoveScore(Move.FollowedBy(phutballMove), Score)); }