Stap 5: Bonus 1: een tweede avonturenspel.
[code]
REM HOUNTED HUIS
REM dit in ongeveer 2 of 3 uur gewoon voor de lol heb ik gemaakt.
REM Dit is mijn eerste echte als spel.
REM Im slechts 15 dus gimmie som slak als het sux lol.
VOOR s = 1 tot 40 stap 5
KLEUR INT(RND * 15) + 1
RUIMTE $(s); afdrukken "HAUNTED HOUSE";
VOLGENDE s
' spelen van "L7O1GFGGGBABBBBCO3BBBBDGGGGFGGABCGO4DBBBBGFG"
menu:
CLS
KLEUR 4
"HAUNTED HOUSE - DOOR DE BASISSOFTWARE GEEK" AFDRUKKEN
KLEUR 12
AFDRUKKEN
PRINT "MENU"-
PRINT "1 >" spel "
PRINT "2 > helpen"
PRINT "0 > stoppen"
DOEN
LAAT k$ = INKEY$
Als k$ = "1" THEN: GOTO playgame
Als k$ = "2" THEN: GOTO help
Als k$ = "0" THEN: CLS: einde
LOOP
Help:
CLS
KLEUR 4
AFDRUKKEN "HIER ZIJN WAT BASIS COMMANDO 'S DIE KUNNEN WORDEN GEBRUIKT IN HET SPEL..."
AFDRUKKEN
KLEUR 12
PRINT "LOOK - CONTROLES VOOR BESCHIKBARE UITGANGEN"
"INVENTARIS - BEKIJK AL UW ITEMS" AFDRUKKEN
AFDRUKKEN "NOORDEN, WESTEN, ZUIDEN EN OOSTEN - VERPLAATST U NAAR BESCHIKBARE LOCATIES"
AFDRUKKEN "ONDERZOEKEN (OBJECT) - EEN OBJECT ONDERZOEKT"
AFDRUKKEN "GEBRUIKEN (OBJECT) - EEN OBJECT GEBRUIKEN"
AFDRUKKEN "NEMEN (OBJECT) - EEN OBJECT"
AFDRUKKEN "UNLOCK (OBJECT) - EEN OBJECT ONTGRENDELEN"
PRINT "HELP - DIT SCHERM BEKIJKEN"
AFDRUKKEN "DRUK OP EEN WILLEKEURIGE TOETS..."
DOEN
LUS TOT LEN(INKEY$)
GOTO menu
playgame:
Laat r = 1
LAAT gotmainkey = 0
LAAT gotboxkey1 = 0
LAAT gotboxkey2 = 0
LAAT gotcandle = 0
LAAT gotnote = 0
LAAT gottp = 0
LAAT boxopen = 0
CLS
KLEUR 4
PRINT "HAUNTED HOUSE"
AFDRUKKEN
KLEUR 12
PRINT "HET IS HALLOWEEN DAG OP MARIPOSA RIJDEN."
PRINT "JE MOEDER HEEFT U VOOR DE DAG SLOEG OMDAT JIJ EN JE VRIENDEN"
AFDRUKKEN "GOOIDE TOILETPAPIER OVER HET HUIS VAN DE BUREN GISTERAVOND..."
PRINT "NADAT U ONGEVEER DE HELFT VAN DE DAG DOORBRENGEN IN UW KAMER STAREN OP UW"
PRINT "sokken en luisteren naar de kinderen ' spelen buiten, u DICIDE aan verlof"
PRINT "EN GA OP JE EIGEN KLEINE HALLOWEEN ADVENTURE. U RMEMBER DE LOKALE"
AFDRUKKEN "RUMERS OVER HET OUDE HUIS IN DE STRAAT HEY ACHTERVOLGD."
AFDRUKKEN "JE DENKT DAT HET MISSCHIEN WEL LEUK OM TE GAAN BINNEN EN ONDERZOEKEN."
AFDRUKKEN "OVERHANDIGING VAN DE TELEFOON NAAR UW VRIENDEN UITNODIGEN OM TE KOMEN, MAAR U VERGEET NIET"
AFDRUKKEN "DAT ZE ZIJN GROUNDER NAAR... U ZET DE TELEFOON TERUG NAAR BENEDEN, OPEN HET VENSTER"
PRINT "EN UIT SPRINGEN."
AFDRUKKEN "DRUK OP EEN WILLEKEURIGE TOETS..."
DOEN
LUS TOT LEN(INKEY$)
CLS
PRINT "U OVERKANT VAN DE STRAAT NAAR DE 'SPOOKHUIS' OM TE ZIEN DAT DE DEUR"
PRINT "IS LICHTJES OPEN, HOEWEL NIEMAND WOONT ER."
PRINT "U UITVOERT BINNEN HET HUIS EN DE DEUR ACHTER JE SLAMS."
AFDRUKKEN "U PROBEERT TE OPENEN VAN DE DEUR, MAAR ER IS EEN ENORME LOCK VOORKOMEN VAN U"
AFDRUKKEN "VANAF OPENEN."
AFDRUKKEN "DRUK OP EEN WILLEKEURIGE TOETS..."
DOEN
LUS TOT LEN(INKEY$)
DOEN
CLS
GOSUB kamer
GOSUB parser
LOOP
kamer:
ALS r = 1 THEN: GOSUB r1
ALS r = 2 THEN: GOSUB r2
ALS r = 3 THEN: GOSUB r3
ALS r = 4 THEN: GOSUB r4
ALS r = 5 THEN: GOSUB r5
ALS r = 6 THEN: GOSUB r6
TERUGKEER
parser:
KLEUR 12
LIJNINGANG ">"; cmd$
AFDRUKKEN
KLEUR 4
LAAT cmd$ = LTRIM$(RTRIM$(UCASE$(cmd$)))
Als cmd$ = "END" OR cmd$ = "QUIT" OR cmd$ = "EXIT" OR cmd$ = "Q" of cmd$ = "QUIT" THEN
GOTO menu
END IF
Als cmd$ = "Hulp" THEN
CLS
KLEUR 4
AFDRUKKEN "HIER ZIJN WAT BASIS COMMANDO 'S DIE KUNNEN WORDEN GEBRUIKT IN HET SPEL..."
AFDRUKKEN
KLEUR 12
PRINT "LOOK - CONTROLES VOOR BESCHIKBARE UITGANGEN"
"INVENTARIS - BEKIJK AL UW ITEMS" AFDRUKKEN
AFDRUKKEN "NOORDEN, WESTEN, ZUIDEN EN OOSTEN - VERPLAATST U NAAR BESCHIKBARE LOCATIES"
AFDRUKKEN "ONDERZOEKEN (OBJECT) - EEN OBJECT ONDERZOEKT"
AFDRUKKEN "GEBRUIKEN (OBJECT) - EEN OBJECT GEBRUIKEN"
AFDRUKKEN "NEMEN (OBJECT) - EEN OBJECT"
AFDRUKKEN "UNLOCK (OBJECT) - EEN OBJECT ONTGRENDELEN"
PRINT "HELP - DIT SCHERM BEKIJKEN"
AFDRUKKEN "DRUK OP EEN WILLEKEURIGE TOETS..."
DOEN
LUS TOT LEN(INKEY$)
END IF
Als cmd$ = "LOOK" OR cmd$ = "RONDKIJKT" OR cmd$ = "L" dan
ALS r = 1 THEN: afdrukken "Kun je Noord en WEST."
ALS r = 2 THEN: "U kunt verplaatsen Noord, Zuid.", en WEST afdrukken
ALS r = 3 dan: "Kunt u WEST." en zuiden afdrukken
ALS r = 4 THEN: afdrukken "Kun je ten oosten."
ALS r = 5 THEN: afdrukken "Kun je ten oosten."
ALS r = 6 THEN: afdrukken "Kun je ten oosten."
DOEN
LUS TOT LEN(INKEY$)
END IF
Als cmd$ = "Inventaris" OR cmd$ = "INV" OR cmd$ = "ITEMS" THEN
PRINT "VOORRAAD:"
IF gotmainkey = 1 THEN: PRINT "Brons KEY"
IF gotboxkey1 = 1 THEN: PRINT "SMALL KEY"
IF gotboxkey2 = 1 THEN: PRINT "SMALL KEY"
IF gotnote = 1 THEN: PRINT "NOTE"
IF gotcandle = 1 THEN: PRINT "KAARS"
DOEN
LUS TOT LEN(INKEY$)
END IF
Als cmd$ = "Noord" OR cmd$ = "Gaan noorden" OR cmd$ = "N" dan
ALS r = 1 THEN: laat r = 2: GOTO verplaatst
ALS r = 2 THEN: laat r = 3: GOTO verplaatst
END IF
Als cmd$ = "WEST" OR cmd$ = "GO WEST" OR cmd$ = "W" dan
ALS r = 1 THEN: laat r = 5: GOTO verplaatst
ALS r = 2 THEN: laat r = 6: GOTO verplaatst
ALS r = 3 THEN: laat r = 4: GOTO verplaatst
ALS r = 7 THEN: laat r = 2: GOTO verplaatst
END IF
Als cmd$ = "Zuid" OR cmd$ = "GO SOUTH" OR cmd$ = "S" dan
ALS r = 2 THEN: laat r = 1: GOTO verplaatst
ALS r = 3 THEN: laat r = 2: GOTO verplaatst
END IF
Als cmd$ = 'EAST' OR cmd$ = 'GO-EAST' OR cmd$ = "E" dan
ALS r = 4 THEN: laat r = 3: GOTO verplaatst
ALS r = 5 THEN: laat r = 1: GOTO verplaatst
ALS r = 6 THEN: laat r = 2: GOTO verplaatst
END IF
IF (cmd$ = "Onderzoeken oude tapijt" OR cmd$ = "Onderzoeken DEKEN") en r = 1 THEN
PRINT "HET IS OUD, GEKLEURD EN VERSLETEN ZIJN."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken enorme tabel" OR cmd$ = "Tabel onderzoeken") en r = 2 THEN
PRINT "HET IS EEN GROTE GRAND UITZIENDE HARDHOUTEN TAFEL."
PRINT "HET IS BEDEKT MET STOF EN HEEFT CHIPS IN."
IF gotnote = 0 THEN: PRINT "Er IS een kleine notitie op de top van het."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken stoel" OR cmd$ = "Onderzoeken stoelen") en r = 2 THEN
PRINT "HET ZOU NIET EEN GOED IDEE OM TE ZITTEN OP DEGENEN DIE GEEN VERBROKEN KOPPELINGEN ZIJN"
AFDRUKKEN, "OMDAT ZE MISSCHIEN BREKEN OOK."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken schilderij") en r = 2 THEN
PRINT "HET IS EEN FOTO VAN EEN MIDEVAL KASTEEL."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken ZINKEN") en r = 3 THEN
AFDRUKKEN "YOU SEE GEDROOGDE UIT KALKSPATTEN VAN BLOED IN DE GOOTSTEEN."
AFDRUKKEN "JE ZIET OOK EEN KAARS EN SOMMIGE WEDSTRIJDEN DAARIN."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken COUNTER") en r = 3 THEN
PRINT "HET IS DUIDELIJK, EN IS ZEER STOFFIGE."
PRINT "ER IS SCHRIJVEN IN HET STOF."
PRINT "HET ZEGT:"
PRINT "' IK ZIJN GEVANGEN IN DIT HUIS VOOR DAGEN NU, NIET IN STAAT TE ONTSNAPPEN."
AFDRUKKEN "DE VOORDEUR VEREIST EEN SPECIALE SLEUTEL TE WORDEN GEOPEND VAN BINNENUIT."
PRINT "HET IS NIET HETZELFDE ALS DEGENE DIE WORDT GEOPEND VANAF DE VOORZIJDE."
AFDRUKKEN "ZAL IK NIET LEVEN VEEL LANGER, MAAR VOOR IEDEREEN DIE VINDT THEMSELF"
AFDRUKKEN "GEVANGEN IN DEZE VERSCHRIKKELIJKE PLEK, IK HEB ZOJUIST EEN INTERESSANTE ONTDEKKING."
PRINT "IK BEN NIET HONDERD PROCENT ZEKER, MAAR IK DENK..." "
AFDRUKKEN "DE REST IS WEG BESMEURD."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken emmer" OR cmd$ = "Onderzoeken STINKENDE emmer") en r = 4 THEN
PRINT "HET IS VOL MET GROENIG BRUINE SEMIHARD SPUL."
IF gotboxkey2 = 0 THEN: PRINT "Er IS een kleine sleutel IN IT."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "onderzoeken wc-papier" OR cmd$ = "Onderzoeken papier") en gottp = 0 en r = 4 THEN
PRINT "HET IS ZEER OUD OP ZOEK."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "PLAIN MAT onderzoeken" OR cmd$ = "Onderzoeken MAT") en r = 5 THEN
PRINT "HET ZIET ER IETS MINDER DAN GEZELLIGE..."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken VERSCHEURD UP DEKEN" OR cmd$ = "Onderzoeken DEKEN") en r = 5 THEN
PRINT "HET WAARSCHIJNLIJK ZAL HOUDEN U ZEER WARM."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken grote sieraden doos" OR cmd$ = "Onderzoeken sieraden doos") en r = 5 THEN
PRINT "HET IS INGELEGD MET WAT LIJKT OP MARMER."
PRINT "ER ZIJN TWEE KLEINE SLEUTEL GAATJES IN HET MIDDEN."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken ROPE") en r = 6 THEN
PRINT "HET IS OPKNOPING VAN EEN VREEMD UITZIENDE APPARAAT IN HET DAK."
AFDRUKKEN "IT LOOKS LIKE IT KUNNEN ACTIVEREN IETS ALS U TREKKEN."
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Onderzoeken BLOOD") en r = 6 THEN
PRINT "HET IS OPGEDROOGD BLOED OP DE VLOER, WAT KAN IK ZEGGEN?!?"
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Nemen kennis" OR cmd$ = "Krijgen NOTE") en r = 2 en gotnote = 0 THEN
AFDRUKKEN "U DE KENNIS NEMEN."
LAAT gotnote = 1
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Nemen schilderij" OR cmd$ = "GET schilderij") en r = 2 en gotboxkey1 = 0 THEN
AFDRUKKEN "U GRIJPEN HET SCHILDERIJ EN EEN KLEINE TOETS VALT UIT VANAF DE ACHTERKANT VAN HET."
AFDRUKKEN "U ZET HET SCHILDERIJ TERUG EN PAK DE KLEINE SLEUTEL."
LAAT gotboxkey1 = 1
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "KAARS nemen" OR cmd$ = "Krijgen KAARS") en r = 3 en gotcandle = 0 THEN
AFDRUKKEN "NEEMT U DE KAARS."
LAAT gotcandle = 1
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Treffen SMALL KEY" OR cmd$ = "Nemen KEY" OR cmd$ = "Krijgen kleine sleutel" OR cmd$ = "GET KEY") en r = 4 THEN
PRINT "U NEEMT U DE SLEUTEL EN KRIJGEN VAN NARE DINGEN OVER JE HAND..."
LAAT gotboxkey2 = 1
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Nemen grote bronzen sleutel" OR cmd$ = "Nemen bronzen sleutel" OR cmd$ = "Nemen KEY" OR cmd$ = "Krijgen grote bronzen sleutel" OR cmd$ = "Krijgen bronzen sleutel" OR cmd$ = "GET KEY") en boxopen = 1 en r = 5 THEN
AFDRUKKEN "U NEEMT DE GROTE BRONZEN SLEUTEL."
LAAT gotmainkey = 1
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "nemen rollen van wc-papier" OR cmd$ = "wc-papier nemen" OR cmd$ = "krijgen rollen van wc-papier" OR cmd$ = "krijgen wc-papier") en gottp = 0 THEN
AFDRUKKEN "U PICK UP HET WC-PAPIER EN IT COMPLTELY VALT UIT ELKAAR IN JE HAND."
LAAT gottp = 1
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "NOTE lezen" OR cmd$ = "Gebruik NOTE") en gotnote = 1 THEN
PRINT "DE OPMERKING ZEGT:"
PRINT "' ACHTER HET OUDE KASTEEL LIGT DE HELFT VAN EEN INSTRUMENT VAN UW VRIJHEID.'"
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "Trek touw" OR cmd$ = "Gebruik ROPE") en r = 6 THEN
GOTO verliezen
END IF
Als (cmd$ = "ONTGRENDEL sieraden doos" OR cmd$ = "ONTGRENDEL BOX") en gotboxkey1 = 1 & gotboxkey2 = 1 en r = 5 THEN
PRINT "U DE TWEE KLEINE TOETSEN INVOEGEN IN HET VAK EN IS SPRINGS OPEN"
PRINT "TE ONTHULLEN VAN EEN LAGRE BRONZEN SLEUTEL."
LAAT boxopen = 1
DOEN
LUS TOT LEN(INKEY$)
END IF
IF (cmd$ = "VOORDEUR ontgrendelen" OR cmd$ = "Open deur") en gotmainkey = 1 en r = 1 THEN
GOTO win
END IF
verplaatst:
TERUGKEER
R1:
KLEUR 4
AFDRUKKEN "U DE VERMELDING MANIER INVOERT."
AFDRUKKEN "JE ZIET EEN OUDE TAPIJT LEIDT TOT WAT LIJKT OP DE EETKAMER."
AFDRUKKEN "EEN ANDERE DEKEN LEIDT TOT EEN ANDERE KAMER."
AFDRUKKEN
TERUGKEER
R2:
KLEUR 4
AFDRUKKEN "YOU ENTER THE DINING ROOM."
PRINT "ER ZIJN GEEN VENSTERS IN HIER, MAAR ER IS LICHT STROOMT IN VANUIT DE"
AFDRUKKEN "ANDERE KAMER, JE KUNT NAUWELIJKS ZIEN IETS."
PRINT "ER ZIJN MEERDERE DEUREN LEIDEN NAAR EEN ANDERE LOCATIE."
AFDRUKKEN "JE ZIET EEN VAL DEUR DIE WAARSCHIJNLIJK NAAR DE KELDER LEIDT."
PRINT "ER IS EEN GROTE TABEL IN HET MIDDEN VAN DE KAMER."
AFDRUKKEN "ALLERMEEST NAAR DE STOELEN ROND DE TAFEL HEBBEN GEBROKEN BENEN."
AFDRUKKEN "JE ZIET OOK EEN SCHILDERIJ AAN DE MUUR."
AFDRUKKEN
TERUGKEER
R3:
KLEUR 4
AFDRUKKEN "JE OPGEVEN DE KEUKEN."
AFDRUKKEN "JE ZIET EEN DEUR MET DE ONTBREKENDE DEUR."
PRINT "ER IS EEN WASTAFEL EN EEN TELLER."
PRINT "ER IS EEN TON VAN DE STOF OP HET AANRECHT."
AFDRUKKEN
TERUGKEER
R4:
KLEUR 4
AFDRUKKEN "YOU ENTER DE BADKAMER."
PRINT "ER IS EEN KLEINE ONDOORZICHTIGE VENSTER OP DE MUUR."
PRINT "ER IS EEN DEUR DIE NAAR DE KEUKEN LEIDT."
AFDRUKKEN "JE ZIET EEN EMMER VAN VILE RUIKENDE SPULLEN IN DE HOEK."
IF gottp = 0 THEN: PRINT "Er IS een rol wc-papier ernaast."
AFDRUKKEN
TERUGKEER
R5:
KLEUR 4
AFDRUKKEN "YOU ENTER DE SLAAPKAMER".
PRINT "ER IS EEN DEUR DIE NAAR DE EETKAMER LEIDT."
AFDRUKKEN "ZIET U EEN EFFEN MAT OP DE VLOER MET EEN DEKEN VERSCHEURD."
AFDRUKKEN "U OOK ZIEN EEN GROTE SIERADEN DOOS."
AFDRUKKEN
TERUGKEER
R6:
KLEUR 4
AFDRUKKEN "YOU ENTER DE KELDER".
IF gotcandle = 1 THEN
AFDRUKKEN "U EEN KAARS AANSTEKEN."
AFDRUKKEN "JE ZIET EEN TOUW IN HET MIDDEN VAN DE KAMER."
PRINT "ER IS OOK DREID VAN BLOED OP DE VLOER."
ANDERS
PRINT "ER ZIJN DAT GEEN WINDOWS IN HIER EN U CANT ZIE IETS."
AFDRUKKEN "PROBEREN OM TE ZIEN OF JE EEN KAARS KUNT VINDEN."
AFDRUKKEN "U HOOFD BACK-UP VAN DE LADDER."
Laat r = 2
END IF
AFDRUKKEN
TERUGKEER
Win:
KLEUR 14
AFDRUKKEN "U ONTGRENDELEN VAN DE DEUR, OPEN HET EN LOPEN BUITEN EN RUIK DE FRISSE LUCHT."
AFDRUKKEN "DE ZON ONDERGAAT. ALS U HAD VERBLEVEN ER LANGER, ZOU U"
PRINT "IN VOLLEDIGE DUISTERNIS EN WAARSCHIJNLIJK HAD DE NACHT DOORBRENGEN IN DAAR!"
PRINT "REALISEREN DAT U NOG STEEDS GEAARD, JE HOOFD TERUG THUIS VOORDAT UW"
AFDRUKKEN "MOEDER MERKT DAT U VERDWENEN WAREN..."
AFDRUKKEN
AFDRUKKEN "YOU WIN!"
AFDRUKKEN "DRUK OP EEN WILLEKEURIGE TOETS..."
DOEN
LUS TOT LEN(INKEY$)
GOTO menu
verliezen:
KLEUR 14
AFDRUKKEN "YOU HEAR IETS ONTGRENDELEN MIDVELD DOOR EEN GROTE CRASH."
PRINT "UW KAARS BLAAST."
PRINT "EEN GROOT MES SWINGT NAAR BENEDEN FROOM DE CIELING EN BESTUURSTER U!"
AFDRUKKEN
PRINT "GAME OVER!"
AFDRUKKEN "DRUK OP EEN WILLEKEURIGE TOETS..."
DOEN
LUS TOT LEN(INKEY$)
GOTO menu
[/ code]