public GameRuleStrategyBase SetNext(GameRuleStrategyBase rule) { this.next = rule; return rule; }
private IList<IGameMove> CallGetStrategyValidMoves(GameRuleStrategyBase strategy, IGameBoard board, ITurn turn, IGameRuleStrategyContext context) { return strategy.GetStrategyAvailableMoves(board, turn, context) .Cast<IGameMove>() .ToList(); }