Come fare un gioco con software Java

October 12

Il linguaggio di programmazione Java può essere utilizzato per sviluppare applicazioni complesse che coinvolgono banche dati, suoni e video. Ma, può anche essere usato per sviluppare giochi semplici, incluse puzzle di parola. Un buon modo per imparare a fare un gioco in Java è quello di copiare, compilare ed eseguire uno esistente, come quella che segue.

istruzione

1 Scaricare e installare il Java Development Kit (JDK) da java.sun.com. Quindi, inserire il codice di programma che crea il gioco: aprire il Blocco note (Start> \ "Notepad \") e inserire il seguente codice sorgente di Java, che gestisce il gioco. Assicurati di inserire la corretta caso di ogni lettera. Salvare il file di origine con il nome del file theGame.java.

import java.io. *
ANDARE

public class thegame
{

public theGame()

{

}

void main (String args []) public static
{

String strGuess
ANDARE

gameJudge mq = new gameJudge ()
ANDARE

qm.pickWord()

ANDARE
// Aprire la console per l'ingresso
Console c = System.Console ()
ANDARE

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

ANDARE

System.exit(1)

ANDARE

}

while (! qm.gameEnded ()) {

qm.displayWord()

ANDARE

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

ANDARE

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

if (qm.blnWin ()) {
System.out.format (\ & quot;!. È lo ha vinto si sono voluti% d tentativi \\ n \ & quot ;, qm.nGuessesNeeded ())

ANDARE

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

ANDARE

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

ANDARE

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

}

2 Digitare o inserire il codice sorgente che rappresenta la persona che prende la parola casuale. Fate questo in un nuovo file di blocco note chiamato gameJudge.java. Salvare il file nella stessa cartella come theGame.java.

import java.util. *
ANDARE

public class gameJudge

{

private final int MAX_GUESSES = 8

ANDARE

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

ANDARE

private String goalWord

ANDARE

private int nGuessesLeft

ANDARE

private wordDisplay gb

ANDARE

public gameJudge()
{
nGuessesLeft = MAX_GUESSES

ANDARE
ritorno
ANDARE

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

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

goalWord = wordList[i]

ANDARE
GB = new wordDisplay (goalWord)
ANDARE

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

ANDARE

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

ANDARE

}

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

ANDARE

}//player won

getRemainingGuesses public int () {
tornare nGuessesLeft

ANDARE

}

public String getword () {
tornare goalWord

ANDARE

}

public void displayWord () {
gb.showWord ()

ANDARE

}

public int nGuessesNeeded () {
tornare MAX_GUESSES - nGuessesLeft

ANDARE

}

judgeGuess public void (String strGuess) {
nGuessesLeft - = 1

ANDARE

gb.exposeLetters(strGuess)

ANDARE

}

} // Fine della classe gameJudge

3 Inserisci il codice sorgente che mostra le lettere della parola di destinazione. Salvare il file con gli altri e chiamarlo wordDisplay.java:

import java.io. *;

public class wordDisplay

{

private String strDisplay

ANDARE

private String strGoal

ANDARE

private String lettersTried; // the letters player has tried

wordDisplay pubblico (String str)
{
strGoal = str

ANDARE

strDisplay = new String(str)

ANDARE

lettersTried = new String(\"\")

ANDARE

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

ANDARE

return

ANDARE

}

exposeLetters public void (String str)
{
String strRE

ANDARE

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

if (str.length () == 1) {
// Concatenare nuova lettera con le lettere già testato
lettersTried = lettersTried + str

ANDARE

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

ANDARE

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

ANDARE

}

altro {
if (str.compareToIgnoreCase (strGoal) == 0) {

strDisplay = strGoal;
}

}
return

ANDARE

}
public boolean blnMatch() {

tornare (strGoal == strDisplay)
ANDARE

}

public void showWord () {

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

}

}

4 Compilare ed eseguire il programma: scegliere Start> \ "cmd \" e usare \ "cd <dir> \" per accedere alla cartella che contiene i file di origine .java. Il \ "<dir> \" si riferisce a quella directory. Impostare il percorso per il compilatore Java: \ "set PATH = C: \ Program Files \ Java \ jdk1.6.0_14 \ bin \". Sostituire il \ "1.6.0_14 \" con la versione corretta del compilatore, che si può ottenere dalla documentazione del JDK è stato scaricato.

Inserisci \ "javac * .java \" seguito da \ "java thegame, \" poi giocare il gioco in questo modo: si noti il ​​numero di spazi vuoti; digitare una lettera alla volta fino a indovinare la parola; digitare la parola intera, una volta si riconosce.

5 Creare copie dei file originali e cambiare il gioco. Iniziare modificando la variabile wordList, e anche la costante MAX_GUESSES.