Java - Tengo que hacer este trabajo y no se por donde empezar

   
Vista:

Tengo que hacer este trabajo y no se por donde empezar

Publicado por Willy (1 intervención) el 15/01/2018 17:04:55
Hola buenas:

Tengo que entregar un trabajo junto a un compañero esta semana en el que entregue un programa con el que se pueda jugar un n en raya.
Nos han dado la clase tablero y otra testtablero pero no sabemos por donde empezar, alguien nos podría orientar?
Lo que hemos dado durante en el curso para mi idea es inferior al nivel de este programa por eso nos encontramos un poco perdidos a la hora de elaborar el programa.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
TestTablero->
import javax.swing.JFrame;
 
public class testTablero {
 
	public static void main(String[] args) {
		Tablero t = new Tablero();
 
		JFrame app = new JFrame("Tablero");
 
		app.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
		app.setBounds(0, 0, 440, 470);
		app.add(t);
		app.setVisible(true);
	}
}
Tablero->
import java.awt.Color;
import java.awt.Graphics;
import java.awt.event.MouseAdapter;
import java.awt.event.MouseEvent;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
 
public class Tablero extends JPanel  {
 
	//Aquí irían los atributos necesarios
 
	//Constructores
	Tablero() {
		//Podría haber constructores con parámetros que 
		//inicializarán los atributos oportunos
 
		// Añadimos el 'escuchador' de ratón
		addMouseListener(new MouseHandler());
	}
 
	//Métodos de la clase que implementan el juego: básicamente poner piezas
	//en el tablero y determinar si un jugador ha ganado o si la partida 
	//ha acabado o va a acabar en tablas
 
	//Método paint
	public void paintComponent(Graphics g) {
		super.paintComponent(g);
 
		//Aquí iría el código para pintar el estado del tablero
 
	}
 
	//Clase privada para capturar los eventos del ratón
	private class MouseHandler extends MouseAdapter {
		public void mouseClicked (MouseEvent e) {
			//Mostramos un diálogo con la posición del ratón 
			//para ver un ejemplo de cómo se obtienen las coordenadas
			//donde se produjo el click
			JOptionPane.showMessageDialog(null, String.format("Ratón %d,%d \n",e.getX(),e.getY()));
 
			//Aquí irían las instrucciones para comprobar si el 
			//click del ratón se produjo en una posición correcta
 
			//Después habría que solicitar la dirección
 
			//Se pueden llamar a los métodos públicos de la clase Tablero
 
			//Seguramente habrá que repintar el tablero si se realizó
			//una jugada válida
			repaint();
		}
	}
}



Gracias de antemano
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder

Tengo que hacer este trabajo y no se por donde empezar

Publicado por preguntas (65 intervenciones) el 15/01/2018 23:52:41
Pues...

Empieza por dibujar el tablero de 3 x 3.

Quizás una manera sencilla seria completarlos con 9 botones que al pulsarlos se desactiven para evitar que un jugador presione "una casilla ya marcada".

Define cuales son los movimientos que hacen ganar a un jugador y almacenalos en un arreglo.

Guarda los movimientos de cada jugador tambien en arreglos. en cada jugada o cada 3 movimientos (ya que no creo que hayan más por cada jugador), valida si los movimientos de algún jugador coincide con los movimientos que hacen ganar a un jugador y BUUM BITCH!! ese jugador ya ganó.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar