public IList <ISimulacaoCallPreFlop> GeraListaGanhosPerdas(int idGrupo) { IList <IMaoBasica> listaMao = MaoBasica.GetTodasMaosPossiveis(); IList <ISimulacaoCallPreFlop> listaSimulacao = new List <ISimulacaoCallPreFlop>(); IJogador banca = new Banca(this.Config); IRetornaProbabilidade retornaProbabilidade = new RecuperarProbabilidade(); Comum.Mesa m = new Comum.Mesa(this.Config); IList <IMaoBasica> novaMao = new List <IMaoBasica>(); //foreach (IMaoBasica mao in listaMao) // if (mao.NumCarta1 > 10) novaMao.Add(mao); //listaMao = novaMao; foreach (IMaoBasica mao in listaMao) { ISimulacaoCallPreFlop simulacao = new SimulacaoCallPreFlop() { IdGrupo = idGrupo, ProbabilidadeMaoInicial = ProbabilidadeMaoInicialContext.GetItem(mao), MaoBasica = mao, QuantidadeJogosSimuladosPretendidos = this.QuantidadeJogosSimuladosPretendidos, StackInicial = this.StackInicial, QuantidadeJogosSimulados = 0, QuantidadeJogosGanhos = 0, QuantidadeJogosPerdidos = 0, QuantidadeJogosEmpatados = 0, RaiseFlop = false, RaiseFlopTurn = false }; IJogador jogador = new JogadorProbabilistico( this.Config, this.GetAcaoProbabilidade(simulacao.ProbabilidadeMaoInicial), retornaProbabilidade, this.StackInicial ); ICroupier croupier = new Croupier(new CroupierConstructParam() { Jogador = jogador, Banca = banca, ConfiguracaoPoker = this.Config } ); simulacao = this.SimulaJogosUmaMao(simulacao, croupier, jogador); SimulacaoCallPreFlopProbabilidadeContext.Persiste(simulacao); Console.WriteLine(mao.NumCarta1 + " " + mao.NumCarta2 + " - " + mao.OffOrSuited); } return(listaSimulacao); }
private bool ExisteSimulacao(Carta c1, Carta c2, uint qtdJogosSimulacao = 500000) { return(this.ExisteSimulacao(MaoBasica.ToMao(c1, c2), qtdJogosSimulacao)); }