Last active
September 6, 2023 00:48
-
-
Save jlgib/4230656 to your computer and use it in GitHub Desktop.
QBASIC game I made in 9th grade. Good luck running it.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
DECLARE SUB level.9 () | |
DECLARE SUB game.won () | |
DECLARE SUB level.8 () | |
DECLARE SUB drawSpikes2 () | |
DECLARE SUB eraseSpikes2 () | |
DECLARE SUB levelstarter () | |
DECLARE SUB deathMusic () | |
DECLARE SUB slots () | |
DECLARE SUB drawSpikes () | |
DECLARE SUB eraseSpikes () | |
DECLARE SUB dead.by.spikes () | |
DECLARE SUB monsterInfo () | |
DECLARE SUB ScreenModeError () | |
DECLARE SUB get.guy.to.move (x!, y!) | |
DECLARE SUB level.1 () | |
DECLARE SUB level.2 () | |
DECLARE SUB level.3 () | |
DECLARE SUB level.4 () | |
DECLARE SUB level.5 () | |
DECLARE SUB level.6 () | |
DECLARE SUB level.7 () | |
DECLARE SUB get.speed () | |
DECLARE SUB get.color () | |
DECLARE SUB dead.by.popper () | |
DECLARE SUB dead.by.riddler () | |
DECLARE SUB dead.by.riddlers () | |
DECLARE SUB quit () | |
DECLARE SUB title () | |
DECLARE SUB begin () | |
DECLARE SUB instructions () | |
DECLARE SUB storyline () | |
DECLARE SUB intermission1 () | |
DECLARE SUB dead.by.electricwall () | |
DECLARE SUB game.over () | |
DECLARE SUB congratulations () | |
DECLARE SUB dead.by.guard () | |
DECLARE SUB border () | |
DECLARE SUB dedication () | |
DECLARE SUB center (row!, text$) | |
DECLARE SUB psintro () | |
ON ERROR GOTO screenerror | |
RANDOMIZE TIMER | |
DIM SHARED speed | |
DIM SHARED guycolor | |
CLS | |
dedication | |
SCREEN 12 | |
psintro | |
title | |
begin | |
get.speed | |
get.color | |
level.1 | |
level.2 | |
level.3 | |
level.4 | |
level.5 | |
level.6 | |
level.7 | |
level.8 | |
level.9 | |
SYSTEM | |
screenerror: | |
ScreenModeError | |
SUB begin | |
CLS | |
border | |
COLOR 4 | |
center 5, "Knowing the great danger that awaits you" | |
SLEEP 2 | |
center 7, "You bravely enter the caves" | |
SLEEP 2 | |
center 9, "GOOD LUCK!!!" | |
SLEEP 2 | |
END SUB | |
SUB border | |
CLS | |
VIEW (9, 17)-(622, 430) | |
COLOR 8 | |
FOR row = 1 TO 28 | |
LOCATE row, 1 | |
PRINT CHR$(219) | |
NEXT row | |
FOR row = 1 TO 28 | |
LOCATE row, 79 | |
PRINT CHR$(219) | |
NEXT row | |
FOR col = 1 TO 79 | |
LOCATE 1, col | |
PRINT CHR$(219) | |
NEXT col | |
FOR col = 1 TO 79 | |
LOCATE 28, col | |
PRINT CHR$(219) | |
NEXT col | |
END SUB | |
SUB center (row, text$) | |
LOCATE row, 41 - LEN(text$) / 2 | |
PRINT text$; | |
END SUB | |
SUB congratulations | |
CLS | |
FOR c = 1 TO 3 | |
COLOR c | |
LOCATE 9, 2 | |
PRINT " " | |
LOCATE 10, 2 | |
PRINT " " | |
LOCATE 11, 2 | |
PRINT " " | |
LOCATE 12, 2 | |
PRINT " " | |
LOCATE 13, 2 | |
PRINT " " | |
LOCATE 14, 2 | |
PRINT " " | |
IF c < 3 THEN PRINT : PRINT | |
NEXT c | |
SLEEP 2 | |
CLS | |
COLOR 4 | |
center 13, "YOU VENTURE FURTHER INTO THE CAVE!!!" | |
m$ = "o1l20a-a-a-a-b-b-b-b-" | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
END SUB | |
SUB dead.by.electricwall | |
CLS | |
COLOR 4 | |
center 5, "You clumsily run into a wall" | |
SLEEP 2 | |
center 7, "You feel an enormous electric shock run throughout your body" | |
SLEEP 2 | |
center 9, "Your dead body tumbles to the floor" | |
deathMusic | |
game.over | |
END SUB | |
SUB dead.by.guard | |
COLOR 4 | |
CLS | |
center 5, "The guard of the caves catches you" | |
SLEEP 2 | |
center 7, "You try to shake free of his strong grasp but you can't get loose" | |
SLEEP 2 | |
center 9, "The guard devours you alive!!!" | |
deathMusic | |
game.over | |
END SUB | |
SUB dead.by.popper | |
CLS | |
COLOR 4 | |
center 5, "The popper jumps out of the ground and grabs you" | |
SLEEP 2 | |
center 7, "It growls at you and shows it's big sharp teeth" | |
SLEEP 2 | |
center 9, "You are terrified" | |
SLEEP 2 | |
center 11, "The popper opens it's mouth wide enough to swallow a horse" | |
SLEEP 2 | |
center 13, "It swallows you whole!!!" | |
deathMusic | |
game.over | |
END SUB | |
SUB dead.by.riddler | |
CLS | |
center 5, "Ha! Ha! Ha!" | |
SLEEP 2 | |
center 7, "We beat you, We beat you!!!" | |
SLEEP 2 | |
center 9, "Now you must feel our wrath..." | |
SLEEP 2 | |
center 11, "Suddenly a huge tornado slowly emerges from the ground" | |
SLEEP 2 | |
center 13, "It tears up the floor and sends you flying down" | |
SLEEP 2 | |
center 15, "into a never-ending pit..." | |
deathMusic | |
game.over | |
END SUB | |
SUB dead.by.spikes | |
CLS | |
COLOR 4 | |
center 5, "Suddenly a laser shoots out of the wall at you." | |
SLEEP 2 | |
center 7, "You feel it penetrate through your flesh and go into you." | |
SLEEP 2 | |
center 9, "You start to feel dizzy, you faint and fall over." | |
SLEEP 2 | |
center 11, "When you wake up you are on a table surrounded by guards." | |
SLEEP 2 | |
center 13, "Hey, why are they all holding that silverware?" | |
SLEEP 2 | |
deathMusic | |
game.over | |
END SUB | |
SUB deathMusic | |
m$ = "o1l20a-b-a-b-abab" | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
END SUB | |
SUB dedication | |
a = 19 | |
b = 21 | |
c = 24 | |
DO | |
e = e + 1 | |
a = a - 1 | |
b = b - 1 | |
c = c - 1 | |
IF e = 14 THEN e = 9 | |
COLOR e | |
center a, "This game is dedicated to" | |
center b, "my lovely, beautiful girlfriend..." | |
center c, "Priscilla" | |
IF a = 5 THEN SLEEP 3: GOTO end.of.dedication | |
FOR d = 1 TO 1000: NEXT d | |
center a, " " | |
center b, " " | |
center c, " " | |
LOOP | |
end.of.dedication: | |
SCREEN 12 | |
END SUB | |
SUB drawSpikes | |
LINE (305, 3)-(305, 460), 4 | |
LINE (3, 200)-(630, 200), 4 | |
END SUB | |
SUB drawSpikes2 | |
LINE (450, 3)-(450, 460), 4 | |
LINE (305, 3)-(305, 460), 4 | |
LINE (150, 3)-(150, 460), 4 | |
LINE (3, 100)-(630, 100), 4 | |
LINE (3, 200)-(630, 200), 4 | |
LINE (3, 295)-(630, 295), 4 | |
END SUB | |
SUB eraseSpikes | |
LINE (305, 0)-(305, 480), 0 | |
LINE (0, 200)-(680, 200), 0 | |
END SUB | |
SUB eraseSpikes2 | |
LINE (450, 3)-(450, 460), 0 | |
LINE (305, 3)-(305, 460), 0 | |
LINE (150, 3)-(150, 460), 0 | |
LINE (3, 100)-(630, 100), 0 | |
LINE (3, 200)-(630, 200), 0 | |
LINE (3, 295)-(630, 295), 0 | |
END SUB | |
SUB game.over | |
CLS | |
COLOR 4 | |
center 13, "G A M E O V E R" | |
SLEEP 2 | |
SYSTEM | |
END SUB | |
SUB game.won | |
border | |
CLS | |
COLOR guycolor | |
LOCATE 14, 40 | |
PRINT CHR$(157) | |
COLOR 3 | |
LOCATE 9, 40 | |
PRINT CHR$(157) | |
SLEEP 1 | |
center 5, "Thank you for collecting all of the diamonds and saving me" | |
SLEEP 2 | |
center 6, "from the clutches of the evil Dungeon Master!!!" | |
SLEEP 2 | |
CLS | |
COLOR 3 | |
LOCATE 9, 40 | |
PRINT CHR$(157) | |
COLOR guycolor | |
LOCATE 14, 40: PRINT " " | |
FOR x = 14 TO 10 STEP -1 | |
LOCATE x, 40: PRINT CHR$(157) | |
FOR a = 1 TO speed * 20: NEXT a | |
LOCATE x, 40: PRINT " " | |
NEXT x | |
LOCATE 10, 40: PRINT CHR$(157) | |
FOR a = 1 TO speed * 20: NEXT a | |
LOCATE 10, 40: PRINT " " | |
LOCATE 10, 39: PRINT CHR$(157) | |
FOR a = 1 TO speed * 20: NEXT a | |
LOCATE 10, 39: PRINT " " | |
LOCATE 10, 38: PRINT CHR$(157) | |
FOR a = 1 TO speed * 20: NEXT a | |
LOCATE 10, 38: PRINT " " | |
LOCATE 9, 38: PRINT CHR$(157) | |
FOR a = 1 TO speed * 100: NEXT a | |
COLOR 4 | |
LOCATE 7, 39: PRINT CHR$(3) | |
SLEEP 2 | |
LOCATE 14, 39 | |
PRINT CHR$(5) | |
center 16, "The Dungeon Master appears..." | |
SLEEP 2 | |
center 18, "You may have won for now," | |
SLEEP 2 | |
center 19, "But I will be back for revenge!!!" | |
SLEEP 2 | |
LOCATE 14, 39: PRINT " " | |
center 16, " " | |
center 18, " " | |
center 19, " " | |
PLAY "mbo1l4gcdebcfgabgefgccc" | |
FOR a = 1 TO 200 | |
COLOR RND * 15 | |
center 5, "T H E E N D " | |
NEXT a | |
END SUB | |
SUB get.color | |
CLS | |
border | |
COLOR 7 | |
center 5, "Choose your color" | |
guycolor = 1 | |
DO | |
IF guycolor = 1 THEN COLOR 1 ELSE COLOR 8 | |
center 7, "Blue" | |
IF guycolor = 2 THEN COLOR 2 ELSE COLOR 8 | |
center 8, "Green" | |
IF guycolor = 3 THEN COLOR 3 ELSE COLOR 8 | |
center 9, "Cyan" | |
IF guycolor = 4 THEN COLOR 4 ELSE COLOR 8 | |
center 10, "Red" | |
IF guycolor = 5 THEN COLOR 5 ELSE COLOR 8 | |
center 11, "Purple" | |
IF guycolor = 6 THEN COLOR 6 ELSE COLOR 8 | |
center 12, "Brown" | |
IF guycolor = 7 THEN COLOR 7 ELSE COLOR 8 | |
center 13, "White" | |
a$ = INKEY$ | |
IF a$ = CHR$(0) + "H" THEN guycolor = guycolor - 1 | |
IF a$ = CHR$(0) + "P" THEN guycolor = guycolor + 1 | |
IF a$ = CHR$(13) THEN GOTO got.the.color | |
IF guycolor = 0 THEN guycolor = 7 | |
IF guycolor = 8 THEN guycolor = 1 | |
LOOP | |
got.the.color: | |
END SUB | |
SUB get.guy.to.move (x, y) | |
a$ = INKEY$ | |
SELECT CASE a$ | |
CASE CHR$(0) + "H": direction = 1 | |
CASE CHR$(0) + "P": direction = 2 | |
CASE CHR$(0) + "K": direction = 3 | |
CASE CHR$(0) + "M": direction = 4 | |
CASE "": direction = 0 | |
CASE CHR$(27): quit | |
CASE ELSE | |
END SELECT | |
SELECT CASE direction | |
CASE 1: LOCATE x, y: PRINT " ": x = x - 1 | |
CASE 2: LOCATE x, y: PRINT " ": x = x + 1 | |
CASE 3: LOCATE x, y: PRINT " ": y = y - 1 | |
CASE 4: LOCATE x, y: PRINT " ": y = y + 1 | |
CASE 0: | |
END SELECT | |
END SUB | |
SUB get.speed | |
speed = 1000 | |
END SUB | |
SUB instructions | |
CLS | |
border | |
COLOR 4 | |
center 5, "OBJECT OF GAME:" | |
center 7, "The object of the game is to collect magic diamonds" | |
center 8, "in each section of the caves. To do this you must dodge" | |
center 9, "guards and solve puzzles. Once you have all of the diamonds" | |
center 10, "you can release your love from the spell of the evil" | |
center 11, "Dungeon Master." | |
DO: LOOP WHILE INKEY$ = "" | |
CLS | |
center 5, "HOW TO PLAY:" | |
center 7, "In this game you move around with the arrow keys." | |
center 9, "You are " | |
center 10, " " | |
center 12, "This common guard is " | |
center 13, " " | |
center 15, "You will also come across many other creatures" | |
center 17, "and guards througout your adventure." | |
DO: LOOP WHILE INKEY$ = "" | |
CLS | |
center 5, "HOW TO PLAY:" | |
center 7, "To move up press the up arrow key" | |
center 8, "To move down press the down arrow key" | |
center 9, "To move left press the left arrow key" | |
center 10, "To move right press the right arrow key" | |
center 12, "To pick up magic diamonds just move over them." | |
center 14, "To quit the game just press the Esc key." | |
DO: LOOP WHILE INKEY$ = "" | |
CLS | |
title | |
END SUB | |
SUB intermission1 | |
CLS | |
COLOR 4 | |
center 5, "The Dungeon Master appears..." | |
SLEEP 2 | |
COLOR 4 | |
center 7, "" | |
center 8, "So you think that you can defeat my dungeon?" | |
SLEEP 2 | |
COLOR 7 | |
center 10, "" | |
center 11, "Yes. I do. Nothing can stop me from saving Vai!!!" | |
SLEEP 2 | |
COLOR 4 | |
center 13, "" | |
center 14, "Is that what you think? Well you are wrong!!!" | |
m$ = "o1l20gdefgdefgdef" | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
congratulations | |
END SUB | |
SUB level.1 | |
CLS | |
border | |
COLOR 7 | |
a1 = 3 | |
b1 = 55 | |
a2 = 14 | |
b2 = 3 | |
a3 = 3 | |
b3 = 20 | |
a4 = 14 | |
b4 = 78 | |
m1 = 0 | |
m2 = 0 | |
x = 3 | |
y = 3 | |
s = 0 | |
m$ = "o1l20abcd" | |
DO | |
COLOR 7 | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
mt1 = mt1 + 1 | |
IF a1 = 27 THEN m1 = 1 | |
IF a1 = 2 THEN m1 = 0 | |
IF m1 = 0 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 1 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
mt2 = mt2 + 1 | |
IF b2 = 2 THEN m2 = 0 | |
IF b2 = 78 THEN m2 = 1 | |
IF m2 = 0 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": b2 = b2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF m2 = 1 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": b2 = b2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
mt3 = mt3 + 1 | |
IF a3 = 2 THEN m3 = 0 | |
IF a3 = 27 THEN m3 = 1 | |
IF m3 = 1 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 - 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF m3 = 0 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 + 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
mt4 = mt4 + 1 | |
IF b4 = 2 THEN m4 = 0 | |
IF b4 = 78 THEN m4 = 1 | |
IF m4 = 0 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": b4 = b4 + 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF m4 = 1 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": b4 = b4 - 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF s = 0 THEN LOCATE 5, 5: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 3, 60: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 20, 7: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 22, 63: PRINT CHR$(4) | |
IF s = 0 THEN IF x = 5 THEN IF y = 5 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 3 THEN IF y = 60 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 20 THEN IF y = 7 THEN PLAY m$: s = 3 | |
IF s = 3 THEN IF x = 22 THEN IF y = 63 THEN PLAY m$: s = 4 | |
IF s = 4 THEN LOCATE 14, 79: PRINT " " | |
IF x = a1 THEN IF y = b1 THEN dead.by.guard | |
IF x = a2 THEN IF y = b2 THEN dead.by.guard | |
IF x = a3 THEN IF y = b3 THEN dead.by.guard | |
IF x = a4 THEN IF y = b4 THEN dead.by.guard | |
get.guy.to.move x, y | |
IF s = 4 THEN IF x = 14 THEN IF y = 79 THEN 1 | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
1 | |
congratulations | |
END SUB | |
SUB level.2 | |
CLS | |
border | |
COLOR 7 | |
a1 = 14 | |
b1 = 10 | |
m1 = 0 | |
a2 = 2 | |
b2 = 20 | |
m2 = 0 | |
a3 = 7 | |
b3 = 30 | |
m3 = 0 | |
a4 = 27 | |
b4 = 40 | |
m4 = 0 | |
a5 = 9 | |
b5 = 50 | |
m5 = 0 | |
x = 14 | |
y = 3 | |
s = 0 | |
m$ = "o1l20abcd" | |
DO | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
mt1 = mt1 + 1 | |
IF a1 = 27 THEN m1 = 1 | |
IF a1 = 2 THEN m1 = 0 | |
IF m1 = 0 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 1 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
mt2 = mt2 + 1 | |
IF a2 = 27 THEN m2 = 1 | |
IF a2 = 2 THEN m2 = 0 | |
IF m2 = 0 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": a2 = a2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF m2 = 1 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": a2 = a2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
mt3 = mt3 + 1 | |
IF a3 = 27 THEN m3 = 1 | |
IF a3 = 2 THEN m3 = 0 | |
IF m3 = 0 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 + 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF m3 = 1 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 - 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
mt4 = mt4 + 1 | |
IF a4 = 27 THEN m4 = 1 | |
IF a4 = 2 THEN m4 = 0 | |
IF m4 = 0 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": a4 = a4 + 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF m4 = 1 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": a4 = a4 - 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
mt5 = mt5 + 1 | |
IF a5 = 27 THEN m5 = 1 | |
IF a5 = 2 THEN m5 = 0 | |
IF m5 = 0 THEN IF mt5 = 1 THEN LOCATE a5, b5: PRINT " ": a5 = a5 + 1: LOCATE a5, b5: PRINT CHR$(1): mt5 = 0 | |
IF m5 = 1 THEN IF mt5 = 1 THEN LOCATE a5, b5: PRINT " ": a5 = a5 - 1: LOCATE a5, b5: PRINT CHR$(1): mt5 = 0 | |
IF s = 0 THEN LOCATE 14, 70: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 12, 70: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 16, 70: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 14, 79: PRINT " " | |
IF s = 0 THEN IF x = 14 THEN IF y = 70 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 12 THEN IF y = 70 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 16 THEN IF y = 70 THEN PLAY m$: s = 3 | |
IF x = a1 THEN IF y = b1 THEN dead.by.guard | |
IF x = a2 THEN IF y = b2 THEN dead.by.guard | |
IF x = a3 THEN IF y = b3 THEN dead.by.guard | |
IF x = a4 THEN IF y = b4 THEN dead.by.guard | |
IF x = a5 THEN IF y = b5 THEN dead.by.guard | |
get.guy.to.move x, y | |
IF s = 3 THEN IF x = 14 THEN IF y = 79 THEN 2 | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
2 | |
congratulations | |
END SUB | |
SUB level.3 | |
CLS | |
border | |
FOR a = 1 TO 13 | |
LOCATE a, 40 | |
PRINT CHR$(219) | |
NEXT a | |
FOR a = 15 TO 28 | |
LOCATE a, 40 | |
PRINT CHR$(219) | |
NEXT a | |
COLOR 7 | |
a1 = 3 | |
b1 = 55 | |
m1 = 0 | |
a2 = 3 | |
b2 = 20 | |
m2 = 0 | |
a3 = 18 | |
b3 = 3 | |
m3 = 0 | |
a4 = 10 | |
b4 = 78 | |
m4 = 0 | |
a5 = 14 | |
b5 = 2 | |
m5 = 0 | |
x = 3 | |
y = 3 | |
s = 0 | |
m$ = "o1l20abcd" | |
DO | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
mt1 = mt1 + 1 | |
IF a1 = 27 THEN m1 = 1 | |
IF a1 = 2 THEN m1 = 0 | |
IF m1 = 0 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 1 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
mt2 = mt2 + 1 | |
IF a2 = 27 THEN m2 = 1 | |
IF a2 = 2 THEN m2 = 0 | |
IF m2 = 0 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": a2 = a2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF m2 = 1 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": a2 = a2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
mt3 = mt3 + 1 | |
IF b3 = 39 THEN m3 = 0 | |
IF b3 = 2 THEN m3 = 1 | |
IF m3 = 1 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": b3 = b3 + 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF m3 = 0 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": b3 = b3 - 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
mt4 = mt4 + 1 | |
IF b4 = 78 THEN m4 = 0 | |
IF b4 = 41 THEN m4 = 1 | |
IF m4 = 0 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": b4 = b4 - 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF m4 = 1 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": b4 = b4 + 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
mt5 = mt5 + 1 | |
IF b5 = 78 THEN m5 = 0 | |
IF b5 = 2 THEN m5 = 1 | |
IF m5 = 0 THEN IF mt5 = 1 THEN LOCATE a5, b5: PRINT " ": b5 = b5 - 1: LOCATE a5, b5: PRINT CHR$(1): mt5 = 0 | |
IF m5 = 1 THEN IF mt5 = 1 THEN LOCATE a5, b5: PRINT " ": b5 = b5 + 1: LOCATE a5, b5: PRINT CHR$(1): mt5 = 0 | |
IF s = 0 THEN LOCATE 25, 32: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 3, 70: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 25, 70: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 5, 5: PRINT CHR$(4) | |
IF s = 0 THEN IF x = 25 THEN IF y = 32 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 3 THEN IF y = 70 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 25 THEN IF y = 70 THEN PLAY m$: s = 3 | |
IF s = 3 THEN IF x = 5 THEN IF y = 5 THEN PLAY m$: s = 4 | |
IF s = 4 THEN LOCATE 14, 79: PRINT " " | |
IF x = a1 THEN IF y = b1 THEN dead.by.guard | |
IF x = a2 THEN IF y = b2 THEN dead.by.guard | |
IF x = a3 THEN IF y = b3 THEN dead.by.guard | |
IF x = a4 THEN IF y = b4 THEN dead.by.guard | |
IF x = a5 THEN IF y = b5 THEN dead.by.guard | |
IF x < 14 THEN IF y = 40 THEN dead.by.electricwall | |
IF x > 14 THEN IF y = 40 THEN dead.by.electricwall | |
get.guy.to.move x, y | |
IF s = 4 THEN IF x = 14 THEN IF y = 79 THEN 3 | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
3 | |
intermission1 | |
END SUB | |
SUB level.4 | |
CLS | |
border | |
FOR row = 1 TO 5 | |
LOCATE row, 65 | |
PRINT CHR$(219) | |
NEXT row | |
FOR row = 1 TO 5 | |
LOCATE row, 75 | |
PRINT CHR$(219) | |
NEXT row | |
FOR col = 65 TO 75 | |
LOCATE 5, col | |
PRINT CHR$(219) | |
NEXT col | |
FOR row = 28 TO 24 STEP -1 | |
LOCATE row, 65 | |
PRINT CHR$(219) | |
NEXT row | |
FOR row = 28 TO 24 STEP -1 | |
LOCATE row, 75 | |
PRINT CHR$(219) | |
NEXT row | |
FOR col = 65 TO 75 | |
LOCATE 24, col | |
PRINT CHR$(219) | |
NEXT col | |
COLOR 7 | |
a1 = 3 | |
b1 = 55 | |
a2 = 27 | |
b2 = 54 | |
a3 = 3 | |
b3 = 53 | |
a4 = 27 | |
b4 = 52 | |
a5 = 3 | |
b5 = 51 | |
a6 = 27 | |
b6 = 50 | |
a7 = 3 | |
b7 = 49 | |
a8 = 27 | |
b8 = 48 | |
a9 = 3 | |
b9 = 47 | |
x = 3 | |
y = 3 | |
s = 0 | |
r = 0 | |
b = 0 | |
m$ = "o1l20abcd" | |
DO | |
answered.riddle.4: | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
mt1 = mt1 + 1 | |
IF a1 = 27 THEN m1 = 1 | |
IF a1 = 2 THEN m1 = 0 | |
IF m1 = 0 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(2): mt1 = 0 | |
IF m1 = 1 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(2): mt1 = 0 | |
mt2 = mt2 + 1 | |
IF a2 = 27 THEN m2 = 1 | |
IF a2 = 2 THEN m2 = 0 | |
IF m2 = 0 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": a2 = a2 + 1: LOCATE a2, b2: PRINT CHR$(2): mt2 = 0 | |
IF m2 = 1 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": a2 = a2 - 1: LOCATE a2, b2: PRINT CHR$(2): mt2 = 0 | |
mt3 = mt3 + 1 | |
IF a3 = 27 THEN m3 = 1 | |
IF a3 = 2 THEN m3 = 0 | |
IF m3 = 0 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 + 1: LOCATE a3, b3: PRINT CHR$(2): mt3 = 0 | |
IF m3 = 1 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 - 1: LOCATE a3, b3: PRINT CHR$(2): mt3 = 0 | |
mt4 = mt4 + 1 | |
IF a4 = 27 THEN m4 = 1 | |
IF a4 = 2 THEN m4 = 0 | |
IF m4 = 0 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": a4 = a4 + 1: LOCATE a4, b4: PRINT CHR$(2): mt4 = 0 | |
IF m4 = 1 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": a4 = a4 - 1: LOCATE a4, b4: PRINT CHR$(2): mt4 = 0 | |
mt5 = mt5 + 1 | |
IF a5 = 27 THEN m5 = 1 | |
IF a5 = 2 THEN m5 = 0 | |
IF m5 = 0 THEN IF mt5 = 1 THEN LOCATE a5, b5: PRINT " ": a5 = a5 + 1: LOCATE a5, b5: PRINT CHR$(2): mt5 = 0 | |
IF m5 = 1 THEN IF mt5 = 1 THEN LOCATE a5, b5: PRINT " ": a5 = a5 - 1: LOCATE a5, b5: PRINT CHR$(2): mt5 = 0 | |
mt6 = mt6 + 1 | |
IF a6 = 27 THEN m6 = 1 | |
IF a6 = 2 THEN m6 = 0 | |
IF m6 = 0 THEN IF mt6 = 1 THEN LOCATE a6, b6: PRINT " ": a6 = a6 + 1: LOCATE a6, b6: PRINT CHR$(2): mt6 = 0 | |
IF m6 = 1 THEN IF mt6 = 1 THEN LOCATE a6, b6: PRINT " ": a6 = a6 - 1: LOCATE a6, b6: PRINT CHR$(2): mt6 = 0 | |
mt7 = mt7 + 1 | |
IF a7 = 27 THEN m7 = 1 | |
IF a7 = 2 THEN m7 = 0 | |
IF m7 = 0 THEN IF mt7 = 1 THEN LOCATE a7, b7: PRINT " ": a7 = a7 + 1: LOCATE a7, b7: PRINT CHR$(2): mt7 = 0 | |
IF m7 = 1 THEN IF mt7 = 1 THEN LOCATE a7, b7: PRINT " ": a7 = a7 - 1: LOCATE a7, b7: PRINT CHR$(2): mt7 = 0 | |
mt8 = mt8 + 1 | |
IF a8 = 27 THEN m8 = 1 | |
IF a8 = 2 THEN m8 = 0 | |
IF m8 = 0 THEN IF mt8 = 1 THEN LOCATE a8, b8: PRINT " ": a8 = a8 + 1: LOCATE a8, b8: PRINT CHR$(2): mt8 = 0 | |
IF m8 = 1 THEN IF mt8 = 1 THEN LOCATE a8, b8: PRINT " ": a8 = a8 - 1: LOCATE a8, b8: PRINT CHR$(2): mt8 = 0 | |
mt9 = mt9 + 1 | |
IF a9 = 27 THEN m9 = 1 | |
IF a9 = 2 THEN m9 = 0 | |
IF m9 = 0 THEN IF mt9 = 1 THEN LOCATE a9, b9: PRINT " ": a9 = a9 + 1: LOCATE a9, b9: PRINT CHR$(2): mt9 = 0 | |
IF m9 = 1 THEN IF mt9 = 1 THEN LOCATE a9, b9: PRINT " ": a9 = a9 - 1: LOCATE a9, b9: PRINT CHR$(2): mt9 = 0 | |
IF d1 = 0 THEN LOCATE 14, 30: PRINT CHR$(4) | |
IF d2 = 0 THEN LOCATE 3, 70: PRINT CHR$(4) | |
IF d3 = 0 THEN LOCATE 26, 70: PRINT CHR$(4) | |
IF d1 = 0 THEN IF x = 14 THEN IF y = 30 THEN PLAY m$: s = s + 1: d1 = 1 | |
IF d2 = 0 THEN IF x = 3 THEN IF y = 70 THEN PLAY m$: s = s + 1: d2 = 1 | |
IF d3 = 0 THEN IF x = 26 THEN IF y = 70 THEN PLAY m$: s = s + 1: d3 = 1 | |
IF d1 = 1 THEN IF d2 = 1 THEN IF d3 = 1 THEN LOCATE 14, 79: PRINT " " | |
IF r = 0 THEN LOCATE 14, 29: PRINT CHR$(21) | |
IF r = 0 THEN LOCATE 14, 31: PRINT CHR$(21) | |
IF r = 0 THEN LOCATE 13, 30: PRINT CHR$(21) | |
IF r = 0 THEN LOCATE 15, 30: PRINT CHR$(21) | |
IF r = 0 THEN IF x = 14 THEN IF y = 29 THEN GOTO riddlers.4 | |
IF r = 0 THEN IF x = 14 THEN IF y = 31 THEN GOTO riddlers.4 | |
IF r = 0 THEN IF x = 13 THEN IF y = 30 THEN GOTO riddlers.4 | |
IF r = 0 THEN IF x = 15 THEN IF y = 30 THEN GOTO riddlers.4 | |
IF x = a1 THEN IF y = b1 THEN dead.by.guard | |
IF x = a2 THEN IF y = b2 THEN dead.by.guard | |
IF x = a3 THEN IF y = b3 THEN dead.by.guard | |
IF x = a4 THEN IF y = b4 THEN dead.by.guard | |
IF x = a5 THEN IF y = b5 THEN dead.by.guard | |
get.guy.to.move x, y | |
IF d1 = 1 THEN IF d2 = 1 THEN IF d3 = 1 THEN IF x = 14 THEN IF y = 79 THEN 4 | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
LOOP | |
riddlers.4: | |
CLS | |
COLOR 4 | |
center 5, "We are the riddlers!!!" | |
SLEEP 2 | |
center 7, "If you want you're precious diamond you must answer a question" | |
SLEEP 2 | |
center 9, "You get one chance to answer one question!!!" | |
SLEEP 2 | |
center 11, "The question is..." | |
SLEEP 2 | |
center 13, "Who is the owner of this cave?" | |
center 15, "1 The Dungeon Keeper" | |
center 16, "2 The Dungeon Master" | |
center 17, "3 The Dungeon Guy " | |
center 18, "4 The Dungeon Guru " | |
DO | |
a$ = INKEY$ | |
IF a$ = "1" THEN dead.by.riddler | |
IF a$ = "2" THEN CLS : COLOR 7: r = 1: GOTO answered.riddle.4 | |
IF a$ = "3" THEN dead.by.riddler | |
IF a$ = "4" THEN dead.by.riddler | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
4 | |
congratulations | |
END SUB | |
SUB level.5 | |
CLS | |
border | |
COLOR 7 | |
x = 3 | |
y = 3 | |
s = 0 | |
a = 14 | |
b = 60 | |
m$ = "o1l20abcd" | |
DO | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
m = m + 1 | |
IF m = 80 THEN LOCATE a, b: PRINT " " | |
IF m = 80 THEN a = INT(RND(1) * 26) + 2 | |
IF m = 80 THEN b = INT(RND(1) * 77) + 2: m = 0 | |
LOCATE a, b | |
PRINT CHR$(15) | |
IF s = 0 THEN LOCATE 14, 5: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 16, 20: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 5, 40: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 22, 60: PRINT CHR$(4) | |
IF s = 0 THEN IF x = 14 THEN IF y = 5 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 16 THEN IF y = 20 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 5 THEN IF y = 40 THEN PLAY m$: s = 3 | |
IF s = 3 THEN IF x = 22 THEN IF y = 60 THEN PLAY m$: s = 4 | |
IF s = 4 THEN LOCATE 28, 60: PRINT " " | |
IF x = a THEN IF y = b THEN FOR t = 1 TO 1000: NEXT t: dead.by.popper | |
get.guy.to.move x, y | |
IF s = 4 THEN IF x = 28 THEN IF y = 60 THEN 5 | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
5 | |
congratulations | |
END SUB | |
SUB level.6 | |
CLS | |
border | |
COLOR 8 | |
FOR x = 1 TO 28 | |
LOCATE x, 20 | |
PRINT CHR$(219) | |
NEXT x | |
FOR x = 1 TO 28 | |
LOCATE x, 60 | |
PRINT CHR$(219) | |
NEXT x | |
COLOR 2 | |
LOCATE 14, 20 | |
PRINT CHR$(219) | |
COLOR 9 | |
LOCATE 14, 60 | |
PRINT CHR$(219) | |
COLOR 7 | |
x = 14 | |
y = 3 | |
s = 0 | |
a1 = 4 | |
b1 = 7 | |
a2 = 19 | |
b2 = 39 | |
green.key = 0 | |
blue.key = 0 | |
m$ = "o1l20abcd" | |
DO | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
mt1 = mt1 + 1 | |
IF a1 = 4 THEN IF b1 = 9 THEN m1 = 1 | |
IF a1 = 6 THEN IF b1 = 9 THEN m1 = 0 | |
IF a1 = 6 THEN IF b1 = 11 THEN m1 = 2 | |
IF a1 = 4 THEN IF b1 = 11 THEN m1 = 3 | |
IF m1 = 0 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": b1 = b1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 1 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 2 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 3 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": b1 = b1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
mt2 = mt2 + 1 | |
IF a2 = 19 THEN IF b2 = 39 THEN m2 = 1 | |
IF a2 = 21 THEN IF b2 = 39 THEN m2 = 0 | |
IF a2 = 21 THEN IF b2 = 41 THEN m2 = 2 | |
IF a2 = 19 THEN IF b2 = 41 THEN m2 = 3 | |
IF m2 = 0 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": b2 = b2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF m2 = 1 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": a2 = a2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF m2 = 2 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": a2 = a2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF m2 = 3 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": b2 = b2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF green.key = 0 THEN LOCATE 5, 10: COLOR 2: PRINT CHR$(22) | |
IF blue.key = 0 THEN LOCATE 20, 40: COLOR 9: PRINT CHR$(22): COLOR 7 | |
IF green.key = 0 THEN IF x = 5 THEN IF y = 10 THEN green.key = 1: PLAY m$ | |
IF blue.key = 0 THEN IF x = 20 THEN IF y = 40 THEN blue.key = 1: PLAY m$ | |
IF green.key = 0 THEN IF x = 14 THEN IF y = 20 THEN dead.by.electricwall | |
IF blue.key = 0 THEN IF x = 14 THEN IF y = 60 THEN dead.by.electricwall | |
IF s = 0 THEN LOCATE 14, 15: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 14, 30: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 14, 45: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 14, 65: PRINT CHR$(4) | |
IF s = 4 THEN LOCATE 14, 40: PRINT CHR$(4) | |
IF s = 0 THEN IF x = 14 THEN IF y = 15 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 14 THEN IF y = 30 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 14 THEN IF y = 45 THEN PLAY m$: s = 3 | |
IF s = 3 THEN IF x = 14 THEN IF y = 65 THEN PLAY m$: s = 4 | |
IF s = 4 THEN IF x = 14 THEN IF y = 40 THEN PLAY m$: s = 5 | |
IF s = 5 THEN 6 | |
IF x = a1 THEN IF y = b1 THEN dead.by.guard | |
IF x = a2 THEN IF y = b2 THEN dead.by.guard | |
IF y = 20 THEN IF x > 0 THEN IF x < 14 THEN dead.by.electricwall | |
IF y = 20 THEN IF x < 80 THEN IF x > 14 THEN dead.by.electricwall | |
IF y = 60 THEN IF x > 0 THEN IF x < 14 THEN dead.by.electricwall | |
IF y = 60 THEN IF x < 80 THEN IF x > 14 THEN dead.by.electricwall | |
get.guy.to.move x, y | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
6 | |
CLS | |
LOCATE 5, 40 | |
COLOR 4: PRINT "": COLOR 4 | |
LOCATE 14, 40 | |
COLOR guycolor: PRINT CHR$(157): COLOR 4 | |
FOR a# = 1 TO speed * 100: NEXT a# | |
center 7, "You are doing better than I expected." | |
SLEEP 2 | |
center 9, "You are still no match for my caves!" | |
SLEEP 2 | |
m$ = "o1l20gdefgdefgdef" | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
PLAY m$ | |
congratulations | |
END SUB | |
SUB level.7 | |
CLS | |
border | |
COLOR 7 | |
a1 = 4 | |
b1 = 9 | |
a2 = 4 | |
b2 = 70 | |
a3 = 19 | |
b3 = 9 | |
a4 = 19 | |
b4 = 70 | |
a5 = 14 | |
b5 = 60 | |
a6 = 6 | |
b6 = 5 | |
a7 = 22 | |
b7 = 70 | |
spikes = 0 | |
x = 3 | |
y = 3 | |
s = 0 | |
m$ = "o1l20abcd" | |
DO | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
spikes = spikes + 1 | |
IF spikes = 100 THEN drawSpikes | |
IF spikes = 110 THEN eraseSpikes: spikes = 0 | |
IF spikes >= 100 THEN IF spikes <= 110 THEN IF x = 14 OR y = 40 THEN dead.by.spikes | |
m5 = m5 + 1 | |
IF m5 = 80 THEN LOCATE a5, b5: PRINT " " | |
IF m5 = 80 THEN a5 = INT(RND(1) * 26) + 2 | |
IF m5 = 80 THEN b5 = INT(RND(1) * 77) + 2: m5 = 0 | |
LOCATE a5, b5 | |
PRINT CHR$(15) | |
m6 = m6 + 1 | |
IF m6 = 80 THEN LOCATE a6, b6: PRINT " " | |
IF m6 = 80 THEN a6 = INT(RND(1) * 26) + 2 | |
IF m6 = 80 THEN b6 = INT(RND(1) * 77) + 2: m6 = 0 | |
LOCATE a6, b6 | |
PRINT CHR$(15) | |
m7 = m7 + 1 | |
IF m7 = 80 THEN LOCATE a7, b7: PRINT " " | |
IF m7 = 80 THEN a7 = INT(RND(1) * 26) + 2 | |
IF m7 = 80 THEN b7 = INT(RND(1) * 77) + 2: m7 = 0 | |
LOCATE a7, b7 | |
PRINT CHR$(15) | |
IF s = 0 THEN mt1 = mt1 + 1 | |
IF s = 0 THEN IF a1 = 6 THEN IF b1 = 9 THEN m1 = 0 | |
IF s = 0 THEN IF a1 = 4 THEN IF b1 = 9 THEN m1 = 1 | |
IF s = 0 THEN IF a1 = 6 THEN IF b1 = 11 THEN m1 = 2 | |
IF s = 0 THEN IF a1 = 4 THEN IF b1 = 11 THEN m1 = 3 | |
IF s = 0 THEN IF m1 = 0 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": b1 = b1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF s = 0 THEN IF m1 = 1 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF s = 0 THEN IF m1 = 2 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF s = 0 THEN IF m1 = 3 THEN IF mt1 = 3 THEN LOCATE a1, b1: PRINT " ": b1 = b1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF s = 1 THEN mt2 = mt2 + 1 | |
IF s = 1 THEN IF a2 = 6 THEN IF b2 = 70 THEN m2 = 0 | |
IF s = 1 THEN IF a2 = 4 THEN IF b2 = 70 THEN m2 = 1 | |
IF s = 1 THEN IF a2 = 6 THEN IF b2 = 72 THEN m2 = 2 | |
IF s = 1 THEN IF a2 = 4 THEN IF b2 = 72 THEN m2 = 3 | |
IF s = 1 THEN IF m2 = 0 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": b2 = b2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF s = 1 THEN IF m2 = 1 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": a2 = a2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF s = 1 THEN IF m2 = 2 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": a2 = a2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF s = 1 THEN IF m2 = 3 THEN IF mt2 = 3 THEN LOCATE a2, b2: PRINT " ": b2 = b2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF s = 2 THEN mt3 = mt3 + 1 | |
IF s = 2 THEN IF a3 = 21 THEN IF b3 = 9 THEN m3 = 0 | |
IF s = 2 THEN IF a3 = 19 THEN IF b3 = 9 THEN m3 = 1 | |
IF s = 2 THEN IF a3 = 21 THEN IF b3 = 11 THEN m3 = 2 | |
IF s = 2 THEN IF a3 = 19 THEN IF b3 = 11 THEN m3 = 3 | |
IF s = 2 THEN IF m3 = 0 THEN IF mt3 = 3 THEN LOCATE a3, b3: PRINT " ": b3 = b3 + 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF s = 2 THEN IF m3 = 1 THEN IF mt3 = 3 THEN LOCATE a3, b3: PRINT " ": a3 = a3 + 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF s = 2 THEN IF m3 = 2 THEN IF mt3 = 3 THEN LOCATE a3, b3: PRINT " ": a3 = a3 - 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF s = 2 THEN IF m3 = 3 THEN IF mt3 = 3 THEN LOCATE a3, b3: PRINT " ": b3 = b3 - 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF s = 3 THEN mt4 = mt4 + 1 | |
IF s = 3 THEN IF a4 = 21 THEN IF b4 = 70 THEN m4 = 0 | |
IF s = 3 THEN IF a4 = 19 THEN IF b4 = 70 THEN m4 = 1 | |
IF s = 3 THEN IF a4 = 21 THEN IF b4 = 72 THEN m4 = 2 | |
IF s = 3 THEN IF a4 = 19 THEN IF b4 = 72 THEN m4 = 3 | |
IF s = 3 THEN IF m4 = 0 THEN IF mt4 = 3 THEN LOCATE a4, b4: PRINT " ": b4 = b4 + 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF s = 3 THEN IF m4 = 1 THEN IF mt4 = 3 THEN LOCATE a4, b4: PRINT " ": a4 = a4 + 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF s = 3 THEN IF m4 = 2 THEN IF mt4 = 3 THEN LOCATE a4, b4: PRINT " ": a4 = a4 - 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF s = 3 THEN IF m4 = 3 THEN IF mt4 = 3 THEN LOCATE a4, b4: PRINT " ": b4 = b4 - 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF s = 0 THEN LOCATE 5, 10: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 5, 71: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 20, 10: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 20, 71: PRINT CHR$(4) | |
IF s = 0 THEN IF x = 5 THEN IF y = 10 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 5 THEN IF y = 71 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 20 THEN IF y = 10 THEN PLAY m$: s = 3 | |
IF s = 3 THEN IF x = 20 THEN IF y = 71 THEN PLAY m$: s = 4 | |
IF s = 4 THEN LOCATE 14, 79: PRINT " " | |
IF x = a1 THEN IF y = b1 THEN dead.by.guard | |
IF x = a2 THEN IF y = b2 THEN dead.by.guard | |
IF x = a3 THEN IF y = b3 THEN dead.by.guard | |
IF x = a4 THEN IF y = b4 THEN dead.by.guard | |
IF x = a5 THEN IF y = b5 THEN dead.by.popper | |
IF x = a6 THEN IF y = b6 THEN dead.by.popper | |
IF x = a7 THEN IF y = b7 THEN dead.by.popper | |
get.guy.to.move x, y | |
IF s = 4 THEN IF x = 14 THEN IF y = 79 THEN 7 | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
7 | |
congratulations | |
END SUB | |
SUB level.8 | |
CLS | |
border | |
COLOR 7 | |
a5 = 14 | |
b5 = 60 | |
a6 = 6 | |
b6 = 5 | |
a7 = 22 | |
b7 = 70 | |
a8 = 20 | |
b8 = 55 | |
m = 50 | |
x = 3 | |
y = 3 | |
s = 0 | |
spikes = 50 | |
m$ = "o1l20abcd" | |
DO | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
spikes = spikes + 1 | |
IF spikes = 70 THEN drawSpikes2 | |
IF spikes = 80 THEN eraseSpikes2: spikes = 0 | |
m = m + 1 | |
IF m = 80 THEN LOCATE a5, b5: PRINT " " | |
IF m = 80 THEN a5 = INT(RND(1) * 26) + 2 | |
IF m = 80 THEN b5 = INT(RND(1) * 77) + 2 | |
LOCATE a5, b5 | |
PRINT CHR$(15) | |
IF m = 80 THEN LOCATE a6, b6: PRINT " " | |
IF m = 80 THEN a6 = INT(RND(1) * 26) + 2 | |
IF m = 80 THEN b6 = INT(RND(1) * 77) + 2 | |
LOCATE a6, b6 | |
PRINT CHR$(15) | |
IF m = 80 THEN LOCATE a7, b7: PRINT " " | |
IF m = 80 THEN a7 = INT(RND(1) * 26) + 2 | |
IF m = 80 THEN b7 = INT(RND(1) * 77) + 2 | |
LOCATE a7, b7 | |
PRINT CHR$(15) | |
IF m = 80 THEN LOCATE a8, b8: PRINT " " | |
IF m = 80 THEN a8 = INT(RND(1) * 26) + 2 | |
IF m = 80 THEN b8 = INT(RND(1) * 77) + 2: m = 0 | |
LOCATE a8, b8 | |
PRINT CHR$(15) | |
IF s = 0 THEN LOCATE 10, 7: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 16, 25: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 24, 45: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 10, 51: PRINT CHR$(4) | |
IF s = 4 THEN LOCATE 18, 70: PRINT CHR$(4) | |
IF s = 5 THEN LOCATE 18, 79: PRINT " " | |
IF s = 0 THEN IF x = 10 THEN IF y = 7 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 16 THEN IF y = 25 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 24 THEN IF y = 45 THEN PLAY m$: s = 3 | |
IF s = 3 THEN IF x = 10 THEN IF y = 51 THEN PLAY m$: s = 4 | |
IF s = 4 THEN IF x = 18 THEN IF y = 70 THEN PLAY m$: s = 5 | |
IF x = a5 THEN IF y = b5 THEN dead.by.popper | |
IF x = a6 THEN IF y = b6 THEN dead.by.popper | |
IF x = a7 THEN IF y = b7 THEN dead.by.popper | |
IF x = a8 THEN IF y = b8 THEN dead.by.popper | |
IF spikes >= 70 THEN IF spikes <= 80 THEN IF x = 14 OR x = 8 OR x = 20 OR y = 20 OR y = 40 OR y = 58 THEN dead.by.spikes | |
get.guy.to.move x, y | |
IF s = 5 THEN IF x = 18 THEN IF y = 79 THEN GOTO 8 | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 79 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
8 | |
congratulations | |
END SUB | |
SUB level.9 | |
CLS | |
border | |
COLOR 7 | |
a1 = 3 | |
b1 = 55 | |
a2 = 15 | |
b2 = 3 | |
a3 = 3 | |
b3 = 20 | |
a4 = 15 | |
b4 = 78 | |
a5 = 15 | |
b5 = 60 | |
a6 = 6 | |
b6 = 5 | |
a7 = 22 | |
b7 = 70 | |
a8 = 20 | |
b8 = 55 | |
a9 = 20 | |
b9 = 70 | |
x = 3 | |
y = 3 | |
m$ = "o1l20abcd" | |
DO | |
COLOR 7 | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
IF s < 4 THEN GOTO draw.guard ELSE GOTO guard.gone | |
draw.guard: | |
spikes = spikes + 1 | |
IF spikes >= 30 THEN drawSpikes | |
IF spikes = 50 THEN eraseSpikes: spikes = 0 | |
IF spikes >= 30 THEN IF spikes <= 50 THEN IF x = 14 OR y = 40 THEN dead.by.spikes | |
mt1 = mt1 + 1 | |
IF a1 = 27 THEN m1 = 1 | |
IF a1 = 2 THEN m1 = 0 | |
IF m1 = 0 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 1 THEN IF mt1 = 1 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
mt2 = mt2 + 1 | |
IF b2 = 2 THEN m2 = 0 | |
IF b2 = 78 THEN m2 = 1 | |
IF m2 = 0 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": b2 = b2 + 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
IF m2 = 1 THEN IF mt2 = 1 THEN LOCATE a2, b2: PRINT " ": b2 = b2 - 1: LOCATE a2, b2: PRINT CHR$(1): mt2 = 0 | |
mt3 = mt3 + 1 | |
IF a3 = 2 THEN m3 = 0 | |
IF a3 = 27 THEN m3 = 1 | |
IF m3 = 1 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 - 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
IF m3 = 0 THEN IF mt3 = 1 THEN LOCATE a3, b3: PRINT " ": a3 = a3 + 1: LOCATE a3, b3: PRINT CHR$(1): mt3 = 0 | |
mt4 = mt4 + 1 | |
IF b4 = 2 THEN m4 = 0 | |
IF b4 = 78 THEN m4 = 1 | |
IF m4 = 0 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": b4 = b4 + 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
IF m4 = 1 THEN IF mt4 = 1 THEN LOCATE a4, b4: PRINT " ": b4 = b4 - 1: LOCATE a4, b4: PRINT CHR$(1): mt4 = 0 | |
m = m + 1 | |
IF m = 30 THEN LOCATE a5, b5: PRINT " " | |
IF m = 30 THEN a5 = INT(RND(1) * 26) + 2 | |
IF m = 30 THEN b5 = INT(RND(1) * 77) + 2 | |
LOCATE a5, b5 | |
PRINT CHR$(15) | |
IF m = 30 THEN LOCATE a6, b6: PRINT " " | |
IF m = 30 THEN a6 = INT(RND(1) * 26) + 2 | |
IF m = 30 THEN b6 = INT(RND(1) * 77) + 2 | |
LOCATE a6, b6 | |
PRINT CHR$(15) | |
IF m = 30 THEN LOCATE a7, b7: PRINT " " | |
IF m = 30 THEN a7 = INT(RND(1) * 26) + 2 | |
IF m = 30 THEN b7 = INT(RND(1) * 77) + 2 | |
LOCATE a7, b7 | |
PRINT CHR$(15) | |
IF m = 30 THEN LOCATE a8, b8: PRINT " " | |
IF m = 30 THEN a8 = INT(RND(1) * 26) + 2 | |
IF m = 30 THEN b8 = INT(RND(1) * 77) + 2: m = 0 | |
LOCATE a8, b8 | |
PRINT CHR$(15) | |
IF m = 30 THEN LOCATE a9, b9: PRINT " " | |
IF m = 30 THEN a9 = INT(RND(1) * 26) + 2 | |
IF m = 30 THEN b9 = INT(RND(1) * 77) + 2: m = 0 | |
LOCATE a9, b9 | |
PRINT CHR$(15) | |
IF x = a1 THEN IF y = b1 THEN dead.by.guard | |
IF x = a2 THEN IF y = b2 THEN dead.by.guard | |
IF x = a3 THEN IF y = b3 THEN dead.by.guard | |
IF x = a4 THEN IF y = b4 THEN dead.by.guard | |
IF x = a5 THEN IF y = b5 THEN dead.by.popper | |
IF x = a6 THEN IF y = b6 THEN dead.by.popper | |
IF x = a7 THEN IF y = b7 THEN dead.by.popper | |
IF x = a8 THEN IF y = b8 THEN dead.by.popper | |
IF x = a9 THEN IF y = b9 THEN dead.by.popper | |
guard.gone: | |
IF s > 3 THEN IF spikes >= 30 THEN spikes = 0: CLS | |
IF s = 0 THEN LOCATE 5, 5: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 3, 60: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 20, 7: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 22, 63: PRINT CHR$(4) | |
IF s = 4 THEN LOCATE 14, 40: PRINT CHR$(4) | |
IF s = 0 THEN IF x = 5 THEN IF y = 5 THEN PLAY m$: s = 1 | |
IF s = 1 THEN IF x = 3 THEN IF y = 60 THEN PLAY m$: s = 2 | |
IF s = 2 THEN IF x = 20 THEN IF y = 7 THEN PLAY m$: s = 3 | |
IF s = 3 THEN IF x = 22 THEN IF y = 63 THEN PLAY m$: s = 4: CLS | |
IF s = 4 THEN IF x = 14 THEN IF y = 40 THEN PLAY m$: PLAY m$: PLAY m$: PLAY m$: PLAY m$: PLAY m$: PLAY m$: PLAY m$: CLS : GOTO 9 | |
get.guy.to.move x, y | |
IF x = 1 THEN x = 2 | |
IF x = 28 THEN x = 27 | |
IF y = 1 THEN y = 2 | |
IF y = 79 THEN y = 78 | |
FOR a# = 1 TO speed: NEXT a# | |
LOOP | |
9 | |
game.won | |
END SUB | |
SUB levelstarter | |
CLS | |
border | |
COLOR 7 | |
a1 = 3 | |
b1 = 55 | |
m1 = 0 | |
x = 3 | |
y = 3 | |
s = 0 | |
m$ = "o1l20abcd" | |
DO | |
LOCATE x, y | |
COLOR guycolor: PRINT CHR$(157): COLOR 7 | |
mt1 = mt1 + 1 | |
IF a1 = 27 THEN m1 = 1 | |
IF a1 = 2 THEN m1 = 0 | |
IF m1 = 0 THEN IF mt1 = 2 THEN LOCATE a1, b1: PRINT " ": a1 = a1 + 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF m1 = 1 THEN IF mt1 = 2 THEN LOCATE a1, b1: PRINT " ": a1 = a1 - 1: LOCATE a1, b1: PRINT CHR$(1): mt1 = 0 | |
IF s = 0 THEN LOCATE 5, 5: PRINT CHR$(4) | |
IF s = 1 THEN LOCATE 3, 60: PRINT CHR$(4) | |
IF s = 2 THEN LOCATE 20, 7: PRINT CHR$(4) | |
IF s = 3 THEN LOCATE 22, 63: PRINT CHR$(4) | |
a$ = INKEY$ | |
IF a$ = "8" THEN LOCATE x, y: PRINT " ": x = x - 1 | |
IF a$ = "4" THEN LOCATE x, y: PRINT " ": y = y - 1 | |
IF a$ = "2" THEN LOCATE x, y: PRINT " ": x = x + 1 | |
IF a$ = "6" THEN LOCATE x, y: PRINT " ": y = y + 1 | |
IF a$ = CHR$(27) THEN SYSTEM | |
LOOP | |
congratulations | |
END SUB | |
SUB monsterInfo | |
border | |
CLS | |
COLOR 2 | |
center 5, "MONSTER CODE" | |
center 7, "So I see you have found out the monster code." | |
center 9, "This will tell you all of the info about" | |
center 10, "all of the monsters in this game" | |
center 12, "Enjoy!!!" | |
SLEEP | |
CLS | |
COLOR 7 | |
center 5, "" | |
center 7, "This is the common guard in the game." | |
center 8, "You will see him alot." | |
center 9, "He is on a set path and will not go off of his path." | |
center 10, "He is usually pretty easy to avoid if you are not careless" | |
SLEEP | |
CLS | |
center 5, "" | |
center 7, "This is an Imperial Guard." | |
center 9, "He is always with other guards." | |
center 10, "They all work together to help kill you." | |
center 11, "They are pretty hard to dodge" | |
SLEEP | |
CLS | |
center 5, "" | |
center 7, "This is called a popper." | |
center 8, "He is on a random path." | |
center 9, "He just pops up wherever he feels like it." | |
center 10, "He is kind of easy to dodge." | |
SLEEP | |
CLS | |
center 5, "" | |
center 7, "This guy is called a riddler." | |
center 8, "He asks you a question and if you get it right" | |
center 9, "then he lets you pass." | |
center 10, "If you get it wrong you die." | |
center 11, "Riddlers do not move." | |
SLEEP | |
CLS | |
COLOR 4 | |
center 5, "----------------" | |
COLOR 7 | |
center 7, "This is a laser beam" | |
center 8, "They pop out of the wall from time to time" | |
center 9, "They are kind of easy and kind of hard to dodge" | |
SLEEP | |
CLS | |
COLOR 7 | |
center 5, "" | |
center 7, "This is the Dungeon Master." | |
center 8, "He is the main evil guy in this game." | |
center 9, "Although you never actually fight him in this game," | |
center 10, "He does pop up and taunt you." | |
SLEEP | |
title | |
END SUB | |
SUB psintro | |
CLS | |
CIRCLE (300, 250), 200, 2 | |
SLEEP 1 | |
CIRCLE (120, 150), 50, 2 | |
CIRCLE (480, 350), 50, 2 | |
SLEEP 1 | |
PAINT (300, 270), 2 | |
SLEEP 1 | |
CIRCLE (480, 350), 50, 4 | |
PAINT (480, 350), 4 | |
CIRCLE (120, 150), 50, 1 | |
PAINT (120, 150), 1 | |
SLEEP 1 | |
LINE (50, 400)-(550, 50), 5 | |
SLEEP 2 | |
PAINT (0, 0), 1 | |
center 12, "PROSTHETIC SOFTWARE" | |
SLEEP 2 | |
center 14, "PRESENTS..." | |
SLEEP 2 | |
PAINT (0, 0), 2 | |
center 10, "A JEFFREY GIBSON GAME..." | |
SLEEP 2 | |
CLS | |
END SUB | |
SUB quit | |
CLS | |
border | |
COLOR 4 | |
center 5, "Quitting so soon?" | |
SLEEP 2 | |
center 7, "Hope you had fun!!!" | |
SLEEP 3 | |
game.over | |
END SUB | |
SUB ScreenModeError | |
CLS | |
PRINT "Unable to run program. You're computer does not meet the basic requirements." | |
SLEEP 2 | |
SYSTEM | |
END SUB | |
SUB slots | |
CLS | |
border | |
COLOR 4 | |
center 5, "SLOT MACHINE" | |
SLEEP 2 | |
center 7, "This is your chance to find out one of the games hidden codes!!!" | |
SLEEP 2 | |
center 9, "If your three numbers match each other then you get the code" | |
SLEEP 2 | |
a = INT(RND * 2) + 1 | |
b = INT(RND * 2) + 1 | |
c = INT(RND * 2) + 1 | |
LOCATE 11, 5 | |
PRINT "Your first number is "; | |
PRINT a | |
SLEEP 2 | |
LOCATE 12, 5 | |
PRINT "Your second number is "; | |
PRINT b | |
SLEEP 2 | |
LOCATE 13, 5 | |
PRINT "Your third number is "; | |
PRINT c | |
SLEEP 2 | |
IF a = b AND a = c THEN GOTO won.it ELSE GOTO sorry | |
won.it: | |
center 15, "Very good!!! Just type this at the title screen..." | |
SLEEP 2 | |
center 17, "u s m c" | |
SLEEP 2 | |
GOTO over | |
sorry: | |
center 15, "Awww! That's too bad! Sorry, better luck next time!!!" | |
SLEEP 2 | |
over: | |
END SUB | |
SUB storyline | |
CLS | |
border | |
COLOR 4 | |
center 5, "One day, you and your love, Vai, were taking a nice" | |
center 6, "walk through the forest. When suddenly, a man came out" | |
center 7, "of nowhere right in front of you. He was a scary man," | |
center 8, "he had a long black cape and wicked red eyes. He grabbed" | |
center 9, "Vai and said..." | |
center 11, "If you want her back you must make it through my dungeon" | |
center 12, "in the caves." | |
center 14, "The man suddenly dissappeared out of sight." | |
DO: LOOP WHILE INKEY$ = "" | |
CLS | |
center 5, "The caves? You say to yourself. You don't know where" | |
center 6, "these caves are. You head back to the village to ask" | |
center 7, "where you could find these caves." | |
center 9, "You enter the local pub and sit down next to an old man." | |
center 10, "Excuse me sir. You say to him. Could you tell me where" | |
center 11, "I can find the caves." | |
center 13, "Oh, you can't go there, no one ever makes it back alive." | |
center 15, "But I really need to go there, a strange man took the love" | |
center 16, "of my life and I need to rescue her!" | |
center 18, "Oh, you must be talking about the Dungeon Keeper, he is" | |
center 19, "never up to any good. I will show you where the caves are." | |
DO: LOOP WHILE INKEY$ = "" | |
CLS | |
center 5, "The old man escorted you to an abandoned road and he told" | |
center 6, "you to go straight down this road and you will find the caves." | |
center 8, "You give him many thanks and head off down the road." | |
center 10, "About an hour later you come across a huge entrance to a cave." | |
center 11, "This must be it. You say to yourself." | |
center 13, "You carefully make your way inside..." | |
DO: LOOP WHILE INKEY$ = "" | |
title | |
END SUB | |
SUB title | |
CLS 2 | |
COLOR 7 | |
m$ = "o1l35abcdefg" | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PLAY m$: PLAY m$ | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PLAY m$: PLAY m$ | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PLAY m$: PLAY m$ | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PRINT " " | |
PLAY m$: PLAY m$: PLAY m$: PLAY m$ | |
choice = 1 | |
DO | |
IF c = 15 THEN c = 0 | |
c = c + 1 | |
LOCATE 26, 1 | |
IF choice = 1 THEN COLOR c ELSE COLOR 8 | |
PRINT "Play game"; | |
IF choice = 2 THEN COLOR c ELSE COLOR 8 | |
PRINT " See Instructions"; | |
IF choice = 3 THEN COLOR c ELSE COLOR 8 | |
PRINT " View Storyline"; | |
IF monster.code = 4 THEN IF choice = 4 THEN COLOR c ELSE COLOR 8 | |
IF monster.code = 4 THEN PRINT " Monsters" | |
a$ = INKEY$ | |
IF monster.code = 0 THEN IF LCASE$(a$) = "u" THEN monster.code = 1 | |
IF monster.code = 1 THEN IF LCASE$(a$) = "s" THEN monster.code = 2 | |
IF monster.code = 2 THEN IF LCASE$(a$) = "m" THEN monster.code = 3 | |
IF monster.code = 3 THEN IF LCASE$(a$) = "c" THEN COLOR 4: center 25, "MONSTER CODE!!!": SLEEP 2: center 25, " ": monster.code = 4 | |
IF a$ = CHR$(0) + "K" THEN choice = choice - 1 | |
IF a$ = CHR$(0) + "M" THEN choice = choice + 1 | |
IF a$ = CHR$(13) THEN GOTO got.choice | |
IF monster.code = 4 THEN IF choice = 0 THEN choice = 4 | |
IF monster.code = 4 THEN IF choice = 5 THEN choice = 1 | |
IF monster.code < 4 THEN IF choice = 0 THEN choice = 3 | |
IF monster.code < 4 THEN IF choice = 4 THEN choice = 1 | |
LOOP | |
got.choice: | |
SELECT CASE choice | |
CASE 1: GOTO play.the.game | |
CASE 2: instructions | |
CASE 3: storyline | |
CASE 4: monsterInfo | |
END SELECT | |
play.the.game: | |
END SUB |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment