Hur man skapar en interaktiv fiktion spel som "Zork" (3 / 7 steg)
Steg 3: Skapa rum
OK, sker första rummet koden bara under avsnittet init efter den grammatik som inkluderar. Här är koden för det första rummet ("första rummet"):
objektet InitialRoom "Första rummet"
med
Beskrivning "Du är ensam i ett främmande rum.",
har ljus;
Rumsbeskrivningen är den text som visas när spelaren kommer att gå i, eller när han frågar efter rumsbeskrivningen, som "ser" eller "undersöka".
Allt i spelet universum kommer att deklareras som informera "objekt", även människor eller rum. Finalen har uttalande gav några huvudsakliga informationer om objektet. Här, betyder sökord ljus att objektet är ett rum, fullt av ljus (du kan se i det). Alla attribut anges här.
Innan du kompilerar, måste vi lägga till en linje i blocket init :
läge = InitialRoom;
Strax efter utskrift förklaring. Variabel platsen innehåller namnet på den första rummet, där åtgärden börjar.
Vid denna tid, vi kan sammanställa spelet och att köra den. Dess enkla: rättvis sjösätta våra "compile.bat" skriptfil. Du bör inte ha fel.
Intressant, men fortfarande platt. Låt oss lägga till de två andra rummen (placera koden efter det första rummet):
objektet TreasureRoom "Treasure Room"
med
Beskrivning "Detta rum är ganska samma som föregående. Du kan gå till första rummet genom att gå i söder. Det finns ett andra rum i öster. ",
har ljus;
objektet DragonRoom "Dragon rum"
med
Beskrivning "Kan du nå skatten rummet genom att gå på väst.",
har ljus;
Det kommer att fungera, men vi måste skapa länkar mellan rummen (efter vår karta). Låt oss lägga till lite kod i rummet blocken:
objektet InitialRoom "Första rummet"
med
Beskrivning "Du är ensam i ett främmande rum.",
n_to TreasureRoom,
har ljus;
objektet TreasureRoom "Treasure Room"
med
Beskrivning "Detta rum är ganska samma som föregående. Du kan gå till första rummet genom att gå i söder. Det finns ett andra rum i öster. ",
s_to InitialRoom,
e_to DragonRoom,
har ljus;
objektet DragonRoom "Dragon rum"
med
Beskrivning "Kan du nå skatten rummet genom att gå på väst.",
w_to TreasureRoom,
har ljus;
N_to, s_to, w_to, e_to sökord ger de globala riktningarna. I InitialRoom blocket, nyckelordet n_to innebär att vi kan nå TreasureRoom genom att gå i norr. I det andra rummet tillåter sökord s_to spelaren att komma tillbaka i första rummet.
Det är alltid bra att berätta spelaren vad är anvisningarna. Ibland är det tråkigt att prova alla riktningar i ett nytt rum. Vårt spel har små beskrivningar, men det kan hjälpa spelaren.
Spara källan, kompilera och köra den nya z5 filen med gargoyle. Nu kan du utforska kartan.
Du kan prova några grundläggande kommandon:
gå norrut
öppna dörren
lukten
lyssna...