Exemple #1
0
        private void AdicionaPagarAluguel(IPlayerGameState playerState, Jogada jogada)
        {
            var propriedade = _gameState.Propriedades[playerState.PosiçãoAtual];

            if (propriedade.TemDono && propriedade.Dono != playerState.Player)
            {
                jogada.AçõesPossíveis.Add(Ação.PagarAluguel);
            }
        }
Exemple #2
0
        private void AdicionaComprar(IPlayerGameState playerState, Jogada jogada)
        {
            var propriedade = _gameState.Propriedades[playerState.PosiçãoAtual];

            if (!propriedade.TemDono && propriedade.ValorDeVenda <= playerState.Carteira.Coins)
            {
                jogada.AçõesPossíveis.Add(Ação.Comprar);
            }
        }
Exemple #3
0
        private void AdicionaPassar(IPlayerGameState playerState, Jogada jogada)
        {
            var propriedade = _gameState.Propriedades[playerState.PosiçãoAtual];

            if ((propriedade.TemDono && propriedade.Dono == playerState.Player) ||
                !propriedade.TemDono)
            {
                jogada.AçõesPossíveis.Add(Ação.Passar);
            }
        }
Exemple #4
0
        private IJogada CriarJogada(IPlayerGameState playerState, int dado)
        {
            var jogada = new Jogada()
            {
                Dado           = dado,
                Propriedade    = _gameState.Propriedades[playerState.PosiçãoAtual],
                Saldo          = playerState.Carteira.Coins,
                AçõesPossíveis = new List <Ação>()
            };
            var propriedade = _gameState.Propriedades[playerState.PosiçãoAtual];

            AdicionaPassar(playerState, jogada);
            AdicionaComprar(playerState, jogada);
            AdicionaPagarAluguel(playerState, jogada);
            return(jogada);
        }