//Verifica se as cartas do jogador e do oponente são iguais public static void VerificarCartas(GameObject Panel, GameObject OutroPanel) { VerificarPlacaMaeIgual(Panel, OutroPanel); VerificarProcessadorIgual(Panel, OutroPanel); VerificarMemoriaIgual(Panel, OutroPanel); VerificarPlacaDeVideoIgual(Panel, OutroPanel); VerificarDiscoIgual(Panel, OutroPanel); VerificarFonteIgual(Panel, OutroPanel); VerificarGabineteIgual(Panel, OutroPanel); //Impede que o processador e a placa-mãe sejam compatíveis no início do jogo, evitando assim que o jogador tenha todas as cartas compatíveis logo no início do jogo while (Compatibilidade.ProcessadorConectaPlacaMae(Panel) || Compatibilidade.ProcessadorConectaPlacaMae(OutroPanel)) { if (Compatibilidade.ProcessadorConectaPlacaMae(Panel)) { Panel.GetComponentInChildren <DisplayProcessador>().processador = Lista.ListaProcessador[Random.Range(0, Lista.ListaProcessador.Count)]; VerificarProcessadorIgual(Panel, OutroPanel); } else { OutroPanel.GetComponentInChildren <DisplayProcessador>().processador = Lista.ListaProcessador[Random.Range(0, Lista.ListaProcessador.Count)]; VerificarProcessadorIgual(OutroPanel, Panel); } } }
//Avança para o próximo estado baseado no estado e nas condições de jogo atuais public static void ProximoEstado() { //Verifica em qual estado o jogo está no momento if (EstadoAtual == Estados.VezDoJogador) { //Verifica se o jogador venceu o jogo if ((Compatibilidade.ProcessadorConectaPlacaMae(Informacoes.PanelJogador) && Compatibilidade.MemoriaConectaPlacaMae(Informacoes.PanelJogador) && Compatibilidade.GabineteConectaPlacaMae(Informacoes.PanelJogador) && Compatibilidade.PlacaDeVideoConectaPlacaMae(Informacoes.PanelJogador) && Compatibilidade.FonteConectaPlacaDeVideo(Informacoes.PanelJogador))) { //Finaliza o jogo EstadoVitorioso = EstadoAtual; EstadoAtual = Estados.Fim; } else { //Avança para o próximo estado normalmente Rodada++; EstadoAtual = Estados.VezDoOponente; } } else if (EstadoAtual == Estados.VezDoOponente) { //Verifica se o oponente venceu o jogo if ((Compatibilidade.ProcessadorConectaPlacaMae(Informacoes.PanelOponente) && Compatibilidade.MemoriaConectaPlacaMae(Informacoes.PanelOponente) && Compatibilidade.GabineteConectaPlacaMae(Informacoes.PanelOponente) && Compatibilidade.PlacaDeVideoConectaPlacaMae(Informacoes.PanelOponente) && Compatibilidade.FonteConectaPlacaDeVideo(Informacoes.PanelOponente))) { //Finaliza o jogo EstadoVitorioso = EstadoAtual; EstadoAtual = Estados.Fim; } else { //Avança para o próximo estado normalmente Rodada++; EstadoAtual = Estados.VezDoJogador; } } EstadoMudou = true; Manager.PodeInteragir = true; }