Tecnología

Inicio

La programación de juegos con Java

La programación de juegos con Java


Java es una multiplataforma, lenguaje de programación orientado a objetos desarrollado por Sun Microsystems. La creación de juegos en Java puede ser un mucho más sencilla de crear juegos en lenguajes como C ++, debido a las ventajas de la librería Swing que viene como parte de la API de Java. En muy poco tiempo, puede hacer que un juego de trabajo en ejecución tic-tac-dedo del pie en Java.

Instrucciones

1 Crear una clase llamada TicTacToeGame. Si está utilizando un entorno de desarrollo Java, tales como Netbeans, habrá una opción en el menú Archivo para esto. De lo contrario, basta con crear un archivo de texto y el nombre de \ "TicTacToeGame.java. \"

2 Pegue el siguiente código dentro del archivo:

importación java.awt.GridLayout
IR
importación java.awt.event.ActionEvent
IR
importación java.awt.event.ActionListener
IR
importación java.util.ArrayList
IR
importación javax.swing.JButton
IR
importación javax.swing.JFrame
IR
importación javax.swing.JOptionPane
IR

TicTacToeGame clase pública se extiende JFrame implementa ActionListener {

ArrayList<JButton> squares = new ArrayList<JButton>()

IR

String player = \"X\"

IR

public TicTacToeGame() { }

checkWinner public void () {}

public void actionPerformed (ActionEvent e) {}

principales argumentos (String []) {public static void

nueva TicTacToeGame ()
IR
}
}

3 Construir el constructor. Este es el método con el mismo nombre que la clase en sí, en este caso, \ "TicTacToeGame (). \" Se llama al constructor, ya que se utiliza para generar el programa y prepararlo para ser ejecutado. Pegue el siguiente código para construirlo:

public TicTacToeGame() {
// Setup a JFrame window.
super()

IR

// Utilizar un diseño de cuadrícula, con tres columnas y tres filas, ya que esta es TicTacToe,

this.setLayout(new GridLayout(3,3))

IR

// Llene cada espacio en la red con un botón.

for (int x = 0; x < 9; x++) {
JButton temp = new JButton(\"-\")

IR

squares.add(temp)

IR

temp.addActionListener(this)

IR

this.add(temp)

IR

}

// Cambiar el tamaño de la ventana para hacer que todo encaje,
// Y hacer que la interfaz de usuario visible.

this.pack()

IR

this.setVisible(true)

IR

this.setDefaultCloseOperation(this.EXIT_ON_CLOSE)

IR

}

4 Crear el método \ "actionPerformed \". Este método se llama cuando el usuario hace algo dentro de su aplicación. Se le proporciona una \ "ActionEvent \" objeto, y se puede inspeccionar este objeto para averiguar lo que hizo el usuario, y reaccionar en consecuencia. Pegar en el código:

public void actionPerformed(ActionEvent e) {
// For all the buttons in the game grid.
for (JButton square : squares) {
// If the button clicked was the source of the event.
if (square.equals(e.getSource())) {
// Set the button to the player's letter, X or O.
square.setText(player)

IR

// Change to the next player's turn.
if (player.equals(\"X\")) player = \"O\"

IR

else player = \"X\"

IR

}

}

// Cheque para ver si alguien ha ganado.

checkWinner()

IR

}

5 Crear el \ método "checkWinner \" pegando el siguiente código:

checkWinner public void () {

// Obtener el contenido de la placa.

String[] board = new String[9]

IR

// Establecer el ganador al espacio en blanco, \ "- \".

String winner = \"-\"

IR

for (int x = 0; x < 9; x++) {
board[x] = squares.get(x).getText()

IR

System.out.println(x + \": \" + board[x])

IR

}

// Comprobar si la fila superior está llena de la misma letra.
// Si es así, entonces ese jugador ha ganado.
si (la junta [0] .equals (tablero [1]) & amp; & amp; placa [0] .equals (tablero [2])) {
ganador del tablero = [0]

IR

} else
// Middle Row
if (board[3].equals(board[4]) && board[3].equals(board[5])) {
winner = board[3]

IR

} else
// Bottom row
if (board[6].equals(board[7]) && board[6].equals(board[8])) {
winner = board[6]

IR

} else
// Left column
if (board[0].equals(board[3]) && board[0].equals(board[6])) {
winner = board[0]

IR

} else
// Middle column
if (board[1].equals(board[4]) && board[1].equals(board[7])) {
winner = board[1]

IR

} else
// Right column
if (board[2].equals(board[5]) && board[6].equals(board[8])) {
winner = board[2]

IR

} else
// Top-Left, Middle, Bottom Right Diagonal
if (board[0].equals(board[4]) && board[0].equals(board[8])) {
winner = board[0]

IR

} else
// Top-Right, Middle, Bottom Left Diagonal
if (board[2].equals(board[4]) && board[2].equals(board[6])) {
winner = board[2]

IR

}

// Si el ganador no es el espacio en blanco \ "-, \"
// Entonces alguien ha ganado. felicitarlos
// Y terminar el juego.

if (!winner.equals(\"-\")) {
JOptionPane.showMessageDialog(rootPane, \"The winner is \" + winner)

IR

System.exit(0)

IR

}

}

Consejos y advertencias

  • Si usted quiere que su juego de Java para funcionar en un navegador, simplemente elimine la función principal y tienen la clase TicTacToeGame extender ese Java \ clase "applet \" en lugar de \ "JFrame. \"
  • Recuerde comparar siempre cadenas en Java con el "es igual a \. ()" Método y no \ con el operador \ "== \".