Ir para conteúdo
Fórum Script Brasil
  • 0

JOGO DE DIGITAÇÃO


Edmar Carvalho

Pergunta

Boa tarde pessoal! 

Estou tentando criar um jogo onde as letras apareçam aleatoriamente na tela e o usuário tem que digitar no teclado para as letras irem sumindo e pontuar. 

O problema: Não estou conseguindo fazer as letras desaparecerem. Estou usando um array de String mas, queria utilizar os decimais do 65 ao 90 da tabela ASCII para exibir as letras na tela convertida em String. E após isso, fazer as condições para que as letras sumam assim que foram digitadas no teclado usando KeyEvent.

JÁ CONSEGUI FAZER ALGUMAS COISAS, MAS SEMPRE DÁ ALGUM ERRO. COMO SOU INEXPERIENTE PRECISO DE ORIENTAÇÃO QUANTO A ESSE PROBLEMA AI.

Link para o comentário
Compartilhar em outros sites

1 resposta a esta questão

Posts Recomendados

  • 0
5 horas atrás, Edmar Carvalho disse:

public class Quadro extends javax.swing.JPanel implements Runnable {

    private Thread thread;
    private Letras letra;
    private int y;
    private int x;
    private int DescidaY;
    public String letraSelecionada;

    /**
     * Creates new form Quadro
     */
    public Quadro() {
        initComponents();
        letra = new Letras();
        letra.sortear();
        y = 2;
        x = 200;
        DescidaY = 10;
        thread = new Thread(this);
        thread.start();
    }

    @Override
    public void run() {

        while (true) {
            if (y > this.getHeight()) {
                y = 0;
                x = (int) (Math.random() * (getSize().width) - 50);
            }
            y += DescidaY;

            try {
                Thread.sleep(50);
            } catch (InterruptedException e) {
            }

            repaint();
        }
    }

    @Override
    public void paint(Graphics g) {
        super.paint(g);

        letra.desenhar(g, Color.red, x, y);
    }
    private void formKeyPressed(java.awt.event.KeyEvent evt) {                                
        // TODO add your handling code here:
        switch (evt.getKeyCode()) {
            case KeyEvent.VK_G:
                letra.sortear();
                break;
        }
        repaint();
    }                               
 

public class Letras {

    private Color cor;
    String[] letras = {"A", "B", "C", "D", "E", "F",
        "G", "H", "I", "J", "K", "L", "M", "N", "O", "P",
        "Q", "R", "S", "T", "Y", "U", "V", "X", "W", "Z"};
    String letraSelecionada;

    public void sortear() {
        letraSelecionada = letras[new Random().nextInt(letras.length)];
    }

    public void desenhar(Graphics g, Color c, int a, int l) {
        cor = c;

        g.setColor(cor);
        g.setFont(new Font("serif", Font.BOLD, 50));
        g.drawString(letraSelecionada, a, l);

    }
}
 

Editado por Edmar Carvalho
Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,2k
    • Posts
      651,9k
×
×
  • Criar Novo...