Exemplo n.º 1
0
        public StateSequencer(IGameStateUseCase gameStateUseCase, ReadyView readyView, DrawView drawView,
                              AttackView attackView, DamageView damageView, ClearView clearView, FailView failView)
        {
            _states = new List <BaseState>
            {
                readyView,
                drawView,
                attackView,
                damageView,
                clearView,
                failView,
            };

            _disposable  = new CompositeDisposable();
            _tokenSource = new CancellationTokenSource();

            foreach (var state in _states)
            {
                state.InitAsync(_tokenSource.Token).Forget();
            }

            _gameStateUseCase = gameStateUseCase;
            _gameStateUseCase.GameState()
            .Subscribe(gameState =>
            {
                Reset(gameState);
                TickAsync(gameState, _tokenSource.Token).Forget();
            })
            .AddTo(_disposable);
        }
Exemplo n.º 2
0
        private void UpdateBoardDamage()
        {
            var board = new BoardState();

            PlayerDataGrid.ItemsSource   = board.Player.Cards;
            OpponentDataGrid.ItemsSource = board.Opponent.Cards;
            PlayerHeader.Text            = "Player " + board.Player;
            OpponentHeader.Text          = "Opponent " + board.Opponent;
            DamageView.UpdateLayout();
        }
        private void UpdateBoardDamage()
        {
            if (Core.Game.Entities.Count < 67)
            {
                return;
            }
            var board = new BoardState();

            PlayerDataGrid.ItemsSource   = board.Player.Cards;
            OpponentDataGrid.ItemsSource = board.Opponent.Cards;
            PlayerHeader.Text            = "Player " + board.Player;
            OpponentHeader.Text          = "Opponent " + board.Opponent;
            DamageView.UpdateLayout();
        }