static void Main(string[] args) { Jogo jogo = Read.Ler(); Console.WriteLine(jogo.Nome); Console.WriteLine(jogo.DescricaoInicial); Sala sala = Jogo.GetKey(jogo, 1); int tentativa = 8; Boolean b; sala.ImprimirSala(); string comando = ""; while (tentativa > 0) { comando = Console.ReadLine(); b = false; if (comando.Equals("sair")) { Environment.Exit(0); } foreach (Opcao op in jogo.Map[sala]) { if (op.Nome.Equals(comando)) { if (sala.Id.Equals(jogo.Tam - 1)) { tentativa = 9; Console.Clear(); } sala = op.Destino; b = true; } } if (!b) { Console.WriteLine("comando invalido"); tentativa++; } tentativa--; if (tentativa == 0) { sala = Jogo.GetKey(jogo, jogo.Tam); tentativa = 9; Console.Clear(); } sala.ImprimirSala(); } //Console.ReadLine(); }
//funcao que preenche o hashmap com suas keys e values public void Preenche(Jogo jogo, Sala sala, List <Opcao> adj) { Sala s = Jogo.GetKey(jogo, sala.Id); s.Nome = sala.Nome; s.Descricao = sala.Descricao; s.Opcoes = sala.Opcoes; foreach (Opcao o in adj) { Sala destino = Jogo.GetKey(jogo, o.Destino.Id); if (destino == null) { jogo.InsereAdjascencia(jogo, s, o); } else { Opcao aux = new Opcao(o.Nome, destino); jogo.InsereAdjascencia(jogo, s, aux); } } }