jogos baseados em texto , ou jogos de ficção interativa , são os antecessores dos modernos , jogos de aventura gráficos como Myst . No entanto, uma comunidade de fãs vibrantes ainda existe em torno da criação de jogos baseados em texto. A maioria dos autores de ficção interativa usar linguagens dedicados como Informar e TADS . No entanto, alguns optam por desenvolver jogos com linguagens de programação em geral, como PHP. Um jogo baseado em texto básico é bastante simples : o computador mantém uma lista de salas, cada uma com um nome, descrição e lista de ligações a outros quartos. O jogador é convidado para um comando e dá orientações para navegar pelo mundo. Instruções
1
Criar um arquivo de texto no seu editor de textos favorito (como o Windows Notepad ou jEdit ) . Nomeie-o " phpIF.php ".
2
Cole as tags PHP no primeiro e últimas linhas do arquivo :
< ? Php
> ;
Todo o código para o resto do tutorial vai entre estes
3
cole o código para a classe Quarto:
classe quarto . {
$ protegido description = "";
protegidos $ name = "";
protegidos $ quartos = array (
"ne" => , NULL,
"n " => NULL,
" nw " => NULL,
"e" => NULL,
"c" => NULL,
"w" => NULL,
"se" => NULL,
"s" => NULL ,
"sw " => NULL
);
função pública __ construct ( $ n = "", $ desc = "") {
$ this-> description = $ desc ;
$ this-> name = $ n;
}
função pública getDescription () {
return $ this -> descrição;
}
função pública getName () {
retornar $ this-> nome;
}
função pública setRoom ( $ direção = "c ", $ ambiente) {
$ this-> quartos [$ direção] = $ ambiente;
retornar True;
}
função pública getNewRoom ( $ direction = "") {
retornar $ this-> quartos [ direção] ; $
}
}
lojas três variáveis: a descrição do quarto , nome , e uma variedade de conexões para outras salas, com a direção para o outro quarto usado como uma chave
. 4
cole o seguinte para criar os quartos :
$ startRoom = new quarto ( " First Room ", " . . uma pequena sala há uma porta para o norte ");
$ secondRoom = new quarto ("Segundo quarto ", " um corredor curto que termina em um beco sem saída Há uma porta para o sul. ". );
$ startRoom -> setRoom ("n" , $ secondRoom );
$ secondRoom -> setRoom ( "s" , $ firstRoom );
$ currentRoom = $ startRoom ;
Isso cria dois quartos e dá -lhes nomes e descrições. Em seguida, ele se conecta -los com uma porta de entrada : ao norte a partir do primeiro quarto e sul a partir do segundo quarto. Finalmente , ele define quarto atual do jogador como a sala de partida
5
Cole o seguinte para o loop principal, que se repetirá até que o jogador sai : .
$ Play = True;
while ($ play) {
print $ currentRoom -> getName ();
print $ currentRoom -> getDescription ();
$ input = readline (". . ( Digite o comando digite quit para sair ) > ");
if ($ entrada == " sAIR ") {
$ play = False;
} else {
if ($ entrada == ' nw '