Java-spill er dataspill skrevet i programmeringsspråk " Java ". Java-spill kan være så komplisert som det shoot -'em -up tredimensjonale spill skrevet i andre språk , eller så enkelt som en tradisjonell stikksag eller ord puslespill . Uavhengig av hvilken type spill de til slutt ønsker å skape , kan spillet programmerere begynne å lære Java spillprogrammering ved å kopiere eksisterende , enkle programmer som følgende ord spillet. Du trenger
Java Development Kit ( JDK ) fra java.sun.com
Vis flere instruksjoner
en
ned og installere Java Development Kit ( JDK ) fra java.sun.com . Begynner å lage wordGame program ved å åpne opp notepad og skrive inn følgende kode for spillets største klassen : en
import java.io. * ; public class wordGame { /*** Konstruktør for objekter av klassen wordGame * /public wordGame ( ) {
} public static void main ( String args [ ] ) { String strGuess ;
QuizMaster qm = new QuizMaster ();
qm.chooseWord ( ) ;//Åpne konsoll for inputConsole c = System.console (); if ( c == null ) { System.err.println ("No konsoll . "); System.exit ( 1 ) ;}
//Loop inntil spillet er overwhile { qm.showGameboard ( ) ( qm.gameOver ( !) ) ; System.out.format ("Du har% d forsøk igjen \\ n ". , qm.getRemainingAttempts ( )); strGuess = c . readline ("Skriv din gjetning : "); qm.evaluateGuess ( strGuess ) ;} //End main sløyfe
if ( qm.playerWon ( ) ) { System.out.format ("Du Won It! tok du % d forsøk \\ n ". , qm.nGuessesNeeded ( )); System.out.format ( qm.getWord ( ) ); } //if spiller wonelse { System.out.format (" Du mistet ordet var. % s \\ n " , qm.getWord ( ) ); } //if spiller won } //slutt på main }
Lagre filen med filnavnet" wordGame.java "i en mappe som heter WordGame . Pass på å matche tilfelle av hver bokstav til at gitt her fordi Java er store og små bokstaver .
2
Opprett QuizMaster klassen, som representerer en QuizMaster som velger ord på måfå , sammenligner spillerens gjetning til valgt ord og rapporter når spilleren har vunnet eller tapt. Skriv inn følgende programkode i en fil kalt QuizMaster.java og lagre den i WordGame mappen som inneholder wordGame.java filen: .
Import java.util * ;
public class QuizMaster {
private final int MAX_GUESSES_ALLOWED = 15; private String GameWords [ ] = { "datamaskin" , " fullblods " , "enestående" , " helikopter ", " flygelhorn "} ; private String targetWord ; private int nTriesLeft ; privat gameboard gb ;
offentlig QuizMaster ( ) { nTriesLeft = MAX_GUESSES_ALLOWED ; return; }
public void chooseWord ( ) { Random obRand = new Random (); int i = obRand.nextInt ( GameWords. lengde) ; targetWord = GameWords [i ]; gb = new gameboard ( targetWord ) ;}
public boolean GameOver ( ) { //det er to end betingelser: Spilleren vinner eller nTriesLeft går til 0if ( gb . blnMatch ( ) ) return true; if ( nTriesLeft == 0 ) return true; else return false; }
public boolean playerWon ( ) {return ( gb.blnMatch ( ) ); } //spiller vant
public int getRemainingAttempts () {return nTriesLeft ;} //showAttempts
public String getWord ( ) {return targetWord ;} //showWord
public void showGameboard ( ) { gb . showBoard (); } //showGameboard
public int nGuessesNeeded ( ) {return MAX_GUESSES_ALLOWED - nTriesLeft ;} //nGuessesNeeded
public void evaluateGuess (String strGuess ) { nTriesLeft - = 1 ; gb . uncoverLetters ( strGuess ) ;} } ;//slutten av quizMaster klasse
3
Lag klassen som avdekker bokstavene i ordet valgt av quizMaster som samsvarer med bokstavene du har oppgitt av spilleren : i en fil kalt gameBoard.java , skriv inn følgende tekst og lagre den i samme mappe som inneholder de andre wordGame filer : en
import java.io. * ;
public class gameboard {private String strGameboard ; private String strTarget ; private String lettersTested ; //disse er alle de individuelle bokstaver spilleren har forsøkt å matche med
/*** Konstruktør for objekter av klassen gameboard * /public gameboard ( String str ) { strTarget = str ; strGameboard = new String (str ) ; lettersTested = new String ( " "); strGameboard = strGameboard.replaceAll ( " . ", " _ "); return ;}
public void uncoverLetters ( String str ) { String strRE ;//for gjetninger på en røye lang , avdekke alle bokstavene i målet at kampen //Men behandle gjetninger lenger enn en røye som et ord mot ord . Avdekke alle eller ingen lettersif ( str.length ( ) == 1 ) { //concatenate nytt brev med bokstaver allerede testedlettersTested = lettersTested + str ; strRE = " [ ^ " + lettersTested + "]" ;//skjule alle ikke-samsvarende chars : erstatte alle bokstaver i mål som ikke samsvarer mønster med underscorestrGameboard = strTarget.replaceAll ( strRE , "_ "); }
else { if ( str.compareToIgnoreCase ( strTarget ) == 0 ) { strGameboard = strTarget ;} } return; }
public boolean blnMatch ( ) {return ( strTarget == strGameboard ) ;}
public void showBoard ( ) { int i; for (i = 0 ; i < strTarget.length (); i + + ) { System.out.format ( "% c" , strGameboard.charAt ( i) ) ;} System.out.println ( "\\ n ");
} } //slutt på spillebordet klasse
4
Kompiler spillet: åpne en ledetekst (Start > cmd ) og skriv PATH = " C: \\ Program Files \\ Java \\ jdk1.6.0_14 \\. " Denne mappen skal inneholde java kompilator ( javac.exe ) . Hvis den ikke gjør det , må du finne javac.exe bruker en Windows Utforsker søk, deretter må du angi banen med PATH = ... uttalelse bare gitt .
Ved ledeteksten , bruke " cd "-kommandoen til å gå til mappen som inneholder den wordGame mappen . Kompilere alle filer med denne uttalelsen : . . Javac * java
5
kjøre spillet ved å skrive " java wordGame " . Spill spillet ved å skrive en bokstav om gangen, til du går tom for gjetninger eller antar du ordet. Hvis du skriver inn mer enn én bokstav på en gang, mener gameboard klassen du prøver å gjette hele ordet og vil ikke avdekke noen bokstaver med mindre du matche dem alle .
6
Pugg og endre spillet for å begynne å lage dine egne spill . Du kan enkelt endre ordene QuizMaster velger fra , ved å merke hvordan den " GameWords = ... " Erklæringen er strukturert. Du kan enkelt endre antall prøver spilleren har til å gjette ordet i utsagnet inneholder MAX_GUESSES_ALLOWED konstant.