How to Program spill og Java

How to Program spill og Java


Java er en multiplattform, objektorientert programmeringsspråk laget av Sun Microsystems. Opprette spill på Java kan være mye enklere enn å lage spill på språk som C ++ på grunn av fordelene med Swing biblioteket som kommer som en del av Java API. I svært liten tid, kan du ha en fungerende tic-tac-toe spillet kjører i Java.

Bruksanvisning

1 Lag en klasse kalt TicTacToeGame. Hvis du bruker en Java utviklingsmiljø som NetBeans, vil det være et alternativ i Fil-menyen for dette. Ellers bare lage en tekstfil og gi den navnet \ "TicTacToeGame.java. \"

2 Lim inn følgende kode i filen:

import java.awt.GridLayout

import java.awt.event.ActionEvent

import java.awt.event.ActionListener

import java.util.ArrayList

import javax.swing.JButton

import javax.swing.JFrame

import javax.swing.JOptionPane

public class TicTacToeGame utvider JFrame implements Action {

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

String player = \"X\"

public TicTacToeGame() { }

public void checkWinner () {}

public void actionPerformed (Actione e) {}

public static void main (String [] args) {

ny TicTacToeGame ()

}
}

3 Bygg konstruktøren. Dette er metoden med samme navn som klassen selv, i dette tilfellet, \ "TicTacToeGame (). \" Det kalles konstruktøren, fordi den brukes til å bygge programmet og forberede det som skal kjøres. Lim inn følgende kode for å bygge det:

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

// Bruk et rutenett med tre kolonner og tre rader, siden dette er TicTacToe,

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

// Fyll hver plass på startstreken med en knapp.

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

squares.add(temp)

temp.addActionListener(this)

this.add(temp)

}

// Endre størrelsen på vinduet for å gjøre alt passform,
// Og gjøre brukergrensesnittet synlig.

this.pack()

this.setVisible(true)

this.setDefaultCloseOperation(this.EXIT_ON_CLOSE)

}

4 Lag \ "actionPerformed \" metoden. Denne metoden kalles når brukeren gjør noe i programmet. Den gir deg en \ "Actione \" objekt, og du kan inspisere dette objektet for å finne ut hva brukeren gjorde, og reagerer deretter. Lim inn denne koden:

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)

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

else player = \"X\"

}

}

// Sjekk for å se om noen har vunnet.

checkWinner()

}

5 Lag \ "checkWinner \" metoden ved å lime inn følgende kode:

public void checkWinner () {

// Få innholdet i styret.

String[] board = new String[9]

// Sett vinneren til den tomme plassen, \ "-. \"

String winner = \"-\"

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

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

}

// Sjekk om den øverste raden er full av det samme brevet.
// Hvis det er, så det spiller har vunnet.
if (brett [0] .equals (board [1]) & amp; & amp; board [0] .equals (brett [2])) {
Vinneren = board [0]

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

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

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

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

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

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

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

}

// Hvis vinneren ikke er ledig plass \ "- \"
// Så noen har vunnet. gratulere dem
// Og avslutte spillet.

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

System.exit(0)

}

}

Hint

  • Hvis du vil at Java spillet til å kjøre i en nettleser, bare slette den viktigste funksjonen og har TicTacToeGame klassen utvide at Java \ "Applet \" klasse i stedet for \ "JFrame. \"
  • Husk å alltid sammenligne strenger i Java med \ ". Lik () \" metoden og ikke med \ "== \" operatøren.