private MovesReplayer GetMovesReplayer(string gameId) { var movesSequenceTranslator = new MoveSequenceTranslator(); var allMoves = movesRepository .GetGameMoves(gameId) .Select(movesSequenceTranslator.TranslateNextMove); var movesReplayer = MovesReplayer.CreateAndReplay(new MovesLog(allMoves)); return(movesReplayer); }
public BoardViewModel(GameService gameService, MovementService movementService, ISubscriptionProvider subscriptionProvider) { this.gameService = gameService; this.movementService = movementService; this.subscriptionProvider = subscriptionProvider; viewPerspective = ChessColor.White; pieceMover = new PieceMover(); movesSequenceTranslator = new MoveSequenceTranslator(); movesReplayer = MovesReplayer.Create(new MovesLog()); turnsTracker = new TurnsTracker(movesReplayer.MovesLog); }