Tekst - baserte spill , eller interaktive fiction spill, er forgjengerne til moderne , grafiske eventyr spill som Myst . Det finnes imidlertid en levende fan samfunnet fortsatt rundt etableringen av tekst - baserte spill . Mest interaktive fiction forfattere bruker dedikerte språk som informerer og TADS . Men noen velger å utvikle spill med generelle programmeringsspråk som PHP. En grunnleggende tekst - basert spill er ganske enkel : datamaskinen holder en liste over rom, hver med et navn , beskrivelse og liste over forbindelser til andre rom . Spilleren er bedt om en kommando og gir retninger for å navigere i verden. Instruksjoner
en
Lag en tekstfil i din favoritt ren tekst editor ( for eksempel Windows Notepad eller jEdit ) . Name it " . PhpIF.php "
2
Lim PHP koder på den første og siste linjene i filen : en
< ? Php
> ;
All koden for resten av opplæringen vil gå mellom disse
3
Lim koden for rommet klassen : en
klasse rommet . {
beskyttet $ description = " ";
beskyttet $ name = " ";
beskyttet $ rom = array (
" ne" = > , NULL , etter
"n " = > NULL , etter
" nw " = > NULL , etter
" e " = > NULL , etter < p > "c " = > NULL , etter
" w" = > NULL , etter
"se " = > NULL , etter
"s" = > NULL , etter
" sw " = > NULL
) ;
offentlig funksjon __ construct ( $ n = "" , $ desc = "") {
< p > $ this-> description = $ synkende ;
$ this - > name = $ n;
}
offentlig funksjon getDescription ( ) {
< p> returnere $ this-> beskrivelse ;
}
offentlig funksjon getName ( ) {
returnerte $ this-> navn,
}
offentlig funksjon setRoom ( $ retning = "c ", $ rom) {
$ this - > rom [$ retning] = $ rommet;
return true;
}
offentlig funksjon getNewRoom ( $ retning = "") {
returnerte $ this-> rom [$ retning ];
}
}
p Dette butikkene tre variabler : . rommets beskrivelse , navn , og en rekke tilkoblinger til andre rom , med retningen til andre rom brukes som en nøkkel
4
Lim inn følgende for å skape rom : en
$ startRoom = new Room ( " First Room ", " et lite rom det er en dør mot nord . . ");
< p > $ secondRoom = new Room ( " Second Room ", " en kort korridor som ender i en blindvei det er en dør til sør. . ");
$ startRoom - > setRoom ( " n" , $ secondRoom ) ;
$ secondRoom - > setRoom ( "s" , $ firstRoom ) ;
$ currentRoom = $ startRoom ;
Dette skaper to rom og gir dem navn og beskrivelser . Den kobler dem deretter med en døråpning : nordover fra det første rommet og sør fra det andre rommet . Til slutt , det setter spillerens nåværende rom som utgangspunkt rommet
5
Lim inn følgende for de viktigste loop, noe som vil gjenta til spilleren avsluttes : .
$ Play = true;
while ( $ play) {
print $ currentRoom - > getName ();
print $ currentRoom - > getDescription ();
$ innspill = readline ( " ( Skriv inn kommandoen Skriv quit for å avslutte) > . . ");
if ( $ innspill == " QUIT" ) {
$ play = False ;
} else {
if ( $ innspill == ' nw '