Advertisement
Prithak

QB64 Code

Jan 23rd, 2019
222
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 5.57 KB | None | 0 0
  1. _TITLE "Pokemon Hellflame - Fanmade - Prithak"
  2. SCREEN _NEWIMAGE(800, 600, 32)
  3. DIM totalpkmn$(14)
  4. DIM curpkmn$(6)
  5. DIM types$(14)
  6. talktomom$ = "false"
  7. talktogary$ = "false"
  8. IF _FILEEXISTS("pkmn.txt") THEN
  9. OPEN "pkmn.txt" FOR INPUT AS #1
  10. FOR i = 1 TO 14
  11. INPUT #1, totalpkmn$(i)
  12. INPUT #1, types$(i)
  13. NEXT i
  14. CLOSE #1
  15. END IF
  16. IF _FILEEXISTS("limit.txt") THEN
  17. OPEN "limit.txt" FOR INPUT AS #1
  18. INPUT #1, limit
  19. CLOSE #1
  20. ELSE
  21. OPEN "limit.txt" FOR OUTPUT AS #1
  22. PRINT #1, "30"
  23. CLOSE #1
  24. limit = 30
  25. END IF
  26. x = 540
  27. y = 360
  28. text limit, 1, 1, "ZZZZ....."
  29. SLEEP
  30. text limit, 2, 1, "ZZZZZZZ.......'"
  31. SLEEP
  32. text limit, 3, 1, "*Ugh* It's morning already?"
  33. SLEEP
  34. CLS
  35. home1
  36. makechar x, y
  37. COLOR , _RGB32(100, 200, 255)
  38. LINE (0, 0)-(800, 50), _RGB32(100, 200, 255), BF
  39. text limit, 1, 1, "Oh yeah! Today is the day I get my starter Pokemon!"
  40. SLEEP
  41. text limit, 2, 1, "I gotta get to the professor's lab soon!"
  42. SLEEP
  43. text limit, 3, 1, "Gotta say that to mom as well..."
  44. SLEEP
  45. COLOR , _RGB32(0, 0, 0)
  46. homes1:
  47. CLS s
  48. DO
  49.  
  50. home1
  51.  
  52. k$ = UCASE$(INKEY$)
  53.  
  54. IF k$ = "W" THEN y = y - 10
  55. IF k$ = "S" THEN y = y + 10
  56. IF k$ = "A" THEN x = x - 10
  57. IF k$ = "D" THEN x = x + 10
  58.  
  59. block x, y, 100, 100, 300, 200
  60. block x, y, (10 + 790) / 2, 10, (10 + 790) / 2, 300
  61. block x, y, (10 + 790) / 2, 400, (10 + 790) / 2, 790
  62.  
  63.  
  64. IF detect(x, y, 100, 540, 140, 580) AND talktomom$ = "false" THEN
  65. textbar limit, 1, 1, "You should probably talk to your mom first..."
  66.  
  67. _DISPLAY
  68. SLEEP
  69. y = y - 20
  70. ELSEIF detect(x, y, 100, 540, 140, 580) AND talktomom$ = "true" THEN
  71. x = 120
  72. y = 200
  73. GOTO r1
  74. END IF
  75.  
  76. makechar x, y
  77. IF detect(x, y, 320 - 100, 150 - 100, 320 + 100, 150 + 100) THEN
  78. _PRINTSTRING (0, 500), "Press 'E' to interact!"
  79. END IF
  80. IF detect(x, y, 320 - 100, 150 - 100, 320 + 100, 150 + 100) AND k$ = "E" THEN
  81. textbar limit, 1, 1, "MOM: I'm so glad you are going to be a pokemon trainer now! People do grow fast!"
  82. SLEEP
  83. talktomom$ = "true"
  84. END IF
  85.  
  86. LOCATE 1, 1: PRINT x; y
  87. COLOR , _RGB32(0, 0, 0)
  88. _DISPLAY
  89. CLS
  90. LOOP
  91.  
  92.  
  93. r1:
  94. CLS
  95. _AUTODISPLAY
  96. IF talktogary$ = "false" THEN
  97. road1
  98. makechar x, y
  99. makechar2 x, y + 40, 50, 60, 40
  100. SLEEP 1
  101. textbar limit, 1, 1, "GARY: Oh! " + name$ + " can you come to my home for a bit? I've got something to give ya"
  102. SLEEP
  103. textbar limit, 1, 1, "Oh, OK!"
  104. SLEEP
  105. COLOR , _RGB32(0, 0, 0)
  106. FOR i = y + 40 TO y + 50 STEP 20
  107. road1
  108. makechar x, y
  109. makechar2 x, i, 50, 60, 40
  110. _DISPLAY
  111. _LIMIT 10
  112. CLS
  113. NEXT
  114. FOR j = x TO x + 450 STEP 20
  115. road1
  116. makechar x, y
  117. makechar2 j, i, 50, 60, 40
  118. _DISPLAY
  119. _LIMIT 10
  120. CLS
  121. NEXT j
  122. FOR i = y + 50 TO y - 20 STEP -20
  123. road1
  124. makechar x, y
  125. makechar2 j, i, 50, 60, 40
  126. _DISPLAY
  127. _LIMIT 10
  128. CLS
  129. NEXT i
  130. END IF
  131. talktogary$ = "true"
  132. DO
  133.  
  134. road1
  135. move x, y
  136.  
  137. makechar x, y
  138. IF detect(x, y, 100, 100, 180, 180) THEN
  139. x = 120
  140. y = 520
  141. GOTO homes1
  142. END IF
  143.  
  144. IF x > 380 AND y <= 580 AND y >= 400 THEN
  145. x = 380
  146. END IF
  147.  
  148.  
  149. LOCATE 1, 1: PRINT x; y
  150. _DISPLAY
  151. CLS
  152. LOOP
  153. road1
  154.  
  155. SUB home1 ()
  156. LINE (100, 100)-(300, 200), _RGB32(100, 200, 255), BF
  157. LINE (100, 100)-(300, 200), _RGB32(255, 255, 255), B
  158. makechar2 320, 150, 68, 68, 68
  159.  
  160. LINE ((10 + 790) / 2, 10)-((10 + 790) / 2, 300), _RGB32(100, 200, 255)
  161. LINE ((10 + 790) / 2, 400)-((10 + 790) / 2, 590), _RGB32(100, 200, 255)
  162.  
  163. LINE (490, 350)-(600, 550), _RGB32(100, 200, 255), BF
  164. LINE (490, 350)-(600, 550), _RGB32(255, 255, 255), B
  165.  
  166. LINE (100, 590)-(100, 550), _RGB32(100, 200, 255)
  167. LINE (150, 590)-(150, 550), _RGB32(100, 200, 255)
  168. END SUB
  169.  
  170. SUB crosspath ()
  171. LINE (350, 0)-(450, 600), _RGB32(100, 200, 255), BF
  172. LINE (0, 250)-(800, 350), _RGB32(100, 200, 255), BF
  173. END SUB
  174.  
  175. SUB road1 ()
  176. crosspath
  177. LINE (100, 100)-(200, 200), _RGB32(255, 200, 100), BF
  178. LINE (100, 100)-(200, 200), _RGB32(255, 255, 255), B
  179.  
  180. LINE (540, 100)-(660, 200), _RGB32(67, 67, 67), BF
  181. LINE (540, 100)-(660, 200), _RGB32(255, 255, 255), B
  182.  
  183. LINE (60, 460)-(320, 580), _RGB32(120, 49, 50), BF
  184. LINE (60, 460)-(320, 580), _RGB32(255, 255, 255), B
  185.  
  186.  
  187. END SUB
  188.  
  189. SUB makechar (x, y)
  190. CIRCLE (x, y), 10, _RGB32(255, 255, 255)
  191. END SUB
  192.  
  193. FUNCTION detect (x, y, x1, y1, x2, y2)
  194. IF x >= x1 AND x <= x2 AND y >= y1 AND y <= y2 THEN
  195. detect = -1
  196. END IF
  197. END FUNCTION
  198.  
  199. SUB text (limit, x, y, a$)
  200. FOR i = 1 TO LEN(a$)
  201. LOCATE x, y: PRINT LEFT$(a$, i)
  202. _LIMIT limit
  203. NEXT i
  204. END SUB
  205.  
  206. SUB makechar2 (x, y, r, g, b)
  207. CIRCLE (x, y), 10, _RGB32(r, g, b)
  208. END SUB
  209.  
  210. SUB textbar (limit, x, y, a$)
  211. LINE (0, 0)-(800, 50), _RGB32(100, 200, 255), BF
  212. COLOR , _RGB32(100, 200, 255)
  213. FOR i = 1 TO LEN(a$)
  214. LOCATE x, y: PRINT LEFT$(a$, i)
  215. _LIMIT limit
  216. _DISPLAY
  217. NEXT i
  218. END SUB
  219.  
  220. SUB move (x, y)
  221. k$ = UCASE$(INKEY$)
  222.  
  223. IF k$ = "W" THEN y = y - 10
  224. IF k$ = "S" THEN y = y + 10
  225. IF k$ = "A" THEN x = x - 10
  226. IF k$ = "D" THEN x = x + 10
  227. END SUB
  228.  
  229. SUB block (x, y, x1, y1, x2, y2)
  230. IF detect(x, y, x1, y1, x2, y1) THEN y = y - 10
  231. IF detect(x, y, x1, y2, x2, y2) THEN y = y + 10
  232. IF detect(x, y, x1, y1, x1, y2) THEN x = x - 10
  233. IF detect(x, y, x2, y1, x2, y2) THEN x = x + 10
  234. END SUB
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement