/** * Constructor del juego que inicializa los valores. * * @param juga * @param jugadorActual */ public Juego(ArrayList<Jugador> juga, Jugador jugadorActual) { jugadores = new ArrayList<>(); this.jugadores = juga; this.jugador = jugadorActual; loader = Juego.class.getClassLoader(); utilidades = new Util(); claseTime = new Time(); ventana = new JFrame("Concéntrese - Juan S."); ventana.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); ventana.setSize(520, 475); ventana.setLayout(null); ventana.setResizable(false); contadorJugadas = 0; cartaPorDefecto = new ImageIcon(loader.getResource("recursos/carta8.gif")); panel = new JPanel(); panel.setSize(300, 450); panel.setLayout(new GridLayout(4, 4)); intentos = new JLabel("Intento : 0"); etiquetaTiempoPartida = new JLabel("Tiempo: "); tiempoPartida = new JLabel("00.00.000"); etiquetaTiempoPartida.setFont(etiquetaTiempoPartida.getFont().deriveFont(20.0f)); tiempoPartida.setFont(tiempoPartida.getFont().deriveFont(20.0f)); intentos.setFont(intentos.getFont().deriveFont(20.0f)); intentos.setBounds(320, 50, 200, 30); tiempoPartida.setBounds(420, 5, 200, 30); etiquetaTiempoPartida.setBounds(320, 5, 200, 30); ventana.add(tiempoPartida); ventana.add(etiquetaTiempoPartida); ventana.add(intentos); ventana.add(panel); crearMenuSuperior(); crearMatrizIconos(); crearArrayBotones(); crearTemporizador(); ventana.setLocationRelativeTo(null); ventana.setVisible(true); }
/** * Este método sirve para verificar la partida del jugador y mostrar un mensaje de confirmación. */ private void partidaTerminada() { verificarPartida(); // este metodo comprueba si la partida actual del jugador es mejor que las // anteriores. String opcion; do { opcion = JOptionPane.showInputDialog( "¡Partida Finalizada!\nIngrese 1 para volver a iniciar una partida.\nIngrese 2 para ir al menú principal."); } while (opcion == null || !opcion.equals("1") && !opcion.equals("2")); switch (opcion) { case "1": // en caso de que sea uno se resetea todo el juego. resetearJuego(); break; case "2": // en caso de que sea dos se regresa al menú principal. ventana.dispose(); MainInterface main = new MainInterface(jugadores); main.setVisible(true); break; } }
/** Este método crea un menú superior que esconde algunas opciones importantes. */ private void crearMenuSuperior() { barraDeMenu = new JMenuBar(); JMenu menuPrincipal = new JMenu("Opciones"); JMenuItem destaparCartas = new JMenuItem("Destapar cartas"); JMenuItem resetear = new JMenuItem("Volver a empezar"); JMenuItem salirJuego = new JMenuItem("Salir"); destaparCartas.addActionListener(this); resetear.addActionListener(this); salirJuego.addActionListener(this); menuPrincipal.add(destaparCartas); menuPrincipal.add(resetear); menuPrincipal.addSeparator(); menuPrincipal.addSeparator(); menuPrincipal.add(salirJuego); barraDeMenu.add(menuPrincipal); ventana.setJMenuBar(barraDeMenu); }