Ir ao conteúdo

Posts recomendados

Postado

olá pessoal , gostaria de usar o console externo igual aquele da linguagem c , para mostrar a saída desse código de um jogo de "centopéia"  ,  pois no console do netBeans o resultado não ficou bom não , também não sei se isso é possível , já tentei nas configurações e não deu nenhum resultado e até instalei o "CygWin" mas não funcionou e nem mostrou nada nesse terminal do cygwin , agradeço quem puder ajudar , 

aqui o código desse jogo teste :

package centopeia_007;
import java.util.Scanner;
import java.util.Random;

/**
 *
 * @author Devair
 */
public class CentopEia_007 {

    static int largura = 20;
    static int altura = 10;
    static int[] cabeça = {altura / 2, largura / 2};
    static int[][] corpo = new int[100][2];
    static int tamanho = 1;
    static int[] comida = {0, 0};
    static boolean jogoAtivo = true;

    public static void main(String[] args) {
        Scanner scanner = new Scanner(System.in);
        Random random = new Random();

        gerarComida(random);

        while (jogoAtivo) {
            desenhar();
            System.out.print("Movimento (W/A/S/D): ");
            String movimento = scanner.nextLine().toUpperCase();

            mover(movimento);
            verificarColisao();
        }

        System.out.println("Fim de jogo! Sua pontuação foi: " + (tamanho - 1));
        scanner.close();
    }

    static void desenhar() {
        for (int i = 0; i < altura; i++) {
            for (int j = 0; j < largura; j++) {
                if (i == cabeça[0] && j == cabeça[1]) {
                    System.out.print("O"); // Cabeça da cobra
                } else if (i == comida[0] && j == comida[1]) {
                    System.out.print("X"); // Comida
                } else if (parteDoCorpo(i, j)) {
                    System.out.print("o"); // Corpo da cobra
                } else {
                    System.out.print("."); // Espaço vazio
                }
            }
            System.out.println();
        }
    }

    static boolean parteDoCorpo(int x, int y) {
        for (int i = 0; i < tamanho - 1; i++) {
            if (corpo[i][0] == x && corpo[i][1] == y) {
                return true;
            }
        }
        return false;
    }

    static void mover(String direcao) {
        for (int i = tamanho - 1; i > 0; i--) {
            corpo[i][0] = corpo[i - 1][0];
            corpo[i][1] = corpo[i - 1][1];
        }
        corpo[0][0] = cabeça[0];
        corpo[0][1] = cabeça[1];

        switch (direcao) {
            case "W": cabeça[0]--; break; // Cima
            case "S": cabeça[0]++; break; // Baixo
            case "A": cabeça[1]--; break; // Esquerda
            case "D": cabeça[1]++; break; // Direita
            default: System.out.println("Movimento inválido!");
        }
    }

    static void verificarColisao() {
        // Colisão com as bordas
        if (cabeça[0] < 0 || cabeça[0] >= altura || cabeça[1] < 0 || cabeça[1] >= largura) {
            jogoAtivo = false;
        }

        // Colisão com o próprio corpo
        if (parteDoCorpo(cabeça[0], cabeça[1])) {
            jogoAtivo = false;
        }

        // Comer a comida
        if (cabeça[0] == comida[0] && cabeça[1] == comida[1]) {
            tamanho++;
            gerarComida(new Random());
        }
    }

    static void gerarComida(Random random) {
        comida[0] = random.nextInt(altura);
        comida[1] = random.nextInt(largura);
    }
}

 

Crie uma conta ou entre para comentar

Você precisa ser um usuário para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar agora

Sobre o Clube do Hardware

No ar desde 1996, o Clube do Hardware é uma das maiores, mais antigas e mais respeitadas comunidades sobre tecnologia do Brasil. Leia mais

Direitos autorais

Não permitimos a cópia ou reprodução do conteúdo do nosso site, fórum, newsletters e redes sociais, mesmo citando-se a fonte. Leia mais

×
×
  • Criar novo...

LANÇAMENTO!

eletronica2025-popup.jpg


CLIQUE AQUI E BAIXE AGORA MESMO!