Guest User

Untitled

a guest
Jul 19th, 2018
86
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 10.92 KB | None | 0 0
  1. CLS
  2. OBJ(1) = 6 ' Pen
  3. OBJ(2) = 2 ' Gold Coin
  4. OBJ(3) = 0 ' Purple Key
  5. OBJ(4) = 8 ' Drawer
  6. OBJ(5) = 8 ' Paper
  7. OBJ(6) = 5 ' Small brown chair
  8. OBJ(7) = 4 ' Gingerbread house
  9.  
  10. ROOM = 1
  11. COL = 8
  12. BCOL = 4
  13. DRAWERLOCK = 1
  14. BLOODSTAINCLEANED = 0
  15. TYPEWRITERHINT = 0
  16.  
  17. PRINT "Christmas Game"
  18. PRINT
  19. PRINT "This is a game. It's fully played using text, and writing text."
  20. PRINT "That meaning, if you're under 18 or just mentally retarded,"
  21. PRINT "you will dislike this game."
  22. PRINT
  23. PRINT "Game made by Ran. His MSN and Email is currently realran_ at msn dot com."
  24. PRINT "(There's also some stuff made with help from Kairi. But let's ignore that)."
  25. PRINT
  26. ACTION$ = "COMMANDS"
  27. GOTO LOOK:
  28.  
  29. CLS
  30. CL: ' Command Line
  31. COLOR COL
  32. PRINT "Please write in what you want to do."
  33. INPUT "-"; ACTION$
  34. ACTION$ = UCASE$(ACTION$)
  35.  
  36. LOOK:
  37. SELECT CASE ACTION$
  38.  
  39. CASE "LOOK"
  40. SELECT CASE ROOM
  41.  
  42. CASE 1
  43. COLOR BCOL
  44. PRINT "--- FIRST ROOM ---"
  45. COLOR COL
  46. PRINT "You're in the first room. To the left, there's a window. It's snowing a lot outside!"
  47.  
  48. CASE 2
  49. COLOR BCOL
  50. PRINT "--- SECOND ROOM---"
  51. COLOR COL
  52. IF OBJ(2) = 2 THEN
  53. PRINT "In this room, there is a golden coin laying on a table."
  54. ELSE
  55. PRINT "In this room, there is only a lonely table stationary"
  56. END IF
  57.  
  58. CASE 3
  59. COLOR BCOL
  60. PRINT "--- LIVING ROOM---"
  61. COLOR COL
  62. PRINT "You're in the living room. You see lots of books sorted alphabetically."
  63. PRINT "On the floor, there is an type writer absent. Why not USE TYPEWRITER?"
  64. IF OBJ(3) = 3 THEN PRINT "On the floor there's an Purple Key. Interesting."
  65.  
  66. CASE 4
  67. COLOR BCOL
  68. PRINT "--- FOURTH ROOM---"
  69. COLOR COL
  70. PRINT "You're in the fourth room."
  71. IF OBJ(7) <> 10 THEN PRINT "On a table, you see an gingerbread house."
  72.  
  73. CASE 5
  74. COLOR BCOL
  75. PRINT "--- FIFTH ROOM---"
  76. COLOR COL
  77. SELECT CASE OBJ(6)
  78. CASE 5
  79. PRINT "Surprisingly, nothing else is in the room but a small, brown chair."
  80. CASE ELSE
  81. PRINT "Surprisingly, there's absolutely nothing there!"
  82. END SELECT
  83.  
  84. CASE 6
  85. COLOR BCOL
  86. PRINT "--- SIXTH ROOM---"
  87. COLOR COL
  88. PRINT "In the room, there is a small barricaded window and a booklet filled with books."
  89. SELECT CASE BLOODSTAINCLEANED
  90. CASE 0
  91. PRINT "In the ceiling, there is a small blood stain. Eerie!"
  92. CASE 1
  93. PRINT "In the ceiling, there is a picture of a circle."
  94. END SELECT
  95.  
  96. CASE 8
  97. COLOR BCOL
  98. PRINT "---EIGTH ROOM---"
  99. COLOR COL
  100. PRINT "This room consists of nothing but a large drawer."
  101.  
  102. CASE 9
  103. COLOR BCOL
  104. PRINT "--- NINTH ROOM---"
  105. COLOR COL
  106. PRINT "You're in the ninth room. To the rigth, there's a window. The snow is pouring down outside!"
  107. END SELECT
  108.  
  109. CASE "COLOR CHART"
  110. FOR I = 1 TO 15
  111. COLOR I
  112. PRINT I; "Color"
  113. NEXT I:
  114. COLOR COL
  115.  
  116. CASE "INVENTORY"
  117. COLOR BCOL
  118. PRINT "--- INVENTORY ---"
  119. COLOR COL
  120. IF OBJ(1) = 10 THEN PRINT "One Pen"
  121. IF OBJ(2) = 10 THEN PRINT "One Gold Coin"
  122. IF OBJ(3) = 10 THEN PRINT "One Purple Key"
  123. IF OBJ(5) = 10 THEN PRINT "One Paper"
  124. IF OBJ(6) = 10 THEN PRINT "One Brown Chair"
  125. IF OBJ(7) = 10 THEN PRINT "One Gingerbread House"
  126.  
  127. CASE "COMMANDS"
  128. COLOR BCOL
  129. PRINT "--- COMMANDS ---"
  130. COLOR COL
  131. PRINT "To interact: GET, USE, OPEN, UNLOCK, CLEAN
  132. PRINT "Other: LOOK, COLOR CHART, INVENTORY, COMMANDS, MOVE R, MOVE L, EXIT
  133.  
  134. CASE "EXIT"
  135. PRINT "Really quit? Theres no saving function, you'll ruin christmas!"
  136. PRINT "(Y/N) if you really want to ruin christmas and end this game."
  137. INPUT TEMP$
  138. TEMP$ = UCASE$(TEMP$)
  139. IF LEFT$(TEMP$, 1) = "Y" THEN END
  140.  
  141. END SELECT
  142.  
  143.  
  144.  
  145. MELLANSLAG = 0
  146. I = 0
  147. ' får fram positionen av mellanslaget
  148. DO
  149. I = I + 1
  150. IF MID$(ACTION$, I, 1) = " " THEN MELLANSLAG = I
  151. LOOP UNTIL MELLANSLAG <> 0 OR I = 30
  152. IF I = 30 THEN GOTO CL:
  153.  
  154. ' nollställer doaction
  155. DOACTION$ = "NOTHING"
  156. ' läser kommando och skickar till datorn
  157. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "GET" THEN DOACTION$ = "GET"
  158. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "USE" THEN DOACTION$ = "USE"
  159. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "COLOR" THEN DOACTION$ = "COLOR"
  160. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "BCOLOR" THEN DOACTION$ = "BCOLOR"
  161. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "MOVE" THEN DOACTION$ = "MOVE"
  162. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "UNLOCK" THEN DOACTION$ = "UNLOCK"
  163. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "OPEN" THEN DOACTION$ = "OPEN"
  164. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "CLEAN" THEN DOACTION$ = "CLEAN"
  165. IF LEFT$(ACTION$, (MELLANSLAG - 1)) = "EAT" THEN DOACTION$ = "EAT"
  166.  
  167. IF DOACTION$ = "GET" THEN
  168. DOITEM$ = "NOTHING"
  169. DOITEM$ = MID$(ACTION$, (MELLANSLAG + 1), (LEN(ACTION$) - MELLANSLAG))
  170.  
  171. ' Kollar synonymer
  172. SELECT CASE DOITEM$
  173. CASE "KEY"
  174. IF OBJ(3) = 3 THEN DOITEM$ = "PURPLE KEY"
  175. CASE "GINGER BREAD HOUSE"
  176. DOITEM$ = "GINGERBREAD HOUSE"
  177. CASE "GINGERBREADHOUSE"
  178. DOITEM$ = "GINGERBREAD HOUSE"
  179. CASE "COIN"
  180. DOITEM$ = "GOLD COIN"
  181. CASE "GOLDEN COIN"
  182. DOITEM$ = "GOLD COIN"
  183. CASE "GOLDENCOIN"
  184. DOITEM$ = "GOLD COIN"
  185. CASE "GOLDCOIN"
  186. DOITEM$ = "GOLD COIN"
  187. CASE "CHAIR"
  188. DOITEM$ = "SMALL BROWN CHAIR"
  189. CASE "SMALL CHAIR"
  190. DOITEM$ = "SMALL BROWN CHAIR"
  191. CASE "BROWN CHAIR"
  192. DOITEM$ = "SMALL BROWN CHAIR"
  193. END SELECT
  194.  
  195.  
  196. SELECT CASE DOITEM$
  197.  
  198. CASE "PURPLE KEY"
  199. IF OBJ(3) = 3 THEN
  200. IF ROOM = 3 THEN
  201. OBJ(3) = 10
  202. PRINT "You got the Purple Key."
  203. END IF
  204. END IF
  205.  
  206. CASE "SMALL BROWN CHAIR"
  207. IF OBJ(6) = 5 THEN
  208. IF ROOM = 5 THEN
  209. OBJ(6) = 10
  210. PRINT "You got the small brown chair."
  211. END IF
  212. END IF
  213.  
  214. CASE "GOLD COIN"
  215. IF OBJ(2) = ROOM THEN OBJ(2) = 10
  216. PRINT "You get one Gold Coin which was laying at the table."
  217.  
  218. CASE "GINGERBREAD HOUSE"
  219. IF OBJ(7) = ROOM THEN OBJ(7) = 10
  220. PRINT "You get the Gingerbread House."
  221.  
  222. CASE "TYPEWRITER"
  223. IF ROOM = 3 THEN PRINT "The typewriter is way to heavy to lift!"
  224.  
  225. CASE ELSE
  226. PRINT "Get what?"
  227.  
  228. END SELECT
  229. END IF
  230.  
  231. IF DOACTION$ = "EAT" THEN PRINT "Sorry, but eating isn't allowed in this game."
  232.  
  233.  
  234. IF DOACTION$ = "USE" THEN
  235. DOITEM$ = "NOTHING"
  236. DOITEM$ = MID$(ACTION$, (MELLANSLAG + 1), (LEN(ACTION$) - MELLANSLAG))
  237.  
  238. ' Kollar synonymer
  239. SELECT CASE DOITEM$
  240. CASE "TYPE WRITER"
  241. DOITEM$ = "TYPEWRITER"
  242. CASE "PURPLE KEY"
  243. PRINT "Please use the UNLOCK command."
  244. CASE "KEY"
  245. PRINT "Please use the UNLOCK command."
  246. END SELECT
  247.  
  248. SELECT CASE DOITEM$
  249.  
  250. CASE "TYPEWRITER"
  251. IF ROOM = 3 THEN
  252. CLS
  253. GOTO TYPEWRITERMODE:
  254. END IF
  255. CASE "PAPER"
  256. IF ROOM = 3 THEN
  257. IF OBJ(5) = 10 THEN
  258. PRINT "You fill the typewriter with your paper."
  259. PRINT "The typewriter starts to cought... What's happening?"
  260. PRINT "Suddenly, the typewriter is transformed into..."
  261. PRINT "SANTA? WTF?"
  262. PRINT
  263. PRINT "Santa: Great, you did it! The beta version is completed."
  264. PRINT "Please send 50 euros to Ran to play the rest of the game!
  265. PRINT "... Or simply wait some days, and hopefully you'll be able"
  266. PRINT "to play the rest of the game, since it's due to release"
  267. PRINT "in late december 2006. Please spread the game!"
  268. PRINT
  269. PRINT "Press enter to quit."
  270. INPUT I
  271. END
  272. END IF
  273. END IF
  274.  
  275. CASE ELSE
  276. PRINT "Use what?"
  277.  
  278. END SELECT
  279. END IF
  280.  
  281.  
  282. IF DOACTION$ = "UNLOCK" THEN
  283. DOITEM$ = "NOTHING"
  284. DOITEM$ = MID$(ACTION$, (MELLANSLAG + 1), (LEN(ACTION$) - MELLANSLAG))
  285. SELECT CASE DOITEM$
  286.  
  287. CASE "DRAWER"
  288.  
  289. IF DRAWERLOCK = 1 THEN
  290.  
  291. IF OBJ(4) = ROOM THEN
  292. IF OBJ(3) = 10 THEN
  293. DRAWERLOCK = 0
  294. PRINT "You unlocked the drawer with your Purple Key."
  295. ELSE
  296. PRINT "You don't have any key."
  297. END IF
  298. END IF
  299.  
  300. ELSE
  301.  
  302. IF OBJ(4) = ROOM THEN
  303. IF OBJ(3) = 10 THEN PRINT "It's already unlocked!"
  304. END IF
  305. END IF
  306.  
  307. CASE ELSE
  308. PRINT "Unlock what?"
  309.  
  310. END SELECT
  311. END IF
  312.  
  313.  
  314. IF DOACTION$ = "OPEN" THEN
  315. DOITEM$ = "NOTHING"
  316. DOITEM$ = MID$(ACTION$, (MELLANSLAG + 1), (LEN(ACTION$) - MELLANSLAG))
  317. SELECT CASE DOITEM$
  318.  
  319. CASE "DRAWER"
  320. IF OBJ(4) = ROOM THEN
  321. IF DRAWERLOCK = 0 THEN
  322. PRINT "You open the drawer."
  323. IF OBJ(5) <> 10 THEN
  324. PRINT "In the drawer, there's a paper."
  325. PRINT "You take the paper."
  326. OBJ(5) = 10
  327. ELSE
  328. PRINT "There's nothing there, really."
  329. END IF
  330. ELSE
  331. PRINT "The drawer is locked."
  332. END IF
  333. END IF
  334.  
  335. END SELECT
  336. END IF
  337.  
  338.  
  339. IF DOACTION$ = "CLEAN" THEN
  340. DOITEM$ = "NOTHING"
  341. DOITEM$ = MID$(ACTION$, (MELLANSLAG + 1), (LEN(ACTION$) - MELLANSLAG))
  342.  
  343. SELECT CASE DOITEM$
  344. CASE "BLOOD"
  345. DOITEM$ = "BLOOD"
  346. CASE "BLOODSTAIN"
  347. DOITEM$ = "BLOOD"
  348. CASE "BLOOD STAIN"
  349. DOITEM$ = "BLOOD"
  350. END SELECT
  351.  
  352. SELECT CASE DOITEM$
  353.  
  354. CASE "BLOOD"
  355. IF ROOM = 6 THEN
  356. IF BLOODSTAINCLEANED = 0 THEN
  357. IF OBJ(6) = 10 THEN
  358. PRINT "Thanks to the chair, you can reach up to the ceiling."
  359. PRINT "You clean up the blood stain from the ceiling."
  360. PRINT "Under the blood, you find a picture of a circle."
  361. BLOODSTAINCLEANED = 1
  362. ELSE
  363. PRINT "You can't reach the blood stain!"
  364. END IF
  365.  
  366. ELSE
  367. PRINT "You've already cleaned up the blood stain!"
  368. END IF
  369. END IF
  370.  
  371. END SELECT
  372. END IF
  373.  
  374.  
  375. IF DOACTION$ = "MOVE" THEN
  376. DOITEM$ = "NOTHING"
  377. DOITEM$ = MID$(ACTION$, (MELLANSLAG + 1), 1)
  378. SELECT CASE DOITEM$
  379.  
  380. CASE "R"
  381. SELECT CASE ROOM
  382. CASE 9
  383. PRINT "You can't go that way."
  384. CASE ELSE
  385. ROOM = ROOM + 1
  386. ACTION$ = "LOOK"
  387. GOTO LOOK:
  388. END SELECT
  389.  
  390. CASE "L"
  391. SELECT CASE ROOM
  392. CASE 1
  393. PRINT "You can't go that way."
  394. CASE ELSE
  395. ROOM = ROOM - 1
  396. ACTION$ = "LOOK"
  397. GOTO LOOK:
  398. END SELECT
  399.  
  400. END SELECT
  401. END IF
  402.  
  403.  
  404. IF DOACTION$ = "COLOR" AND ACTION$ <> "COLOR CHART" THEN
  405. TEMP = VAL((MID$(ACTION$, (MELLANSLAG + 1), (LEN(ACTION$) - MELLANSLAG))))
  406. IF TEMP > 15 THEN TEMP = 16
  407. IF TEMP < 1 THEN TEMP = 0
  408.  
  409. SELECT CASE TEMP
  410. CASE 16
  411. PRINT "Only numbers 1 to 15 please!"
  412. CASE 0
  413. PRINT "Only numbers 1 to 15 please!"
  414. CASE ELSE
  415. COL = TEMP
  416. COLOR COL
  417. PRINT "Text color is changed."
  418. END SELECT
  419. END IF
  420.  
  421.  
  422. IF DOACTION$ = "BCOLOR" THEN
  423. TEMP = VAL((MID$(ACTION$, (MELLANSLAG + 1), (LEN(ACTION$) - MELLANSLAG))))
  424. IF TEMP > 15 THEN TEMP = 16
  425. IF TEMP < 1 THEN TEMP = 0
  426.  
  427. SELECT CASE TEMP
  428. CASE 16
  429. PRINT "Only numbers 1 to 15 please!"
  430. CASE 0
  431. PRINT "Only numbers 1 to 15 please!"
  432. CASE ELSE
  433. BCOL = TEMP
  434. COLOR BCOL
  435. PRINT "--- THE BIG TEXT COLOR IS CHANGED ---"
  436. END SELECT
  437. END IF
  438.  
  439.  
  440. GOTO CL:
  441.  
  442.  
  443.  
  444.  
  445. TYPEWRITERMODE:
  446.  
  447. SELECT CASE TYPEWRITERHINT
  448. CASE 0
  449. TYPEWRITERTEXT$ = "Simply Under blood"
  450. CASE 1
  451. TYPEWRITERTEXT$ = " No hint here yet"
  452. END SELECT
  453.  
  454. PRINT " /-------------------@"
  455. PRINT " | |"
  456. PRINT " | |"
  457. PRINT " | |"
  458. PRINT " | |"
  459. PRINT " | |"
  460. PRINT " | |"
  461. PRINT "-@____________________@"
  462. PRINT " |Q W E R T Y U I O P |"
  463. PRINT " ||A S D F G H J K L <|"
  464. PRINT " @||Z X C V B N M I . |"
  465.  
  466. LOCATE 2, 4
  467. PRINT TYPEWRITERTEXT$
  468. LOCATE 3, 4
  469. INPUT "-", TYPEWRITERINPUT$
  470.  
  471. SELECT CASE TYPEWRITERINPUT$
  472.  
  473. CASE "3"
  474. IF TYPEWRITERHINT = 0 THEN
  475. LOCATE 4, 4
  476. PRINT "Correct."
  477. TYPEWRITERHINT = TYPEWRITERHINT + 1
  478. LOCATE 12, 1
  479. PRINT "A Purple Key pops out of the typewriter!"
  480. OBJ(3) = 3
  481. END IF
  482. END SELECT
  483. LOCATE 13, 2
  484. GOTO CL:
Add Comment
Please, Sign In to add comment