Hoe maak je een spel te maken met behulp van Java Software

De Java programmeertaal kan worden gebruikt om complexe toepassingen in databases, geluid en video ontwikkelen. Maar het kan ook gebruikt worden om eenvoudige games, waaronder woord puzzels te ontwikkelen. Een goede manier om te leren hoe je een spel in Java te maken is om te kopiëren, samenstellen en uitvoeren van een bestaande, zoals degene die volgt.

instructies

1 Download en installeer de Java Development Kit (JDK) installeren vanaf java.sun.com. Voer vervolgens de programmacode dat het spel maakt: het openstellen van Kladblok (Start> \ "Notepad \") en voer de volgende Java-broncode, die het spel beheert. Zorg ervoor dat u de juiste geval van elke letter in te voeren. Sla het bronbestand met de bestandsnaam theGame.java.

import java.io. *
GAAN

public class TheGame
{

public theGame()

{

}

public static void main (String args [])
{

String strGuess
GAAN

gameJudge qm = new gameJudge ()
GAAN

qm.pickWord()

GAAN
// Open console voor input
Console c = System.Console ()
GAAN

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

GAAN

System.exit(1)

GAAN

}

while (! qm.gameEnded ()) {

qm.displayWord()

GAAN

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

GAAN

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

if (qm.blnWin ()) {
System.out.format (\ & quot;!. Je Won Het duurde u% d pogingen \\ n \ & quot ;, qm.nGuessesNeeded ())

GAAN

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

GAAN

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

GAAN

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

}

2 Typ of voer de source code die de persoon die het willekeurig woord pikt vertegenwoordigt. Doe dit in een nieuw Kladblok-bestand met de naam gameJudge.java. Sla dit bestand in dezelfde map als theGame.java.

importeren java.util. *
GAAN

public class gameJudge

{

private final int MAX_GUESSES = 8

GAAN

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

GAAN

private String goalWord

GAAN

private int nGuessesLeft

GAAN

private wordDisplay gb

GAAN

public gameJudge()
{
nGuessesLeft = MAX_GUESSES

GAAN
terugkeer
GAAN

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

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

goalWord = wordList[i]

GAAN
gb = new wordDisplay (goalWord)
GAAN

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

GAAN

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

GAAN

}

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

GAAN

}//player won

public int getRemainingGuesses () {
terug nGuessesLeft

GAAN

}

public String getWord () {
terug goalWord

GAAN

}

public void displayWord () {
gb.showWord ()

GAAN

}

public int nGuessesNeeded () {
terug MAX_GUESSES - nGuessesLeft

GAAN

}

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

GAAN

gb.exposeLetters(strGuess)

GAAN

}

} // Einde van gameJudge klasse

3 Voer de source code die de letters van het doel woord laat. Sla dit bestand met de anderen en noemen het wordDisplay.java:

import java.io. *;

public class wordDisplay

{

private String strDisplay

GAAN

private String strGoal

GAAN

private String lettersTried; // the letters player has tried

public wordDisplay (String str)
{
strGoal = str

GAAN

strDisplay = new String(str)

GAAN

lettersTried = new String(\"\")

GAAN

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

GAAN

return

GAAN

}

public void exposeLetters (String str)
{
String strRE

GAAN

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

if (str.length () == 1) {
// Samenvoegen nieuwe brief met brieven reeds geteste
lettersTried = lettersTried + str

GAAN

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

GAAN

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

GAAN

}

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

strDisplay = strGoal;
}

}
return

GAAN

}
public boolean blnMatch() {

terug (strGoal == strDisplay)
GAAN

}

public void showWord () {

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

}

}

4 Compileren en uitvoeren van het programma: kies Start> \ "cmd \" en gebruik \ "CD <dir> \" om te navigeren naar de map met de .java bronbestanden. De \ "<dir> \" verwijst naar die map. Stel het pad naar de Java-compiler: \ "set PATH = C: \ Program Files \ Java \ jdk1.6.0_14 \ bin \". Vervang de \ "1.6.0_14 \" met de juiste versie van de compiler, die je kunt krijgen van de documentatie in de JDK u hebt gedownload.

Voer \ "javac * .java \", gevolgd door \ "java thegame, \", dan speel het spel als dit: let op de aantal lege ruimten; typt u een letter in een tijd totdat u het woord te raden; typt u het hele woord zodra je het herkent.

5 Maak kopieën van de originele bronbestanden en veranderen het spel. Begin met het veranderen van de woordenlijst variabele en ook MAX_GUESSES constant.