Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

educolider

similar jogo genius

Recommended Posts

bom dia amigos sou iniciante de java estou com um trabalho que esta me tirando o sono se possivel quero uma ajuda

o trab. é fazer um jogo semelhante ao genius e armazenar em uma fila a pontuaçao do jogador, mas nao consigo dar funcionalidade nos botoes, e fazer com que ele sorteia um botão para iniciar o jogo, se alguem puder me ajudar fico agradecido.

 

import java.awt.*;
import java.awt.event.ActionListener;
import java.awt.event.ActionEvent;
import java.util.LinkedList;
import java.util.Random;
import java.util.List;

import javax.swing.*;

public class Botao extends JButton implements ActionListener {
	LinkedList <Integer> lista=new LinkedList<Integer>();
	//lista.addList(Randon.system    );
	
	private Color corpres, red;
	private Color corlivre, blue;
	private int tempo;
	private int nome;
	private boolean acao;

	public Botao(Color corpres, Color corlivre, int tempo, int x, int y,
			int larg, int alt, int nome) {
		this.corpres = corpres;
		this.corlivre = corlivre;
		this.tempo = tempo;
		this.nome = nome;
		this.acao = false;

		setBounds(x, y, larg, alt);
		setBackground(corlivre);
		addActionListener(this);
		
	}

	public void setacao(boolean acao) {
		this.acao = acao;
	}

	public boolean getacao() {
		return acao;
	}

	public void actionPerformed(ActionEvent e) {
		try {
			acao=true;
			Thread.sleep(tempo);
		} catch (Exception e1) {
		}

	}
}

-----------------------------

import java.util.Random;
import java.util.*;
import java.util.Queue;
import java.awt.*; 
import java.awt.event.*; 
import javax.swing.*; 
public class Jogo extends JFrame   
{     
	
	JLabel l;
	JButton b;
	JTextField t;
	Botao []botoes;
	
	
    public Jogo(){ 
    	super("Genius");
    	botoes = new Botao[4];
    	setBounds(280,150,400,400);
        setLayout(null);   
        setDefaultCloseOperation(EXIT_ON_CLOSE);
        Container cp = getContentPane();
        botoes[0]= new Botao(Color.red,Color.blue,500,100,100,80,80,0);
        botoes[1]= new Botao(Color.gray,Color.green,500,190,100,80,80,1);
        botoes[2]= new Botao(Color.black,Color.red,500,100,200,80,80,2);
        botoes[3]= new Botao(Color.DARK_GRAY,Color.yellow,500,190,200,80,80,3);
	cp.add(botoes[0]);
	cp.add(botoes[1]);
	cp.add(botoes[2]);
	cp.add(botoes[3]);
	
	t = new JTextField();
	t.setBounds(160,300,50,25);
	cp.add(t);
	

	l=new JLabel ("Placar");
	l.setBounds(110,300,80,25);
	cp.add(l);
	
	b= new JButton ("Jogar");
	b.setBounds(150,20,80,25);
	cp.add(B);
    } 
   
    public int verifica()
    {
    	for(int x=0; x<4;  x ++)	
    	if(botoes[x].getacao())
    	{
    		botoes[x].setacao(false);
    		return x;
    	}
    	return -1;
    }
    
    public static Botao sortear()
    {
        Random random = new Random(4);
        int indice = random.nextInt();
        return sortear();
    }
}

------------------------------------

 

public class Main {

	
	public static void main(String[] args) {
		Jogo j = new Jogo();
		j.setVisible(true);
		while (true)
		{ 
			int x=j.verifica();
			if(x>=0)
				System.out.println(x);
	}
	
	}}

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha eu não entendi o que você quis fazer com essa parte do código , principalmente na linha de return. :huh:

 


public static Botao sortear()
    {
        Random random = new Random(4);
        int indice = random.nextInt();
        return sortear();
    }

Parece que você ta com dificuldade na lógica do problema, então vejamos, qual seria um meio de resolver seu problema ?

1º Você criaria um array de botões

2º sortear um desses botões

3º colocar o índice do botão em um array

4º colocar as escolhas de botões do jogador em outro array

5º comparar os dois arrays a cada jogada

6º no final caso seja verdadeiro : mostrar pontuação e sortear outro botão

7º caso seja falso : finalizar jogo

 

Não é muito , mais espero que isso te ajude a dar uma luz, não sei.

Obrigado!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Olha eu não entendi o que você quis fazer com essa parte do código , principalmente na linha de return. :huh:

 


public static Botao sortear()
    {
        Random random = new Random(4);
        int indice = random.nextInt();
        return sortear();
    }

Parece que você ta com dificuldade na lógica do problema, então vejamos, qual seria um meio de resolver seu problema ?

1º Você criaria um array de botões

2º sortear um desses botões

3º colocar o índice do botão em um array

4º colocar as escolhas de botões do jogador em outro array

5º comparar os dois arrays a cada jogada

6º no final caso seja verdadeiro : mostrar pontuação e sortear outro botão

7º caso seja falso : finalizar jogo

 

Não é muito , mais espero que isso te ajude a dar uma luz, não sei.

Obrigado!

 

Olha eu não entendi o que você quis fazer com essa parte do código , principalmente na linha de return. :huh:

 


public static Botao sortear()
    {
        Random random = new Random(4);
        int indice = random.nextInt();
        return sortear();
    }

Parece que você ta com dificuldade na lógica do problema, então vejamos, qual seria um meio de resolver seu problema ?

1º Você criaria um array de botões

2º sortear um desses botões

3º colocar o índice do botão em um array

4º colocar as escolhas de botões do jogador em outro array

5º comparar os dois arrays a cada jogada

6º no final caso seja verdadeiro : mostrar pontuação e sortear outro botão

7º caso seja falso : finalizar jogo

 

Não é muito , mais espero que isso te ajude a dar uma luz, não sei.

Obrigado!

 

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.