| 0 GOSUB 215 | |
| 1 PRINT:PRINT | |
| 2 GOSUB 193 | |
| 3 GOSUB 188 | |
| 4 PRINT CHR$(27)+"Y38";"Do you need instructions Y / N ";:INPUT A$:A$=LEFT$(A$+" ",1):GOSUB 215 | |
| 5 IF A$="Y" THEN GOSUB 168 ELSE IF A$="y" THEN GOSUB 168 | |
| 6 DIM D$(19),O$(31),L(25),P(19,6):L=1 | |
| 7 FOR X=1 TO 19:READ D$(X):NEXT | |
| 8 DATA Entrance Hall,Study,Library,Armory,Tower | |
| 9 DATA Lower Tower,Chapel,Brick Fireplace | |
| 10 DATA Hidden Corridor,Secret Passage | |
| 11 DATA Underground Lake Chamber,Boat,Alchemist's Lab | |
| 12 DATA Storeroom,Overhang,Gallery,Antechamber,Dracula's Tomb | |
| 13 DATA Torture Chamber | |
| 14 FOR X=1 TO 31:READ O$(X):IF X>6 THEN READ L(X-6) | |
| 15 NEXT:T2=8:R=11:WS$="Wooden Stakes" | |
| 16 DATA North,South,East,West,"Up ",Down,Sledge Hammer,5 | |
| 17 DATA Timepiece,1,Coil of Rope,9,Parchment Scroll,3,Axe,4,Oar,6,Key,99 | |
| 18 DATA Holywater,7,Flask of Oil,13,Crate,14,Bucket,14 | |
| 19 DATA Torch,8,Nails,15,Tapestry,16,Boat,11,Rusty Door,17 | |
| 20 DATA Closed Coffin,18,Fire in the Fireplace,2 | |
| 21 DATA Bookcase,3,Sign,1,Parapets,5,Brick Fireplace,2 | |
| 22 DATA Rat,19,Wine,2,Cheddar Cheese,2 | |
| 23 FOR Y=1 TO 19:FOR X=1 TO 6:READ P(Y,X):NEXT X,Y | |
| 24 DATA ,,3,2,,,,,1,,,,,,4,1,,,,,5,3,,,,,,4,,,,7,,,5,,6,,,,4, | |
| 25 DATA ,2,,,,,13,,,,3,,11,8,,19,,,,10,,,,,,11,,,,,14,9,,,, | |
| 26 DATA ,13,,,2,,,,,,,16,,,,,,,,16,,,,,,17,,,,,,,10,13,, | |
| 27 W$="GO GETLOODROHITOPETIEPUSKILOILROWCLITAKREATHRBRE" | |
| 28 N$="N 01S 02E 03W 04U 05D 06HAM07SCR10AX 11WAT14OIL15DOO22COF23DRA23FIR28" | |
| 29 O$="NORSOUEASWESUP DOWSLETIMROPPARAXEOARKEYHOLFLACRABUCTORNAITAPBOARUSCLOFIRBOOSIGPARBRIRATWINCHE" | |
| 30 GOSUB 227:PRINT:PRINT TAB(27);"You are in the ";D$(L):Y=0:L2=L | |
| 31 IF L(12)=0 OR L<10 OR (L>12 AND L<>18) THEN 33 | |
| 32 PRINT TAB(27);"It's Dark ! you can't see":GOTO 38 | |
| 33 PRINT TAB(27);"You see ";:FOR X=1 TO 25:IF L(X)=L2 THEN PRINT O$(X+6);", ";:Y=Y+1 | |
| 34 IF Y=2 THEN PRINT TAB(27); | |
| 35 NEXT:IF Y=0 THEN PRINT"nothing interesting." ELSE PRINT" " | |
| 36 PRINT TAB(27);"Obvious exits are: ";:FOR X=1 TO 6:IF P(L,X)>0 THEN PRINT O$(X);" "; | |
| 37 NEXT:PRINT | |
| 38 S=0:F=0:GOSUB 230:PRINT:PRINT TAB(27);"What do you want to do";:INPUT A$:PRINT | |
| 39 A$=A$:B$=" ":FOR X=1 TO LEN(A$) | |
| 40 IF MID$(A$,X,1)=" " THEN B$=MID$(A$+" ",X+1,3) | |
| 41 NEXT:IF LEN(A$)=1 THEN B$=A$+" ":A$="GO " | |
| 42 GOSUB 160:L2=L:T1=T1+1:IF T1=60 THEN T1=0:T2=T2+1 | |
| 43 IF T2=12 THEN PRINT:PRINT"It's midnight:Dracula is awake, He's at your neck ";:GOTO 156 | |
| 44 IF A$="SWI" AND L=11 THEN PRINT:PRINT" You have drowned in the ice cold water ";:GOTO 156 | |
| 45 X=INSTR(N$,B$):IF X MOD 5=1 THEN S=VAL(MID$(N$,X+3,2)):GOTO 47 | |
| 46 X=INSTR(O$,B$):IF X MOD 3=1 THEN S=(X+2)/3 | |
| 47 X=INSTR(W$,A$):IF X MOD 3=1 THEN F=(X+2)/3 | |
| 48 IF F>11 THEN F=F-11 | |
| 49 IF A$<> "INV" THEN 54 | |
| 50 PRINT"You are carrying: ";:A=0:FOR X=1 TO 25 | |
| 51 IF L(X)=0 THEN PRINT O$(X+6)", ";:A=A+1 | |
| 52 NEXT:IF A=0 THEN PRINT"nothing"; | |
| 53 PRINT:GOTO 38 | |
| 54 ON F GOTO 58,75,94,107,113,121,130,137,142,149,153 | |
| 55 PRINT TAB(27);"I don't know how to do that":GOTO 38 | |
| 56 PRINT TAB(27);"I don't know that word":GOTO 38 | |
| 57 REM ******* GO ********** | |
| 58 IF S<1 THEN 62 ELSE IF S>6 THEN 62 | |
| 59 IF P(L,S)>0 THEN L=P(L,S):GOTO 30 | |
| 60 PRINT TAB(27);"You can't go that way":GOTO 38 | |
| 61 PRINT TAB(27);"You see nothing special":GOTO 38 | |
| 62 IF S<>28 OR L<>2 THEN 65 | |
| 63 IF FI=0 THEN PRINT:PRINT TAB(27);"You have burned to death";:GOTO 156 | |
| 64 L=8:GOTO 30 | |
| 65 IF S<>27 OR L<>5 THEN 68 | |
| 66 IF LEFT$(O$(27),1)="R" THEN L=6:PRINT TAB(27);"Climbed down the rope":PRINT:GOTO 30 | |
| 67 PRINT TAB(27);"You fell and died ";:GOTO 156 | |
| 68 IF S=21 AND L(15)=L THEN L=12:GOTO 30 | |
| 69 IF L=16 AND B$="OVE" THEN 72 | |
| 70 IF S<1 THEN 56 | |
| 71 PRINT TAB(27);"You can't go there":GOTO 38 | |
| 72 IF L(10)=L AND O$(16)="Crate" THEN L=15:GOTO 30 | |
| 73 PRINT TAB(27);"It's a little too high":GOTO 38 | |
| 74 REM ******* GET ******** | |
| 75 IF S<7 THEN 56 | |
| 76 IF C>6 THEN PRINT TAB(27);"You can't carry any more":GOTO 38 | |
| 77 IF L(S-6)<>L THEN 91 | |
| 78 IF S<>14 THEN 81 | |
| 79 V$="In":GOSUB 165:IF A$="BUC" AND L(11)=0 THEN 92 | |
| 80 PRINT TAB(27);"You can't do that":GOTO 38 | |
| 81 IF S<>20 THEN 84 | |
| 82 IF TA=0 THEN PRINT TAB(27);"It's nailed to an overhang":GOTO 38 | |
| 83 P(16,1)=17:PRINT TAB(27);"AHA ! - A hole in the wall":PRINT:GOTO 92 | |
| 84 IF S<>19 THEN 87 | |
| 85 IF L(1)<>0 THEN PRINT TAB(27);"You have no hammer":GOTO 38 | |
| 86 IF L(13)=15 THEN TA=1:PRINT TAB(27);"The tapestry is loose":GOTO 92 | |
| 87 IF S<>13 THEN 90 | |
| 88 L(23)=L:IF L(25)=L THEN 92 | |
| 89 PRINT TAB(27);"The rat has it":GOTO 38 | |
| 90 IF S>20 AND S<30 THEN PRINT TAB(27);"You can't get it":GOTO 38 ELSE 92 | |
| 91 PRINT TAB(27);"I don't see any "O$(S):GOTO 38 | |
| 92 C=C+1:L(S-6)=0:PRINT TAB(27);"You got the "O$(S):GOTO 38 | |
| 93 REM ******** LOOK ********* | |
| 94 IF S<7 THEN 30 | |
| 95 IF S=26 AND L=1 THEN PRINT TAB(27);"'Dracula Wakes at Midnight'":GOTO 38 | |
| 96 IF S<>29 THEN 99 | |
| 97 IF L(23) <>L THEN 91 | |
| 98 PRINT TAB(27);"A key is in it's mouth !":L(7)=L:GOTO 38 | |
| 99 IF S<>10 THEN 103 | |
| 100 IF L(4)=0 THEN 102 | |
| 101 PRINT TAB(27);"you don't have it":GOTO 38 | |
| 102 PRINT TAB(17);"The Scroll reads: 'Not all exits are obvious.'":GOTO 38 | |
| 103 IF S<>8 THEN 61 | |
| 104 IF L(2) <>0 THEN 101 | |
| 105 PRINT TAB(27); USING "The time is now ##:##";T2,T1:GOTO 38 | |
| 106 REM ******** DROP ********** | |
| 107 IF S<7 THEN 56 | |
| 108 IF L(S-6) <>0 THEN 101 | |
| 109 IF S<>14 OR L<>2 THEN 111 | |
| 110 O$(24)="Smoldering Ashes":FI=1:L(8)=99:C=C-1:GOTO 30 | |
| 111 PRINT TAB(20);"Okay, the "O$(S) " is on the "D$(L) " Floor":L(S-6)=L:C=C-1:GOTO 38 | |
| 112 REM ********* HIT ********** | |
| 113 IF S<7 THEN 56 | |
| 114 IF L(S-6) <>L AND (L<>8 OR S<>28) THEN 91 | |
| 115 V$="With":GOSUB 165:IF A$<>"AXE" OR S<>16 OR L(5)<>0 THEN 117 | |
| 116 O$(16)=WS$:N$=N$+"WOO16STA16":GOTO 30 | |
| 117 IF (A$<> "SLE" AND A$<>"HAM") OR S<>28 OR L(1)<>0 THEN 119 | |
| 118 O$(28)="Broken Fireplace":P(8,1)=10:D$(8)=O$(28):GOTO 30 | |
| 119 PRINT TAB(27);"Nothing happened":GOTO 38 | |
| 120 REM ********* OPEN ********* | |
| 121 IF S<7 THEN 56 | |
| 122 IF L(S-6)<>L THEN 91 | |
| 123 IF S<>23 THEN 126 | |
| 124 IF L(7)<>0 THEN PRINT TAB(27);"The coffin is locked ... ";:GOTO 119 | |
| 125 O$(23)="Dracula in the Coffin":GOTO 30 | |
| 126 IF S<>22 THEN 119 | |
| 127 IF 9I=0 THEN PRINT TAB(27);"Too much rust ... ";:GOTO 119 | |
| 128 O$(22)="Open Door":P(17,1)=18:GOTO 30 | |
| 129 REM ********** TIE *********** | |
| 130 IF S<7 THEN 56 | |
| 131 IF L(S-6)<>0 THEN 101 | |
| 132 IF S<>9 THEN 80 | |
| 133 V$="To":GOSUB 165:IF A$<>"PAR" THEN 80 | |
| 134 L(3)=99:C=C-1:O$(27)="Rope tied to the Parapet":N$=N$+"ROP27" | |
| 135 PRINT TAB(27);O$(27);" !":GOTO 38 | |
| 136 REM ********* PUSH ********** | |
| 137 IF S<7 THEN 56 | |
| 138 IF L(S-6)<>L THEN 91 | |
| 139 IF S<>25 THEN 119 | |
| 140 PRINT TAB(27);"Aha ! - You have revealed a Doorway":PRINT:P(L,6)=9:GOTO 30 | |
| 141 REM ********* KILL ************ | |
| 142 IF S<7 THEN 56 | |
| 143 IF S<>23 OR LEFT$(O$(23),1)<>"D" THEN 80 | |
| 144 V$="With":GOSUB 165 | |
| 145 IF (A$="WOO" OR A$="STA") AND L(10)=0 AND O$(16)=WS$ THEN 147 | |
| 146 PRINT:PRINT"You have failed ! Dracula awakes and sucks your blood !";:GOTO 156 | |
| 147 PRINT:PRINT TAB(14);:GOSUB 218:PRINT"Congratulations ! ";:GOSUB 230:PRINT"You have KILLED Dracula ";USING"at ##:## p.m.";T2,T1:GOTO 156 | |
| 148 REM ********* OIL *********** | |
| 149 IF L(9)<>0 OR L<>17 OR S<>22 THEN 80 | |
| 150 PRINT TAB(27);"The door squeaks open":PRINT | |
| 151 OI=1:O$(22)="Open Door":P(17,1)=18:GOTO 30 | |
| 152 REM ********* ROW ********** | |
| 153 IF L<>12 OR L(6)<>0 THEN 80 | |
| 154 R=27-R:L=R:PRINT TAB(27);"You have rowed to the ";D$(L) | |
| 155 PRINT:L(15)=L:GOTO 30 | |
| 156 PRINT:PRINT:PRINT:PRINT TAB(24);"Would you like to try again Y/N";:INPUT A$:GOSUB 160 | |
| 157 IF LEFT$(A$,1)="Y" THEN RUN 0 ELSE IF LEFT$(A$,1)="y" THEN RUN 0 | |
| 158 IF LEFT$(A$,1)="R" THEN T1=T1-2:GOTO 38 | |
| 159 RUN"M" | |
| 160 REM ******** MAKE INPUT U/C ********* | |
| 161 A$=LEFT$(A$+" ",3):FOR I=1 TO 3 | |
| 162 CH=ASC(MID$(A$,I,1)):IF CH>96 THEN MID$(A$,I,1)=CHR$(CH-32) | |
| 163 CH=ASC(MID$(B$,I,1)):IF CH>96 THEN MID$(B$,I,1)=CHR$(CH-32) | |
| 164 NEXT:RETURN | |
| 165 REM ********** GET "WHAT" ******* | |
| 166 PRINT:PRINT TAB(27);:PRINT"-- "V$" what";:INPUT A$ | |
| 167 PRINT:PRINT:GOSUB 160:RETURN | |
| 168 REM ********* INSTRUCTIONS *********** | |
| 169 PRINT:PRINT:PRINT TAB(26);:GOSUB 224:PRINT"D R A C U L A ' S C A S T L E":GOSUB 230 | |
| 170 PRINT:PRINT | |
| 171 GOSUB 227 | |
| 172 PRINT" Dracula's Castle has a concealed goal. You will learn the goal by exploring " | |
| 173 PRINT"your surroundings. The computer will act as you hands and eyes. It will accept" | |
| 174 PRINT"short phrases as commands and assumes that the first word is a verb and the " | |
| 175 PRINT"last word is the object. For example: ";:GOSUB 230:PRINT" READ THE SIGN ";:GOSUB 227:PRINT" The computer has a" | |
| 176 PRINT"vocabulary of about 70 words. Some of the more important words you should know" | |
| 177 PRINT"before you start playing are: ";:GOSUB 230:PRINT"GET (object), DROP (object), LOOK (object) ";:GOSUB 227:PRINT"or" | |
| 178 PRINT"just ";:GOSUB 230:PRINT"LOOK, GO (direction) ";:GOSUB 227:PRINT"or ";:GOSUB 230:PRINT"(PLACE)";:GOSUB 227:PRINT", and ";:GOSUB 230:PRINT"INVENTORY ";:GOSUB 227:PRINT" (tells what you" | |
| 179 PRINT"are carrying). The computer knows the abbreviations: ";:GOSUB 230:PRINT" E, W, N, S, U, ";:GOSUB 227:PRINT"and ";:GOSUB 230:PRINT"D ";:GOSUB 227:PRINT"for ";:GOSUB 230:PRINT"GO EAST, GO WEST, ";:GOSUB 227:PRINT"etc.":PRINT | |
| 180 PRINT" The computer's vocabulary is good, but limited. If you are having trouble " | |
| 181 PRINT"doing something, try re-phrasing the command or you may need some object to" | |
| 182 PRINT"accomplish the task. By the way, the computer only looks at the first 3 letters" | |
| 183 PRINT"of each word.":GOSUB 230 | |
| 184 PRINT:PRINT TAB(31);"--- GOOD LUCK ---":PRINT:PRINT | |
| 185 INPUT"Press return to continue.....",A$ | |
| 186 GOSUB 215 | |
| 187 RETURN | |
| 188 REM ******** PRINT AT ******** | |
| 189 PRINT CHR$(27)+"Y%B";"W E L C O M E" | |
| 190 PRINT CHR$(27)+"Y':";"TO DRACULA'S CASTLE ADVENTURE" | |
| 191 PRINT CHR$(27)+"Y,@";:GOSUB 221:PRINT"ENTER IF YOU DARE";:GOSUB 230 | |
| 192 RETURN | |
| 193 REM *********** CASTLE ************** | |
| 194 GOSUB 215 | |
| 195 PRINT:PRINT:PRINT:PRINT | |
| 196 Z$=STRING$(2,177)+SPACE$(2) | |
| 197 X$=STRING$(2,177) | |
| 198 REM | |
| 199 REM | |
| 200 PRINT TAB(10);" ";:FOR Z=1 TO 4:PRINT Z$;:NEXT:FOR S=1 TO 15:PRINT" ";:NEXT:FOR Z=1 TO 4:PRINT Z$;:NEXT:PRINT | |
| 201 PRINT TAB(10);" ";:FOR B=1 TO 7:PRINT X$;:NEXT:FOR S=1 TO 16:PRINT" ";:NEXT:FOR B=1 TO 7:PRINT X$;:NEXT:PRINT | |
| 202 PRINT TAB(10);" ";:FOR B=1 TO 5:PRINT X$;:NEXT:FOR S=1 TO 18:PRINT" ";:NEXT:FOR B=1 TO 5:PRINT X$;:NEXT:PRINT | |
| 203 PRINT TAB(10);" ";:FOR B=1 TO 5:PRINT X$;:NEXT:FOR S=1 TO 18:PRINT" ";:NEXT:FOR B=1 TO 5:PRINT X$;:NEXT:PRINT | |
| 204 PRINT TAB(10);" ";:PRINT X$;X$;" ";X$;X$;:FOR S=1 TO 18:PRINT" ";:NEXT:PRINT X$;X$;" ";X$;X$;:PRINT | |
| 205 PRINT TAB(10);" ";:PRINT X$;X$;" ";X$;X$;:FOR S=1 TO 18:PRINT" ";:NEXT:PRINT X$;X$;" ";X$;X$;:PRINT | |
| 206 PRINT TAB(10);" ";:FOR B=1 TO 5:PRINT X$;:NEXT:FOR S=1 TO 9:PRINT Z$;:NEXT:FOR B=1 TO 5:PRINT X$;:NEXT:PRINT | |
| 207 PRINT TAB(10);" ";:FOR B=1 TO 28:PRINT X$;:NEXT:PRINT | |
| 208 PRINT TAB(10);" ";:FOR B=1 TO 28:PRINT X$;:NEXT:PRINT | |
| 209 PRINT TAB(10);" ";:FOR B=1 TO 28:PRINT X$;:NEXT:PRINT | |
| 210 PRINT TAB(10);" ";:FOR B=1 TO 28:PRINT X$;:NEXT:PRINT | |
| 211 PRINT TAB(10);" ";:FOR B=1 TO 14:PRINT X$;:NEXT:PRINT" ";:FOR B=1 TO 13:PRINT X$;:NEXT:PRINT | |
| 212 RETURN | |
| 213 REM ******************* ESCAPE CODES ****************** | |
| 214 REM | |
| 215 REM ************ CLS ********* | |
| 216 PRINT CHR$(27)+"E";:RETURN | |
| 217 REM | |
| 218 REM *********** NORMAL FLASH ************* | |
| 219 PRINT CHR$(27)+"p";:RETURN | |
| 220 REM | |
| 221 REM *********** REVERSE NORMAL FLASH ************** | |
| 222 PRINT CHR$(27)+"p";:RETURN | |
| 223 REM | |
| 224 REM ********** NORMAL UNDERLINE ************** | |
| 225 PRINT CHR$(27)+"0";:RETURN | |
| 226 REM | |
| 227 REM *********** LOW LIGHT ************* | |
| 228 RETURN | |
| 229 REM | |
| 230 REM *********** RESET ********** | |
| 231 PRINT CHR$(27);"q";CHR$(27)+"1";:RETURN | |
| 232 REM | |
Xet Storage Details
- Size:
- 11.8 kB
- Xet hash:
- 822935394f54ddea43de2730169fd947825da0b5b7426d56ac5b2210d394d6e1
·
Xet efficiently stores files, intelligently splitting them into unique chunks and accelerating uploads and downloads. More info.