Tecnología

Inicio

Cómo hacer un juego usando el software de Java

El lenguaje de programación Java puede ser utilizado para desarrollar aplicaciones complejas que incluyen bases de datos, sonidos y vídeo. Pero, también se puede utilizar para desarrollar juegos simples, incluyendo rompecabezas de la palabra. Una buena manera de aprender cómo hacer un juego en Java es copiar, compilar y ejecutar una existente, como por ejemplo el que le sigue.

Instrucciones

1 Descargar e instalar el Java Development Kit (JDK) de java.sun.com. A continuación, introduzca el código de programa que crea el juego: abrir el Bloc de notas (Inicio> \ "Bloc de notas \") e introduzca el siguiente código fuente de Java, que gestiona el juego. Asegúrese de introducir los caracteres correctos de cada letra. Guarde el archivo de origen con el nombre de archivo theGame.java.

importación java.io. *
IR

public class TheGame
{

public theGame()

{

}

void Main (args String []) public static
{

cadena strGuess
IR

gameJudge qm = new gameJudge ()
IR

qm.pickWord()

IR
// Consola abierta para la entrada
Consola c = System.Console ()
IR

if (c == null) {
System.err.println(\"No console.\")

IR

System.exit(1)

IR

}

while (! qm.gameEnded ()) {

qm.displayWord()

IR

System.out.format(\"You have %d attempts remaining.\\n\", qm.getRemainingGuesses() );
strGuess = c.readLine(\"Enter your guess: \")

IR

qm.judgeGuess(strGuess);
}// end main loop

si (qm.blnWin ()) {
System.out.format (\ & quot;!. ¡Has ganado Le tomó% d intentos \\ n \ & quot ;, qm.nGuessesNeeded ())

IR

System.out.format( qm.getWord())

IR

}// if player won
else {
System.out.format(\"You lost. The word was %s\\n\", qm.getWord())

IR

}// if player won
}//end of main

}

2 Escriba o introduzca el código fuente que representa a la persona que toma la palabra al azar. Para ello, en un nuevo archivo de Bloc de notas llamado gameJudge.java. Guarde este archivo en la misma carpeta que theGame.java.

importar java.util. *
IR

gameJudge clase pública

{

private final int MAX_GUESSES = 8

IR

private String wordList[]= {\"dog\", \"house\", \"element\", \"mother\", \"earth\" }

IR

private String goalWord

IR

private int nGuessesLeft

IR

private wordDisplay gb

IR

public gameJudge()
{
nGuessesLeft = MAX_GUESSES

IR
regreso
IR

}
public void pickWord()
{
Random obRand = new Random()

IR
int i = obRand.nextInt (wordList.length);

goalWord = wordList[i]

IR
gb = new wordDisplay (goalWord)
IR

}
public boolean gameEnded() {
if (gb.blnMatch()) return true

IR

if (nGuessesLeft ==0) return true; else return false

IR

}

blnWin public boolean () {
retorno (gb.blnMatch ())

IR

}//player won

getRemainingGuesses public int () {
volver nGuessesLeft

IR

}

Cadena Getword pública () {
volver goalWord

IR

}

displayWord public void () {
gb.showWord ()

IR

}

public int nGuessesNeeded () {
MAX_GUESSES volver - nGuessesLeft

IR

}

pública judgeGuess vacío (String strGuess) {
nGuessesLeft - = 1

IR

gb.exposeLetters(strGuess)

IR

}

} // Fin de la clase gameJudge

3 Introduce el código fuente que muestra las letras de la palabra de destino. Guarde este archivo con los demás y lo llaman wordDisplay.java:

import java.io. *;

wordDisplay clase pública

{

private String strDisplay

IR

private String strGoal

IR

private String lettersTried; // the letters player has tried

wordDisplay pública (String str)
{
strGoal = str

IR

strDisplay = new String(str)

IR

lettersTried = new String(\"\")

IR

strDisplay = strDisplay.replaceAll(\".\", \"_\")

IR

return

IR

}

exposeLetters public void (String str)
{
cadena strRE

IR

//If a guess is longer than 1 char, uncover all or no letters

si (str.length () == 1) {
// Concatenar nueva carta con letras ya probado
lettersTried = lettersTried + str

IR

strRE = \"[^\" + lettersTried + \"]\"

IR

// hide all non-matching chars: replace all letters in target that do NOT match pattern with the underscore
strDisplay = strGoal.replaceAll(strRE, \"_\")

IR

}

else {
si (str.compareToIgnoreCase (strGoal) == 0) {

strDisplay = strGoal;
}

}
return

IR

}
public boolean blnMatch() {

volver (strGoal == strDisplay)
IR

}

showWord public void () {

int i
IR
for (i = 0; i <strGoal.length (); i ++) {
System.out.format (\ "% c \", strDisplay.charAt (i))
IR
}
System.out.println (\ "\ n \")
IR

}

}

4 Compilar y ejecutar el programa: seleccione Inicio> \ "cmd \" y usar \ "cd <dir> \" para navegar hasta la carpeta que contiene los archivos de origen .java. El \ "<dir> \" se refiere a ese directorio. Establecer la ruta al compilador de Java: \ "set PATH = C: \ Archivos de programa \ Java \ jdk1.6.0_14 \ bin \". Vuelva a colocar el \ "1.6.0_14 \" con la versión correcta de su compilador, que se puede obtener de la documentación en el JDK que ha descargado.

Introduzca \ "javac * .java \" seguido de \ "java TheGame, \" y luego jugar el juego como este: cuenta el número de espacios en blanco; escriba una letra a la vez hasta que adivinar la palabra; escribir la palabra completa una vez que lo reconozca.

5 Hacer copias de los archivos originales y cambiar el juego. Empezar por cambiar la variable de lista de palabras, y también la constante MAX_GUESSES.