private void OnKeyPressed(object sender, KeyEventArgs e) { Window window = (Window)sender; switch (e.Code) { case Keyboard.Key.Escape: tela = new TelaInicial(); tela.redenrizar(); window.Close(); break; } }
public static void Main(String[] args) { TelaInicial telaInicial = new TelaInicial(); telaInicial.redenrizar(); }
//static void Main(string[] args) public void Partida() { janela.Closed += Janela_Closed; Texture bgTexture = new Texture("Assets/background.jpg"); Sprite bgSprite = new Sprite(bgTexture); Sprite submarinoSprite = new Sprite(tabuleiroPlayer.submarinoTexture); Sprite encouracadoSprite = new Sprite(tabuleiroPlayer.encouracadoTexture); Sprite navioGuerraSprite = new Sprite(tabuleiroPlayer.navioGuerraTexture); Sprite portaAvioesSprite = new Sprite(tabuleiroPlayer.portaAvioesTexture); Font arial = new Font("Font/arial.ttf"); while (janela.IsOpen && jogo) { //loop do setup while (tabuleiroPlayer.getSetup().Equals(true)) { janela.DispatchEvents(); janela.Draw(bgSprite); tabuleiroPlayer.desenharTabuleiroPlayer(janela, 80, 160); tabuleiroPlayer.desenharBarraBarcos(janela, (int)width / 2, 160); changeOrientacao(); janela.Display(); getBarcoPlayer(); //Loop selecionar e posicionar os barcos while (tabuleiroPlayer.getBarco() != -1) { janela.DispatchEvents(); janela.Draw(bgSprite); tabuleiroPlayer.desenharTabuleiroPlayer(janela, 80, 160); tabuleiroPlayer.desenharBarraBarcos(janela, (int)width / 2, 160); changeOrientacao(); if (tabuleiroPlayer.getBarco() == 0) { if (tabuleiroPlayer.getOrientacao().Equals(true)) { submarinoSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X - 20, Mouse.GetPosition().Y - 20); submarinoSprite.Rotation = 0; } if (tabuleiroPlayer.getOrientacao().Equals(false)) { submarinoSprite.Rotation = 90; submarinoSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X + 20, Mouse.GetPosition().Y - 20); } janela.Draw(submarinoSprite); } else if (tabuleiroPlayer.getBarco() == 1) { if (tabuleiroPlayer.getOrientacao().Equals(true)) { encouracadoSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X - 20, Mouse.GetPosition().Y - 20); encouracadoSprite.Rotation = 0; } if (tabuleiroPlayer.getOrientacao().Equals(false)) { encouracadoSprite.Rotation = 90; encouracadoSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X + 20, Mouse.GetPosition().Y - 20); } janela.Draw(encouracadoSprite); } else if (tabuleiroPlayer.getBarco() == 2) { if (tabuleiroPlayer.getOrientacao().Equals(true)) { encouracadoSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X - 20, Mouse.GetPosition().Y - 20); encouracadoSprite.Rotation = 0; } if (tabuleiroPlayer.getOrientacao().Equals(false)) { encouracadoSprite.Rotation = 90; encouracadoSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X + 20, Mouse.GetPosition().Y - 20); } janela.Draw(encouracadoSprite); } else if (tabuleiroPlayer.getBarco() == 3) { if (tabuleiroPlayer.getOrientacao().Equals(true)) { navioGuerraSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X - 20, Mouse.GetPosition().Y - 20); navioGuerraSprite.Rotation = 0; } if (tabuleiroPlayer.getOrientacao().Equals(false)) { navioGuerraSprite.Rotation = 90; navioGuerraSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X + 20, Mouse.GetPosition().Y - 20); } janela.Draw(navioGuerraSprite); } else if (tabuleiroPlayer.getBarco() == 4) { if (tabuleiroPlayer.getOrientacao().Equals(true)) { portaAvioesSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X - 20, Mouse.GetPosition().Y - 20); portaAvioesSprite.Rotation = 0; } if (tabuleiroPlayer.getOrientacao().Equals(false)) { portaAvioesSprite.Rotation = 90; portaAvioesSprite.Position = new SFML.System.Vector2f(Mouse.GetPosition().X + 20, Mouse.GetPosition().Y - 20); } janela.Draw(portaAvioesSprite); } janela.Display(); int linha = getLinhaPlayer(); int coluna = getColunaPlayer(); if (linha >= 0 && linha <= 9 && coluna >= 0 && coluna <= 9) { if (controladorJogo.posicionarBarcosPlayer(getPosicaoBarco(tabuleiroPlayer.getBarco(), tabuleiroPlayer.getOrientacao(), linha, coluna))) { controladorJogo.getBarcosSelecionaveis()[tabuleiroPlayer.getBarco()] -= 1; tabuleiroPlayer.setTabuleiro(controladorJogo.tabPlayer()); } tabuleiroPlayer.setBarco(-1); } if (controladorJogo.getBarcosSelecionaveis()[0] == 0 && controladorJogo.getBarcosSelecionaveis()[1] == 0 && controladorJogo.getBarcosSelecionaveis()[2] == 0 && controladorJogo.getBarcosSelecionaveis()[3] == 0 && controladorJogo.getBarcosSelecionaveis()[4] == 0) { controladorJogo.getIA().posicionarBarcosIA(); tabuleiroIA.setTabuleiro(controladorJogo.tabIa()); tabuleiroPlayer.changeSetup(); } } } janela.DispatchEvents(); janela.Draw(bgSprite); if (jogadaPlayer) { int linhaIa = getLinhaIA(); int colunaIa = getColunaIA(); if (linhaIa >= 0 && linhaIa <= 9 && colunaIa >= 0 && colunaIa <= 9) { bool jogada = controladorJogo.jogarPlayer(colunaIa, linhaIa); if (jogada) { tabuleiroIA.setTabuleiro(controladorJogo.tabIa()); } else { tabuleiroIA.setTabuleiro(controladorJogo.tabIa()); jogadaCPU = true; jogadaPlayer = false; } if (controladorJogo.countBarcosIA() == 0) { vencedor = "Player"; jogo = false; } } } else if (jogadaCPU) { bool jogada = controladorJogo.jogarIA(); if (jogada) { tabuleiroPlayer.setTabuleiro(controladorJogo.tabPlayer()); } else { tabuleiroPlayer.setTabuleiro(controladorJogo.tabPlayer()); jogadaPlayer = true; jogadaCPU = false; } if (controladorJogo.countBarcosPlayer() == 0) { vencedor = "Computador"; jogo = false; } } tabuleiroPlayer.desenharTabuleiroPlayer(janela, 80, 160); tabuleiroIA.desenharTabuleiroIA(janela, (int)width / 2 + 80, 160); janela.Display(); } for (int x = 0; x < 1000; x++) { Text fimDeJogo; janela.DispatchEvents(); janela.Draw(bgSprite); if (vencedor.Equals("Player")) { fimDeJogo = new Text("O Vencedor Foi: " + vencedor + "\n\n Voltando Para Tela Inicial!", arial); fimDeJogo.Position = new SFML.System.Vector2f((int)width / 2 - 250, (int)height - 200); fimDeJogo.Color = Color.Magenta; } else { fimDeJogo = new Text("O Vencedor Foi: " + vencedor + "\n\n Voltando Para Tela Inicial!", arial); fimDeJogo.Position = new SFML.System.Vector2f((int)width / 2 - 250, (int)height - 200); fimDeJogo.Color = Color.Black; } tabuleiroPlayer.desenharTabuleiroPlayer(janela, 80, 160); tabuleiroIA.desenharTabuleiroIA(janela, (int)width / 2 + 80, 160); janela.Draw(fimDeJogo); janela.Display(); } telaInicial = new TelaInicial(); telaInicial.redenrizar(); janela.Close(); }