Author Topic: In the last Christmas holidays  (Read 4653 times)

0 Members and 1 Guest are viewing this topic.

Offline qb4ever

  • Newbie
  • Posts: 40
  • LOCATE 15,15: COLOR 14: PRINT "Hello World!"
    • View Profile
In the last Christmas holidays
« on: March 06, 2019, 05:29:46 am »
During the last Christmas holidays, I had some time and I wrote a few lines, but in QB45.

Just to show my son, incredulous, that not exist only Fortnite! (or similar) :D

It's a concept, just an idea ....

From the main screen, you can see the commands with the keys to use.

Any suggestion is well accepted!

Code: QB64: [Select]
  1. '================== DISEGNO SCHERMATA DI INIZIO ===============
  2. '*** TITLE GIFTS
  3.  
  4. XB = 30
  5. YB = 50
  6.  
  7. '*************** testa e naso
  8. PSET (XB, YB)
  9. DRAW "C88f3r8e3u8d5r1u1l1u4h3l8g3d8"
  10. PAINT (XB + 5, YB), 88
  11.  
  12.  
  13. '*************** bocca occhi e capelli
  14. PSET (XB + 13, YB)
  15. DRAW "C4l1h1BU6BR1C15D3L1U2L1D2R2C0U1BL6C15U6l3g3d7r2u6r3d3r2u7r4f1l4"
  16. PAINT (XB + 5, YB - 8), 15
  17.  
  18.  
  19.  
  20. '************** busto
  21. PSET (XB + 3, YB + 3)
  22. DRAW "c4g3d7r14u7h3l8bg3bd8c6r14d1l14"
  23. PAINT (XB + 5, YB + 8), 4
  24. PSET (XB + 4, YB + 8)
  25.  
  26.  
  27. '************ gambe
  28. PSET (XB, YB + 16)
  29. DRAW "c4d3f4d6r9u12e1l14"
  30. PAINT (XB + 5, YB + 20), 4
  31. PSET (XB + 4, YB + 35)
  32.  
  33. ' *********** scarpe
  34. DRAW "c6f1r9e1u2h1l9g1d2bu4br2c88u1r2d1l1"
  35. PAINT (XB + 7, YB + 35), 6
  36.  
  37. ' ********** braccio e mano
  38. PSET (XB + 4, YB + 8)
  39. DRAW "c120d10r1u10r1d10r1u10"
  40. PSET (XB + 5, YB + 19)
  41. DRAW "c88d1r1u1l1"
  42.  
  43. '********** BARBA
  44. PSET (XB + 13, YB - 2)
  45. DRAW "C15L2G3D2F4E2U7L2"
  46. PAINT (XB + 12, YB + 2), 15
  47. '*************** bocca
  48. PSET (XB + 13, YB)
  49. DRAW "C4l1h1"
  50.  
  51. '*********** CAPPELLO
  52. PSET (XB, YB - 10)
  53. DRAW "C4R14H7G7"
  54. PAINT (XB + 7, YB - 15), 4
  55. PSET (XB + 7, YB - 17)
  56. DRAW "C4L6F6"
  57. PAINT (XB + 4, YB - 16), 4
  58.  
  59. CIRCLE (XB - 2, YB - 17), 3, 15
  60. PAINT (XB - 2, YB - 17), 15
  61. 'GOTO SCR1
  62.  
  63.  
  64. '***** pietra innevata
  65. PIX = 15
  66. PIY = 90
  67.  
  68. PSET (PIX, PIY)
  69. DRAW "c186f25e25l50"
  70. PAINT (PIX + 15, PIY + 12), 186
  71. CIRCLE (PIX + 15, PIY + 8), 3, 6
  72. PAINT (PIX + 15, PIY + 8), 6
  73. CIRCLE (PIX + 25, PIY + 12), 3, 6
  74. PAINT (PIX + 25, PIY + 12), 6
  75. CIRCLE (PIX + 35, PIY + 10), 3, 6
  76. PAINT (PIX + 35, PIY + 10), 6
  77. PSET (PIX - 5, PIY)
  78. DRAW "C30f2R55E2U2H2L55G2D2"
  79. PAINT (PIX + 25, PIY), 30
  80. PSET (PIX, PIY - 2)
  81. DRAW "C15R50D1L50"
  82.  
  83.  
  84.  
  85. '****** SCRITTA IN ASCII
  86. AJ = 3 '35
  87. W1 = 4
  88. W2 = 14
  89. W3 = 2
  90.  
  91. LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  92. LOCATE 10, 11: COLOR W1: PRINT CHR$(AJ)
  93. LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  94. LOCATE 9, 13: COLOR W3: PRINT CHR$(AJ)
  95. LOCATE 8, 12: COLOR W1: PRINT CHR$(AJ)
  96. LOCATE 8, 11: COLOR W1: PRINT CHR$(AJ)
  97. 'LOCATE 8, 10: COLOR W1: PRINT CHR$(AJ)
  98. LOCATE 7, 10: COLOR W3: PRINT CHR$(AJ)
  99. 'LOCATE 6, 10: COLOR W1: PRINT CHR$(AJ)
  100. LOCATE 6, 11: COLOR W1: PRINT CHR$(AJ)
  101. LOCATE 6, 12: COLOR W1: PRINT CHR$(AJ)
  102. 'LOCATE 6, 13: COLOR W1: PRINT CHR$(AJ)
  103.  
  104.  
  105. LOCATE 10, 15: COLOR W1: PRINT CHR$(AJ)
  106. LOCATE 9, 15: COLOR W3: PRINT CHR$(AJ)
  107. LOCATE 8, 15: COLOR W1: PRINT CHR$(AJ)
  108. LOCATE 7, 15: COLOR W3: PRINT CHR$(AJ)
  109. LOCATE 6, 16: COLOR W1: PRINT CHR$(AJ)
  110. LOCATE 6, 17: COLOR W1: PRINT CHR$(AJ)
  111. LOCATE 8, 16: COLOR W1: PRINT CHR$(AJ)
  112. LOCATE 8, 17: COLOR W1: PRINT CHR$(AJ)
  113. LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  114. LOCATE 9, 18: COLOR W3: PRINT CHR$(AJ)
  115. LOCATE 8, 18: COLOR W1: PRINT CHR$(AJ)
  116. LOCATE 7, 18: COLOR W3: PRINT CHR$(AJ)
  117.  
  118. LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  119. LOCATE 9, 20: COLOR W3: PRINT CHR$(AJ)
  120. LOCATE 8, 20: COLOR W1: PRINT CHR$(AJ)
  121. LOCATE 7, 20: COLOR W3: PRINT CHR$(AJ)
  122. LOCATE 6, 20: COLOR W1: PRINT CHR$(AJ)
  123. LOCATE 8, 21: COLOR W1: PRINT CHR$(AJ)
  124. LOCATE 9, 22: COLOR W3: PRINT CHR$(AJ)
  125. LOCATE 10, 23: COLOR W1: PRINT CHR$(AJ)
  126. LOCATE 9, 23: COLOR W3: PRINT CHR$(AJ)
  127. LOCATE 8, 23: COLOR W1: PRINT CHR$(AJ)
  128. LOCATE 7, 23: COLOR W3: PRINT CHR$(AJ)
  129. LOCATE 6, 23: COLOR W1: PRINT CHR$(AJ)
  130.  
  131. LOCATE 10, 27: COLOR W1: PRINT CHR$(AJ)
  132. LOCATE 9, 27: COLOR W3: PRINT CHR$(AJ)
  133. LOCATE 8, 27: COLOR W1: PRINT CHR$(AJ)
  134. LOCATE 7, 27: COLOR W3: PRINT CHR$(AJ)
  135. LOCATE 6, 27: COLOR W1: PRINT CHR$(AJ)
  136. LOCATE 6, 25: COLOR W1: PRINT CHR$(AJ)
  137. LOCATE 6, 26: COLOR W1: PRINT CHR$(AJ)
  138. LOCATE 6, 27: COLOR W1: PRINT CHR$(AJ)
  139. LOCATE 6, 28: COLOR W1: PRINT CHR$(AJ)
  140. LOCATE 6, 29: COLOR W1: PRINT CHR$(AJ)
  141.  
  142. LOCATE 10, 31: COLOR W1: PRINT CHR$(AJ)
  143. LOCATE 9, 31: COLOR W3: PRINT CHR$(AJ)
  144. LOCATE 8, 31: COLOR W1: PRINT CHR$(AJ)
  145. LOCATE 7, 31: COLOR W3: PRINT CHR$(AJ)
  146. LOCATE 6, 32: COLOR W1: PRINT CHR$(AJ)
  147. LOCATE 6, 33: COLOR W1: PRINT CHR$(AJ)
  148. LOCATE 8, 32: COLOR W1: PRINT CHR$(AJ)
  149. LOCATE 8, 33: COLOR W1: PRINT CHR$(AJ)
  150. LOCATE 10, 34: COLOR W1: PRINT CHR$(AJ)
  151. LOCATE 9, 34: COLOR W3: PRINT CHR$(AJ)
  152. LOCATE 8, 34: COLOR W1: PRINT CHR$(AJ)
  153. LOCATE 7, 34: COLOR W3: PRINT CHR$(AJ)
  154.  
  155. LOCATE 5, 35: COLOR W1: PRINT CHR$(AJ)
  156. LOCATE 6, 35: COLOR W1: PRINT CHR$(AJ)
  157.  
  158.  
  159. LOCATE 10, 36: COLOR W1: PRINT CHR$(AJ)
  160. LOCATE 10, 37: COLOR W1: PRINT CHR$(AJ)
  161. LOCATE 10, 38: COLOR W1: PRINT CHR$(AJ)
  162. LOCATE 9, 39: COLOR W3: PRINT CHR$(AJ)
  163. LOCATE 8, 38: COLOR W1: PRINT CHR$(AJ)
  164. LOCATE 8, 37: COLOR W1: PRINT CHR$(AJ)
  165. 'LOCATE 8, 10: COLOR W1: PRINT CHR$(AJ)
  166. LOCATE 7, 36: COLOR W3: PRINT CHR$(AJ)
  167. 'LOCATE 6, 10: COLOR W1: PRINT CHR$(AJ)
  168. LOCATE 6, 37: COLOR W1: PRINT CHR$(AJ)
  169. LOCATE 6, 38: COLOR W1: PRINT CHR$(AJ)
  170. 'LOCATE 6, 13: COLOR W1: PRINT CHR$(AJ)
  171.  
  172.  
  173. LOCATE 17, 17: COLOR W1: PRINT CHR$(AJ)
  174. LOCATE 17, 16: COLOR W1: PRINT CHR$(AJ)
  175. LOCATE 16, 18: COLOR W3: PRINT CHR$(AJ)
  176.  
  177. 'LOCATE 17, 15: COLOR W1: PRINT CHR$(AJ)
  178. LOCATE 16, 15: COLOR W3: PRINT CHR$(AJ)
  179. LOCATE 15, 15: COLOR W1: PRINT CHR$(AJ)
  180. LOCATE 14, 15: COLOR W3: PRINT CHR$(AJ)
  181. LOCATE 13, 16: COLOR W1: PRINT CHR$(AJ)
  182. LOCATE 13, 17: COLOR W1: PRINT CHR$(AJ)
  183. 'LOCATE 13, 18: COLOR W1: PRINT CHR$(AJ)
  184. LOCATE 15, 17: COLOR W1: PRINT CHR$(AJ)
  185.  
  186. LOCATE 17, 20: COLOR W1: PRINT CHR$(AJ)
  187. LOCATE 16, 20: COLOR W3: PRINT CHR$(AJ)
  188. LOCATE 15, 20: COLOR W1: PRINT CHR$(AJ)
  189. LOCATE 14, 20: COLOR W3: PRINT CHR$(AJ)
  190. LOCATE 13, 20: COLOR W1: PRINT CHR$(AJ)
  191.  
  192. LOCATE 17, 22: COLOR W1: PRINT CHR$(AJ)
  193. LOCATE 16, 22: COLOR W3: PRINT CHR$(AJ)
  194. LOCATE 15, 22: COLOR W1: PRINT CHR$(AJ)
  195. LOCATE 14, 22: COLOR W3: PRINT CHR$(AJ)
  196. LOCATE 13, 22: COLOR W1: PRINT CHR$(AJ)
  197. LOCATE 13, 23: COLOR W1: PRINT CHR$(AJ)
  198. LOCATE 13, 24: COLOR W1: PRINT CHR$(AJ)
  199. LOCATE 13, 25: COLOR W1: PRINT CHR$(AJ)
  200. LOCATE 15, 23: COLOR W1: PRINT CHR$(AJ)
  201.  
  202. LOCATE 17, 29: COLOR W1: PRINT CHR$(AJ)
  203. LOCATE 16, 29: COLOR W3: PRINT CHR$(AJ)
  204. LOCATE 15, 29: COLOR W1: PRINT CHR$(AJ)
  205. LOCATE 14, 29: COLOR W3: PRINT CHR$(AJ)
  206. LOCATE 13, 29: COLOR W1: PRINT CHR$(AJ)
  207. LOCATE 13, 27: COLOR W1: PRINT CHR$(AJ)
  208. LOCATE 13, 28: COLOR W1: PRINT CHR$(AJ)
  209. LOCATE 13, 29: COLOR W1: PRINT CHR$(AJ)
  210. LOCATE 13, 30: COLOR W1: PRINT CHR$(AJ)
  211. LOCATE 13, 31: COLOR W1: PRINT CHR$(AJ)
  212.  
  213. LOCATE 17, 33: COLOR W1: PRINT CHR$(AJ)
  214. LOCATE 17, 34: COLOR W1: PRINT CHR$(AJ)
  215. LOCATE 17, 35: COLOR W1: PRINT CHR$(AJ)
  216. LOCATE 16, 36: COLOR W3: PRINT CHR$(AJ)
  217. LOCATE 15, 35: COLOR W1: PRINT CHR$(AJ)
  218. LOCATE 15, 34: COLOR W1: PRINT CHR$(AJ)
  219. 'LOCATE 8, 33: COLOR W1: PRINT CHR$(AJ)
  220. LOCATE 14, 33: COLOR W3: PRINT CHR$(AJ)
  221. 'LOCATE 6, 33: COLOR W1: PRINT CHR$(AJ)
  222. LOCATE 13, 34: COLOR W1: PRINT CHR$(AJ)
  223. LOCATE 13, 35: COLOR W1: PRINT CHR$(AJ)
  224. 'LOCATE 6, 13: COLOR W1: PRINT CHR$(AJ)
  225.  
  226. '*********
  227. LOCATE 22, 10: COLOR 41: PRINT "Programmato da DS"
  228. LOCATE 23, 18: COLOR 43: PRINT "v 0.9"
  229.  
  230.  
  231.  
  232. '================== FINE DISEGNO SCHERMATA DI INIZIO ===============
  233. 'ooO(§§)Ooo
  234. 'ooO(§§)Ooo
  235. '================== INIZIO MENU ===============
  236. MENU:
  237. PAINT (1, 1), 0
  238. W1 = 4
  239. W2 = 14
  240. W3 = 2
  241.  
  242. LOCATE 5, 15: COLOR W3, 0: PRINT " I N I Z I O"
  243. LOCATE 8, 15: COLOR W3, 0: PRINT "L I V E L L I"
  244. LOCATE 11, 15: COLOR W3, 0: PRINT "C O M A N D I"
  245.  
  246. LOCATE 5, 15: COLOR W1: PRINT " I"
  247. LOCATE 8, 15: COLOR W1: PRINT "L"
  248. LOCATE 11, 15: COLOR W1: PRINT "C"
  249.  
  250.  
  251. '****** pupazzo di neve
  252. CIRCLE (160, 170), 20, 15
  253. PAINT (160, 170), 15
  254. CIRCLE (160, 143), 15, 15
  255. PAINT (160, 143), 15
  256. CIRCLE (160, 143), 8, 4, 4.14, 5.28
  257. CIRCLE (152, 140), 3, 0
  258. PAINT (152, 140), 0
  259. CIRCLE (168, 140), 3, 0
  260. PAINT (168, 140), 0
  261. CIRCLE (160, 143), 3, 12
  262. PAINT (160, 143), 12
  263.  
  264. CIRCLE (160, 160), 3, 4
  265. PAINT (160, 160), 4
  266. CIRCLE (160, 170), 3, 4
  267. PAINT (160, 170), 4
  268. CIRCLE (160, 180), 3, 4
  269. PAINT (160, 180), 4
  270.  
  271. '************* pallina
  272.  
  273. CIRCLE (80, 80), 10, 4
  274. PAINT (80, 80), 4
  275. PSET (70, 80)
  276. DRAW "c2e2f4e4f4e4f2"
  277. PSET (79, 71)
  278. DRAW "c7u2r2d2u2l1c15u14"
  279.  
  280. CIRCLE (40, 70), 10, 2
  281. PAINT (40, 70), 2
  282. PSET (30, 70)
  283. DRAW "c4e2f4e4f4e4f2"
  284. PSET (39, 61)
  285. DRAW "c7u2r2d2u2l1c15u14"
  286.  
  287. CIRCLE (280, 80), 10, 14
  288. PAINT (280, 80), 14
  289. PSET (270, 80)
  290. DRAW "c2e2f4e4f4e4f2"
  291. PSET (279, 71)
  292. DRAW "c7u2r2d2u2l1c15u14"
  293.  
  294. CIRCLE (240, 70), 10, 42
  295. PAINT (240, 70), 42
  296. PSET (230, 70)
  297. DRAW "c2e2f4e4f4e4f2"
  298. PSET (239, 61)
  299. DRAW "c7u2r2d2u2l1c15u14"
  300.  
  301.  
  302.  
  303.  
  304.  
  305.  
  306.  
  307.  
  308.  
  309. PS7: A$ = INKEY$: IF A$ = "" THEN GOTO PS7
  310.  
  311.  
  312. IF A$ = "I" OR A$ = "i" THEN GOTO VAI
  313. IF A$ = "L" OR A$ = "l" THEN GOTO LEVEL
  314. IF A$ = "C" OR A$ = "c" THEN GOTO COMANDI
  315. GOTO PS7
  316. '============= INIZIO SCHERMATA LIVELLO ========
  317. LEVEL:
  318. XB = 30
  319. YB = 130
  320.  
  321. '*************** testa e naso
  322. PSET (XB, YB)
  323. DRAW "C88f3r8e3u8d5r1u1l1u4h3l8g3d8"
  324. PAINT (XB + 5, YB), 88
  325.  
  326.  
  327. '*************** bocca occhi e capelli
  328. PSET (XB + 13, YB)
  329. DRAW "C4l1h1BU6BR1C15D3L1U2L1D2R2C0U1BL6C15U6l3g3d7r2u6r3d3r2u7r4f1l4"
  330. PAINT (XB + 5, YB - 8), 15
  331.  
  332.  
  333.  
  334. '************** busto
  335. PSET (XB + 3, YB + 3)
  336. DRAW "c4g3d7r14u7h3l8bg3bd8c6r14d1l14"
  337. PAINT (XB + 5, YB + 8), 4
  338. PSET (XB + 4, YB + 8)
  339.  
  340.  
  341. '************ gambe
  342. PSET (XB, YB + 16)
  343. DRAW "c4d3f4d6r9u12e1l14"
  344. PAINT (XB + 5, YB + 20), 4
  345. PSET (XB + 4, YB + 35)
  346.  
  347. ' *********** scarpe
  348. DRAW "c6f1r9e1u2h1l9g1d2bu4br2c88u1r2d1l1"
  349. PAINT (XB + 7, YB + 35), 6
  350.  
  351. ' ********** braccio e mano
  352. PSET (XB + 4, YB + 8)
  353. DRAW "c120d10r1u10r1d10r1u10"
  354. PSET (XB + 5, YB + 19)
  355. DRAW "c88d1r1u1l1"
  356.  
  357. '********** BARBA
  358. PSET (XB + 13, YB - 2)
  359. DRAW "C15L2G3D2F4E2U7L2"
  360. PAINT (XB + 12, YB + 2), 15
  361. '*************** bocca
  362. PSET (XB + 13, YB)
  363. DRAW "C4l1h1"
  364.  
  365. '*********** CAPPELLO
  366. PSET (XB, YB - 10)
  367. DRAW "C4R14H7G7"
  368. PAINT (XB + 7, YB - 15), 4
  369. PSET (XB + 7, YB - 17)
  370. DRAW "C4L6F6"
  371. PAINT (XB + 4, YB - 16), 4
  372.  
  373. CIRCLE (XB - 2, YB - 17), 3, 15
  374. PAINT (XB - 2, YB - 17), 15
  375. 'GOTO SCR1
  376.  
  377.  
  378. '***** pietra innevata
  379. PIX = 15
  380. PIY = 170
  381.  
  382. PSET (PIX, PIY)
  383. DRAW "c186f25e25l50"
  384. PAINT (PIX + 15, PIY + 12), 186
  385. CIRCLE (PIX + 15, PIY + 8), 3, 6
  386. PAINT (PIX + 15, PIY + 8), 6
  387. CIRCLE (PIX + 25, PIY + 12), 3, 6
  388. PAINT (PIX + 25, PIY + 12), 6
  389. CIRCLE (PIX + 35, PIY + 10), 3, 6
  390. PAINT (PIX + 35, PIY + 10), 6
  391. PSET (PIX - 5, PIY)
  392. DRAW "C30f2R55E2U2H2L55G2D2"
  393. PAINT (PIX + 25, PIY), 30
  394. PSET (PIX, PIY - 2)
  395. DRAW "C15R50D1L50"
  396.  
  397. '****** fumetto *******
  398. CIRCLE (120, 40), 16, 15
  399. PAINT (120, 40), 15
  400. CIRCLE (280, 40), 16, 15
  401. PAINT (280, 40), 15
  402. CIRCLE (120, 140), 16, 15
  403. PAINT (120, 140), 15
  404. CIRCLE (280, 140), 16, 15
  405. PAINT (280, 140), 15
  406. LINE (104, 40)-(296, 140), 15, BF
  407. LINE (120, 27)-(280, 153), 15, BF
  408. LINE (50, 130)-(120, 130), 15
  409. LINE (50, 130)-(120, 100), 15
  410. PAINT (70, 128), 15
  411.  
  412. '********** scritte livello 1 ************
  413. LOCATE 7, 16: COLOR 41, 15: PRINT "Livello 1"
  414. LOCATE 8, 16: COLOR 2, 15: PRINT "Nessun vento"
  415. LOCATE 9, 16: COLOR 41, 15: PRINT "Quando si lancia il"
  416. LOCATE 10, 16: COLOR 41, 15: PRINT "pacco, non viene"
  417. LOCATE 11, 16: COLOR 41, 15: PRINT "influenzato dal vento."
  418. LOCATE 7, 16: COLOR 15, 15: PRINT "Livello 1"
  419. LOCATE 8, 16: COLOR 15, 15: PRINT "Nessun vento"
  420. LOCATE 9, 16: COLOR 15, 15: PRINT "Quando si lancia il"
  421. LOCATE 10, 16: COLOR 15, 15: PRINT "pacco, non viene"
  422. LOCATE 11, 16: COLOR 15, 15: PRINT "influenzato dal vento."
  423.  
  424. '********** scritte livello 2 ************
  425. LOCATE 7, 16: COLOR 41, 15: PRINT "Livello 2"
  426. LOCATE 8, 16: COLOR 2, 15: PRINT "Vento leggero"
  427. LOCATE 9, 16: COLOR 41, 15: PRINT "Quando si lancia il"
  428. LOCATE 10, 16: COLOR 41, 15: PRINT "pacco, viene spostato"
  429. LOCATE 11, 16: COLOR 41, 15: PRINT "dal vento da dx a sx."
  430. LOCATE 7, 16: COLOR 15, 15: PRINT "Livello 2"
  431. LOCATE 8, 16: COLOR 15, 15: PRINT "Vento leggero"
  432. LOCATE 9, 16: COLOR 15, 15: PRINT "Quando si lancia il"
  433. LOCATE 10, 16: COLOR 15, 15: PRINT "pacco, viene spostato"
  434. LOCATE 11, 16: COLOR 15, 15: PRINT "dal vento da dx a sx."
  435.  
  436. '********** scritte livello 3 ************
  437. LOCATE 7, 16: COLOR 41, 15: PRINT "Livello 3"
  438. LOCATE 8, 16: COLOR 2, 15: PRINT "Vento forte"
  439. LOCATE 9, 16: COLOR 41, 15: PRINT "Quando si lancia il"
  440. LOCATE 10, 16: COLOR 41, 15: PRINT "pacco, viene spostato"
  441. LOCATE 11, 16: COLOR 41, 15: PRINT "dal vento da dx a sx."
  442. LOCATE 7, 16: COLOR 15, 15: PRINT "Livello 3"
  443. LOCATE 8, 16: COLOR 15, 15: PRINT "Vento forte"
  444. LOCATE 9, 16: COLOR 15, 15: PRINT "Quando si lancia il"
  445. LOCATE 10, 16: COLOR 15, 15: PRINT "pacco, viene spostato"
  446. LOCATE 11, 16: COLOR 15, 15: PRINT "dal vento da dx a sx."
  447.  
  448.  
  449. LINE (50, 0)-(320, 160), 0, BF
  450. GOTO MENU
  451. '============= FINE SCHERMATA LIVELLO ========
  452.  
  453.  
  454. '============= INIZIO SCHERMATA COMANDI ========
  455. COMANDI:
  456. LOCATE 2, 10: COLOR 41: PRINT "Comandi di Gioco"
  457.  
  458. LOCATE 7, 10: COLOR 41: PRINT "G"
  459. LOCATE 12, 10: COLOR 41: PRINT "H"
  460. LOCATE 17, 10: COLOR 41: PRINT "Space Bar"
  461. LOCATE 22, 10: COLOR 41: PRINT "B"
  462. PSET (69, 46)
  463. DRAW "C15D10BD1BR1R10BU1BR1U10BU1BL1L10"
  464. PSET (69, 86)
  465. DRAW "C15D10BD1BR1R10BU1BR1U10BU1BL1L10"
  466. PSET (69, 126)
  467. DRAW "C15D10BD1BR1R75BU1BR1U10BU1BL1L75"
  468. PSET (69, 166)
  469. DRAW "C15D10BD1BR1R10BU1BR1U10BU1BL1L10"
  470.  
  471.  
  472.  
  473.  
  474. '************* SLITTA FRECCIA INDIETRO *************
  475. XASN = 200: YASN = 50
  476.  
  477. CIRCLE (XASN - 10, YASN), 10, 44
  478. PAINT (XASN - 10, YASN), 44
  479. CIRCLE (XASN + 14, YASN + 3), 6, 44
  480. PAINT (XASN + 14, YASN + 3), 44
  481. LINE (XASN - 10, YASN)-(XASN + 12, YASN + 8), 44, BF
  482. LINE (XASN - 18, YASN + 14)-(XASN + 15, YASN + 14), 130
  483. CIRCLE (XASN + 15, YASN + 9), 6, 130, 4.5, 0
  484. LINE (XASN - 4, YASN + 14)-(XASN + 6, YASN + 9), 130, B
  485. LINE (XASN + 2, YASN - 1)-(XASN + 9, YASN - 6), 4, BF
  486. CIRCLE (XASN + 5, YASN - 10), 4, 88
  487. PAINT (XASN + 5, YASN - 10), 88
  488. PSET (XASN + 5, YASN - 10)
  489. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  490. CIRCLE (XASN - 7, YASN - 2), 7, 6
  491. PAINT (XASN - 8, YASN - 2), 6
  492. PSET (XASN - 8, YASN - 8)
  493. DRAW "c6e3l3f3"
  494. PSET (XASN - 24, YASN)
  495. DRAW "c2l10F5H5E5"
  496.  
  497. '************* SLITTA FRECCIA AVANTI *************
  498. XASF = 200: YASF = 90
  499. CIRCLE (XASF - 10, YASF), 10, 44
  500. PAINT (XASF - 10, YASF), 44
  501. CIRCLE (XASF + 14, YASF + 3), 6, 44
  502. PAINT (XASF + 14, YASF + 3), 44
  503. LINE (XASF - 10, YASF)-(XASF + 12, YASF + 8), 44, BF
  504. LINE (XASF - 18, YASF + 14)-(XASF + 15, YASF + 14), 130
  505. CIRCLE (XASF + 15, YASF + 9), 6, 130, 4.5, 0
  506. LINE (XASF - 4, YASF + 14)-(XASF + 6, YASF + 9), 130, B
  507. LINE (XASF + 2, YASF - 1)-(XASF + 9, YASF - 6), 4, BF
  508. CIRCLE (XASF + 5, YASF - 10), 4, 88
  509. PAINT (XASF + 5, YASF - 10), 88
  510. PSET (XASF + 5, YASF - 10)
  511. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  512. CIRCLE (XASF - 7, YASF - 2), 7, 6
  513. PAINT (XASF - 8, YASF - 2), 6
  514. PSET (XASF - 8, YASF - 8)
  515. DRAW "c6e3l3f3"
  516. PSET (XASF + 24, YASF)
  517. DRAW "c2R10H5F5G5"
  518.  
  519. '************* SLITTA CON PACCO *************
  520.  
  521. XASP = 200: YASP = 130
  522. CIRCLE (XASP - 10, YASP), 10, 44
  523. PAINT (XASP - 10, YASP), 44
  524. CIRCLE (XASP + 14, YASP + 3), 6, 44
  525. PAINT (XASP + 14, YASP + 3), 44
  526. LINE (XASP - 10, YASP)-(XASP + 12, YASP + 8), 44, BF
  527. LINE (XASP - 18, YASP + 14)-(XASP + 15, YASP + 14), 130
  528. CIRCLE (XASP + 15, YASP + 9), 6, 130, 4.5, 0
  529. LINE (XASP - 4, YASP + 14)-(XASP + 6, YASP + 9), 130, B
  530. LINE (XASP + 2, YASP - 1)-(XASP + 9, YASP - 6), 4, BF
  531. CIRCLE (XASP + 5, YASP - 10), 4, 88
  532. PAINT (XASP + 5, YASP - 10), 88
  533. PSET (XASP + 5, YASP - 10)
  534. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  535. CIRCLE (XASP - 7, YASP - 2), 7, 6
  536. PAINT (XASP - 8, YASP - 2), 6
  537. PSET (XASP - 8, YASP - 8)
  538. DRAW "c6e3l3f3"
  539. LINE (XASP + 40, YASP)-(XASP + 48, YASP + 6), 4, BF
  540. LINE (XASP + 43, YASP)-(XASP + 45, YASP + 6), 14, BF
  541. LINE (XASP + 40, YASP + 2)-(XASP + 48, YASP + 4), 14, BF
  542.  
  543. '************* SLITTA CON BOMBA *************
  544. XASW = 200: YASW = 170
  545. CIRCLE (XASW - 10, YASW), 10, 44
  546. PAINT (XASW - 10, YASW), 44
  547. CIRCLE (XASW + 14, YASW + 3), 6, 44
  548. PAINT (XASW + 14, YASW + 3), 44
  549. LINE (XASW - 10, YASW)-(XASW + 12, YASW + 8), 44, BF
  550. LINE (XASW - 18, YASW + 14)-(XASW + 15, YASW + 14), 130
  551. CIRCLE (XASW + 15, YASW + 9), 6, 130, 4.5, 0
  552. LINE (XASW - 4, YASW + 14)-(XASW + 6, YASW + 9), 130, B
  553. LINE (XASW + 2, YASW - 1)-(XASW + 9, YASW - 6), 4, BF
  554. CIRCLE (XASW + 5, YASW - 10), 4, 88
  555. PAINT (XASW + 5, YASW - 10), 88
  556. PSET (XASW + 5, YASW - 10)
  557. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  558. CIRCLE (XASW - 7, YASW - 2), 7, 6
  559. PAINT (XASW - 8, YASW - 2), 6
  560. PSET (XASW - 8, YASW - 8)
  561. DRAW "c6e3l3f3"
  562.  
  563. CIRCLE (XASW + 44, YASW + 3), 4, 8
  564. PAINT (XASW + 44, YASW + 3), 8
  565. CIRCLE (XASW + 43, YASW + 2), 2, 7
  566. PAINT (XASW + 43, YASW + 2), 7
  567.  
  568. PSET (XASW + 44, YASW - 1)
  569. DRAW "C8U1BR1BU1C4U0"
  570. 'LINE (XASW + 44, YASW + 1)-(XASW + 48, YASW + 3), 7
  571. 'LINE (XASW + 43, YASW)-(XASW + 45, YASW + 6), 14, BF
  572. 'LINE (XASP + 40, YASP + 2)-(XASP + 48, YASP + 4), 14, BF
  573.  
  574.  
  575.  
  576.  
  577. GOTO MENU
  578. '============= FINE SCHERMATA COMANDI ========
  579.  
  580. VAI:
  581. FOR U = 1 TO 5
  582.     SLEEP 1
  583.     AJ = 3 '35
  584.     W1 = 4
  585.     W2 = 14
  586.     W3 = 2
  587.  
  588.     LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  589.     LOCATE 10, 11: COLOR W3: PRINT CHR$(AJ)
  590.     LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  591.     LOCATE 10, 13: COLOR W3: PRINT CHR$(AJ)
  592.     LOCATE 10, 14: COLOR W1: PRINT CHR$(AJ)
  593.     LOCATE 10, 15: COLOR W3: PRINT CHR$(AJ)
  594.     LOCATE 10, 16: COLOR W1: PRINT CHR$(AJ)
  595.     LOCATE 10, 17: COLOR W3: PRINT CHR$(AJ)
  596.     LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  597.     LOCATE 10, 19: COLOR W3: PRINT CHR$(AJ)
  598.     LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  599.     LOCATE 10, 21: COLOR W3: PRINT CHR$(AJ)
  600.     LOCATE 10, 22: COLOR W1: PRINT CHR$(AJ)
  601.     LOCATE 10, 23: COLOR W3: PRINT CHR$(AJ)
  602.     LOCATE 10, 24: COLOR W1: PRINT CHR$(AJ)
  603.     LOCATE 10, 25: COLOR W3: PRINT CHR$(AJ)
  604.     LOCATE 10, 26: COLOR W1: PRINT CHR$(AJ)
  605.     LOCATE 10, 27: COLOR W3: PRINT CHR$(AJ)
  606.     LOCATE 10, 28: COLOR W1: PRINT CHR$(AJ)
  607.     LOCATE 10, 29: COLOR W3: PRINT CHR$(AJ)
  608.     LOCATE 10, 30: COLOR W1: PRINT CHR$(AJ)
  609.  
  610.  
  611.  
  612.     LOCATE 14, 10: COLOR W1: PRINT CHR$(AJ)
  613.     LOCATE 14, 11: COLOR W3: PRINT CHR$(AJ)
  614.     LOCATE 14, 12: COLOR W1: PRINT CHR$(AJ)
  615.     LOCATE 14, 13: COLOR W3: PRINT CHR$(AJ)
  616.     LOCATE 14, 14: COLOR W1: PRINT CHR$(AJ)
  617.     LOCATE 14, 15: COLOR W3: PRINT CHR$(AJ)
  618.     LOCATE 14, 16: COLOR W1: PRINT CHR$(AJ)
  619.     LOCATE 14, 17: COLOR W3: PRINT CHR$(AJ)
  620.     LOCATE 14, 18: COLOR W1: PRINT CHR$(AJ)
  621.     LOCATE 14, 19: COLOR W3: PRINT CHR$(AJ)
  622.     LOCATE 14, 20: COLOR W1: PRINT CHR$(AJ)
  623.     LOCATE 14, 21: COLOR W3: PRINT CHR$(AJ)
  624.     LOCATE 14, 22: COLOR W1: PRINT CHR$(AJ)
  625.     LOCATE 14, 23: COLOR W3: PRINT CHR$(AJ)
  626.     LOCATE 14, 24: COLOR W1: PRINT CHR$(AJ)
  627.     LOCATE 14, 25: COLOR W3: PRINT CHR$(AJ)
  628.     LOCATE 14, 26: COLOR W1: PRINT CHR$(AJ)
  629.     LOCATE 14, 27: COLOR W3: PRINT CHR$(AJ)
  630.     LOCATE 14, 28: COLOR W1: PRINT CHR$(AJ)
  631.     LOCATE 14, 29: COLOR W3: PRINT CHR$(AJ)
  632.     LOCATE 14, 30: COLOR W1: PRINT CHR$(AJ)
  633.  
  634.  
  635.     LOCATE 12, 16: COLOR 41: PRINT "LIVELLO 1"
  636.  
  637.     SLEEP 1
  638.     W1 = 2
  639.     W2 = 14
  640.     W3 = 4
  641.  
  642.     LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  643.     LOCATE 10, 11: COLOR W3: PRINT CHR$(AJ)
  644.     LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  645.     LOCATE 10, 13: COLOR W3: PRINT CHR$(AJ)
  646.     LOCATE 10, 14: COLOR W1: PRINT CHR$(AJ)
  647.     LOCATE 10, 15: COLOR W3: PRINT CHR$(AJ)
  648.     LOCATE 10, 16: COLOR W1: PRINT CHR$(AJ)
  649.     LOCATE 10, 17: COLOR W3: PRINT CHR$(AJ)
  650.     LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  651.     LOCATE 10, 19: COLOR W3: PRINT CHR$(AJ)
  652.     LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  653.     LOCATE 10, 21: COLOR W3: PRINT CHR$(AJ)
  654.     LOCATE 10, 22: COLOR W1: PRINT CHR$(AJ)
  655.     LOCATE 10, 23: COLOR W3: PRINT CHR$(AJ)
  656.     LOCATE 10, 24: COLOR W1: PRINT CHR$(AJ)
  657.     LOCATE 10, 25: COLOR W3: PRINT CHR$(AJ)
  658.     LOCATE 10, 26: COLOR W1: PRINT CHR$(AJ)
  659.     LOCATE 10, 27: COLOR W3: PRINT CHR$(AJ)
  660.     LOCATE 10, 28: COLOR W1: PRINT CHR$(AJ)
  661.     LOCATE 10, 29: COLOR W3: PRINT CHR$(AJ)
  662.     LOCATE 10, 30: COLOR W1: PRINT CHR$(AJ)
  663.  
  664.  
  665.  
  666.     LOCATE 14, 10: COLOR W1: PRINT CHR$(AJ)
  667.     LOCATE 14, 11: COLOR W3: PRINT CHR$(AJ)
  668.     LOCATE 14, 12: COLOR W1: PRINT CHR$(AJ)
  669.     LOCATE 14, 13: COLOR W3: PRINT CHR$(AJ)
  670.     LOCATE 14, 14: COLOR W1: PRINT CHR$(AJ)
  671.     LOCATE 14, 15: COLOR W3: PRINT CHR$(AJ)
  672.     LOCATE 14, 16: COLOR W1: PRINT CHR$(AJ)
  673.     LOCATE 14, 17: COLOR W3: PRINT CHR$(AJ)
  674.     LOCATE 14, 18: COLOR W1: PRINT CHR$(AJ)
  675.     LOCATE 14, 19: COLOR W3: PRINT CHR$(AJ)
  676.     LOCATE 14, 20: COLOR W1: PRINT CHR$(AJ)
  677.     LOCATE 14, 21: COLOR W3: PRINT CHR$(AJ)
  678.     LOCATE 14, 22: COLOR W1: PRINT CHR$(AJ)
  679.     LOCATE 14, 23: COLOR W3: PRINT CHR$(AJ)
  680.     LOCATE 14, 24: COLOR W1: PRINT CHR$(AJ)
  681.     LOCATE 14, 25: COLOR W3: PRINT CHR$(AJ)
  682.     LOCATE 14, 26: COLOR W1: PRINT CHR$(AJ)
  683.     LOCATE 14, 27: COLOR W3: PRINT CHR$(AJ)
  684.     LOCATE 14, 28: COLOR W1: PRINT CHR$(AJ)
  685.     LOCATE 14, 29: COLOR W3: PRINT CHR$(AJ)
  686.     LOCATE 14, 30: COLOR W1: PRINT CHR$(AJ)
  687.  
  688.  
  689. DISEGNOMONDO:
  690. '******************** DISEGNO MONDO ***************************
  691. '================
  692. 'CIELO
  693.  
  694. LINE (0, 0)-(320, 120), 199, BF
  695. '================
  696. '================
  697. ' NUVOLE
  698.  
  699. NUVX = 200
  700. NUVY = 20
  701.  
  702. CIRCLE (20, 20), 8, 15
  703. PAINT (20, 20), 15
  704.  
  705. CIRCLE (26, 25), 8, 15
  706. PAINT (26, 25), 15
  707.  
  708. CIRCLE (38, 22), 8, 15
  709. PAINT (41, 22), 15
  710.  
  711. CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  712. PAINT (20 + NUVX, 20 + NUVY), 15
  713.  
  714. CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  715. PAINT (26 + NUVX, 25 + NUVY), 15
  716.  
  717. CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  718. PAINT (41 + NUVX, 22 + NUVY), 15
  719. '================
  720. '================
  721. 'TERRA
  722. LINE (0, 120)-(320, 200), 1, BF
  723. LINE (0, 100)-(40, 200), 1, BF
  724. LINE (80, 90)-(120, 200), 1, BF
  725. LINE (160, 110)-(200, 200), 1, BF
  726. LINE (240, 100)-(280, 200), 1, BF
  727.  
  728.  
  729. '================
  730. 'CAMINETTO
  731. CAMX = 140
  732. CAMY = 150
  733. CAMX1 = 140
  734. CAMX2 = 140
  735. FOR H = 1 TO 1
  736.     LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  737.     CAMX = CAMX + 10
  738. FOR HA = 1 TO 1
  739.     LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  740.     CAMX1 = CAMX1 + 10
  741. NEXT HA
  742. FOR HB = 1 TO 1
  743.     LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  744.     CAMX2 = CAMX2 + 10
  745. NEXT HB
  746. LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  747.  
  748. '******************** PUNTI E LIVELLO
  749. punt = 0
  750. LOCATE 1, 1: COLOR 14, 199: PRINT "Liv. 1"
  751. LOCATE 1, 28: COLOR 14, 199: PRINT "Punti"
  752. LOCATE 1, 33: COLOR 14, 199: PRINT punt
  753.  
  754.  
  755. '*********************************** FINE DISEGNO MONDO ***********
  756.  
  757.  
  758. 'ASTRONAVE
  759. XAST = 20 '*** POSIZIONE X INIZIALE
  760. YAST = 50 '*** POSIZIONE Y INIZIALE
  761.  
  762. PS0:
  763.  
  764. CIRCLE (XAST - 10, YAST), 10, 44
  765. PAINT (XAST - 10, YAST), 44
  766. CIRCLE (XAST + 14, YAST + 3), 6, 44
  767. PAINT (XAST + 14, YAST + 3), 44
  768. LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  769. LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  770. CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  771. LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  772. LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  773. CIRCLE (XAST + 5, YAST - 10), 4, 88
  774. PAINT (XAST + 5, YAST - 10), 88
  775. PSET (XAST + 5, YAST - 10)
  776. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  777. CIRCLE (XAST - 7, YAST - 2), 7, 6
  778. PAINT (XAST - 8, YAST - 2), 6
  779. PSET (XAST - 8, YAST - 8)
  780. DRAW "c6e3l3f3"
  781.  
  782.  
  783.  
  784. PS12: A$ = INKEY$: IF A$ = "" THEN GOTO PS12
  785.  
  786. IF A$ = " " THEN GOTO FIRE
  787. IF A$ = "G" OR A$ = "g" THEN GOTO AST1
  788. IF A$ = "H" OR A$ = "h" THEN GOTO AST2
  789. 'IF A$ = "Y" OR A$ = "y" THEN GOTO AST3
  790. 'IF A$ = "B" OR A$ = "b" THEN GOTO AST4
  791. IF A$ = "E" OR A$ = "e" THEN END
  792. GOTO PS12
  793.  
  794.  
  795.  
  796. '*** MOVIMENTO 4 DIREZIONI
  797. AST1: XAST = XAST - 10:
  798. IF XAST < 20 THEN XAST = 20 '**** ROUTINE MIGLIORATA PER NON FARE USCIRE DALLO SCHERMO
  799. GOTO DISEGNAAST
  800.  
  801. AST2: XAST = XAST + 10:
  802. IF XAST > 300 THEN XAST = 300 '**** ROUTINE MIGLIORATA PER NON FARE USCIRE DALLO SCHERMO
  803. GOTO DISEGNAAST
  804.  
  805. 'AST3: YAST = YAST - 10: GOTO DISEGNAAST     *** tolto il vert in alto
  806. 'AST4: YAST = YAST + 10: GOTO DISEGNAAST     *** tolto il vert in basso
  807. ' *** FINE MOVIMENTO 4 DIREZIONI
  808.  
  809. DISEGNAAST:
  810.  
  811. '******************** RI DISEGNO MONDO ***************************
  812. '================
  813. 'CIELO
  814.  
  815. LINE (0, 0)-(320, 120), 199, BF
  816. '================
  817. '================
  818. ' NUVOLE
  819.  
  820. NUVX = 200
  821. NUVY = 20
  822.  
  823. CIRCLE (20, 20), 8, 15
  824. PAINT (20, 20), 15
  825.  
  826. CIRCLE (26, 25), 8, 15
  827. PAINT (26, 25), 15
  828.  
  829. CIRCLE (38, 22), 8, 15
  830. PAINT (41, 22), 15
  831.  
  832. CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  833. PAINT (20 + NUVX, 20 + NUVY), 15
  834.  
  835. CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  836. PAINT (26 + NUVX, 25 + NUVY), 15
  837.  
  838. CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  839. PAINT (41 + NUVX, 22 + NUVY), 15
  840. '================
  841. '================
  842. 'TERRA
  843. LINE (0, 120)-(320, 200), 1, BF
  844. LINE (0, 100)-(40, 200), 1, BF
  845. LINE (80, 90)-(120, 200), 1, BF
  846. LINE (160, 110)-(200, 200), 1, BF
  847. LINE (240, 100)-(280, 200), 1, BF
  848.  
  849. 'CAMINETTO
  850. CAMX = 140
  851. CAMY = 150
  852. CAMX1 = 140
  853. CAMX2 = 140
  854. FOR H = 1 TO 1
  855.     LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  856.     CAMX = CAMX + 10
  857. FOR HA = 1 TO 1
  858.     LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  859.     CAMX1 = CAMX1 + 10
  860. NEXT HA
  861. FOR HB = 1 TO 1
  862.     LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  863.     CAMX2 = CAMX2 + 10
  864. NEXT HB
  865. LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  866.  
  867.  
  868. '================
  869. '================
  870.  
  871. '================
  872. '================
  873. '******************** PUNTI E LIVELLO
  874. punt = 0
  875. LOCATE 1, 1: COLOR 14, 199: PRINT "Liv. 1"
  876. LOCATE 1, 28: COLOR 14, 199: PRINT "Punti"
  877. LOCATE 1, 33: COLOR 14, 199: PRINT punt
  878.  
  879.  
  880. '*********************************** FINE DISEGNO MONDO ***********
  881.  
  882.  
  883.  
  884.  
  885. CIRCLE (XAST - 10, YAST), 10, 44
  886. PAINT (XAST - 10, YAST), 44
  887. CIRCLE (XAST + 14, YAST + 3), 6, 44
  888. PAINT (XAST + 14, YAST + 3), 44
  889. LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  890. LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  891. CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  892. LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  893. LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  894. CIRCLE (XAST + 5, YAST - 10), 4, 88
  895. PAINT (XAST + 5, YAST - 10), 88
  896. PSET (XAST + 5, YAST - 10)
  897. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  898. CIRCLE (XAST - 7, YAST - 2), 7, 6
  899. PAINT (XAST - 8, YAST - 2), 6
  900. PSET (XAST - 8, YAST - 8)
  901. DRAW "c6e3l3f3"
  902.  
  903.  
  904. GOTO PS12
  905.  
  906.  
  907.  
  908. '======================
  909. FIRE:
  910. ' ************ FIRE SPARA DA SOTTO DELLA ASTRONAVE
  911. XF = XAST: YF = YAST + 10
  912.  
  913. FOR T = 1 TO 10
  914.     YF = YF + 10
  915.     LINE (XF, YF)-(XF + 8, YF + 6), 4, BF
  916.     LINE (XF + 3, YF)-(XF + 5, YF + 6), 14, BF
  917.     LINE (XF, YF + 2)-(XF + 8, YF + 4), 14, BF
  918.     'SLEEP 1
  919.     FOR N = 1 TO 12000000: NEXT N
  920.     'ok su p2.8 6 gb ram
  921.     IF XF = 140 AND YF = 150 GOTO VITTORIA:
  922.     IF XF <> 140 AND YF = 150 GOTO KO
  923.     '******************** DISEGNO MONDO ***************************
  924.     '================
  925.     'CIELO
  926.  
  927.     LINE (0, 0)-(320, 120), 199, BF
  928.     '================
  929.     '================
  930.     ' NUVOLE
  931.  
  932.     NUVX = 200
  933.     NUVY = 20
  934.  
  935.     CIRCLE (20, 20), 8, 15
  936.     PAINT (20, 20), 15
  937.  
  938.     CIRCLE (26, 25), 8, 15
  939.     PAINT (26, 25), 15
  940.  
  941.     CIRCLE (38, 22), 8, 15
  942.     PAINT (41, 22), 15
  943.  
  944.     CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  945.     PAINT (20 + NUVX, 20 + NUVY), 15
  946.  
  947.     CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  948.     PAINT (26 + NUVX, 25 + NUVY), 15
  949.  
  950.     CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  951.     PAINT (41 + NUVX, 22 + NUVY), 15
  952.     '================
  953.     '================
  954.     'TERRA
  955.     LINE (0, 120)-(320, 200), 1, BF
  956.     LINE (0, 100)-(40, 200), 1, BF
  957.     LINE (80, 90)-(120, 200), 1, BF
  958.     LINE (160, 110)-(200, 200), 1, BF
  959.     LINE (240, 100)-(280, 200), 1, BF
  960.  
  961.     '================
  962.     'CAMINETTO
  963.     CAMX = 140
  964.     CAMY = 150
  965.     CAMX1 = 140
  966.     CAMX2 = 140
  967.     FOR H = 1 TO 1
  968.         LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  969.         CAMX = CAMX + 10
  970.     NEXT H
  971.     FOR HA = 1 TO 1
  972.         LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  973.         CAMX1 = CAMX1 + 10
  974.     NEXT HA
  975.     FOR HB = 1 TO 1
  976.         LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  977.         CAMX2 = CAMX2 + 10
  978.     NEXT HB
  979.     LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  980.  
  981.  
  982.  
  983.  
  984.  
  985.     CIRCLE (XAST - 10, YAST), 10, 44
  986.     PAINT (XAST - 10, YAST), 44
  987.     CIRCLE (XAST + 14, YAST + 3), 6, 44
  988.     PAINT (XAST + 14, YAST + 3), 44
  989.     LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  990.     LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  991.     CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  992.     LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  993.     LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  994.     CIRCLE (XAST + 5, YAST - 10), 4, 88
  995.     PAINT (XAST + 5, YAST - 10), 88
  996.     PSET (XAST + 5, YAST - 10)
  997.     DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  998.     CIRCLE (XAST - 7, YAST - 2), 7, 6
  999.     PAINT (XAST - 8, YAST - 2), 6
  1000.     PSET (XAST - 8, YAST - 8)
  1001.     DRAW "c6e3l3f3"
  1002.  
  1003.     '*********************************** FINE DISEGNO MONDO ***********
  1004.  
  1005. GOTO PS0
  1006.  
  1007.  
  1008. VITTORIA:
  1009. LOCATE 10, 12: COLOR 14, 199: PRINT "LIVELLO COMPLETATO": SLEEP 3: GOTO LEV2
  1010. KO:
  1011. LOCATE 10, 12: COLOR 43, 199: PRINT "G A M E    O V E R": SLEEP 3:
  1012. '*************************** QUI METTERE "GIOCHI ANCORA Y/N"
  1013.  
  1014. LEV2:
  1015. LINE (0, 0)-(320, 200), 0, BF
  1016. FOR U = 1 TO 5
  1017.     SLEEP 1
  1018.     AJ = 3 '35
  1019.     W1 = 4
  1020.     W2 = 14
  1021.     W3 = 2
  1022.  
  1023.     LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  1024.     LOCATE 10, 11: COLOR W3: PRINT CHR$(AJ)
  1025.     LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  1026.     LOCATE 10, 13: COLOR W3: PRINT CHR$(AJ)
  1027.     LOCATE 10, 14: COLOR W1: PRINT CHR$(AJ)
  1028.     LOCATE 10, 15: COLOR W3: PRINT CHR$(AJ)
  1029.     LOCATE 10, 16: COLOR W1: PRINT CHR$(AJ)
  1030.     LOCATE 10, 17: COLOR W3: PRINT CHR$(AJ)
  1031.     LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  1032.     LOCATE 10, 19: COLOR W3: PRINT CHR$(AJ)
  1033.     LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  1034.     LOCATE 10, 21: COLOR W3: PRINT CHR$(AJ)
  1035.     LOCATE 10, 22: COLOR W1: PRINT CHR$(AJ)
  1036.     LOCATE 10, 23: COLOR W3: PRINT CHR$(AJ)
  1037.     LOCATE 10, 24: COLOR W1: PRINT CHR$(AJ)
  1038.     LOCATE 10, 25: COLOR W3: PRINT CHR$(AJ)
  1039.     LOCATE 10, 26: COLOR W1: PRINT CHR$(AJ)
  1040.     LOCATE 10, 27: COLOR W3: PRINT CHR$(AJ)
  1041.     LOCATE 10, 28: COLOR W1: PRINT CHR$(AJ)
  1042.     LOCATE 10, 29: COLOR W3: PRINT CHR$(AJ)
  1043.     LOCATE 10, 30: COLOR W1: PRINT CHR$(AJ)
  1044.  
  1045.  
  1046.  
  1047.     LOCATE 14, 10: COLOR W1: PRINT CHR$(AJ)
  1048.     LOCATE 14, 11: COLOR W3: PRINT CHR$(AJ)
  1049.     LOCATE 14, 12: COLOR W1: PRINT CHR$(AJ)
  1050.     LOCATE 14, 13: COLOR W3: PRINT CHR$(AJ)
  1051.     LOCATE 14, 14: COLOR W1: PRINT CHR$(AJ)
  1052.     LOCATE 14, 15: COLOR W3: PRINT CHR$(AJ)
  1053.     LOCATE 14, 16: COLOR W1: PRINT CHR$(AJ)
  1054.     LOCATE 14, 17: COLOR W3: PRINT CHR$(AJ)
  1055.     LOCATE 14, 18: COLOR W1: PRINT CHR$(AJ)
  1056.     LOCATE 14, 19: COLOR W3: PRINT CHR$(AJ)
  1057.     LOCATE 14, 20: COLOR W1: PRINT CHR$(AJ)
  1058.     LOCATE 14, 21: COLOR W3: PRINT CHR$(AJ)
  1059.     LOCATE 14, 22: COLOR W1: PRINT CHR$(AJ)
  1060.     LOCATE 14, 23: COLOR W3: PRINT CHR$(AJ)
  1061.     LOCATE 14, 24: COLOR W1: PRINT CHR$(AJ)
  1062.     LOCATE 14, 25: COLOR W3: PRINT CHR$(AJ)
  1063.     LOCATE 14, 26: COLOR W1: PRINT CHR$(AJ)
  1064.     LOCATE 14, 27: COLOR W3: PRINT CHR$(AJ)
  1065.     LOCATE 14, 28: COLOR W1: PRINT CHR$(AJ)
  1066.     LOCATE 14, 29: COLOR W3: PRINT CHR$(AJ)
  1067.     LOCATE 14, 30: COLOR W1: PRINT CHR$(AJ)
  1068.  
  1069.  
  1070.     LOCATE 12, 16: COLOR 41, 0: PRINT "LIVELLO 2"
  1071.  
  1072.     SLEEP 1
  1073.     W1 = 2
  1074.     W2 = 14
  1075.     W3 = 4
  1076.  
  1077.     LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  1078.     LOCATE 10, 11: COLOR W3: PRINT CHR$(AJ)
  1079.     LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  1080.     LOCATE 10, 13: COLOR W3: PRINT CHR$(AJ)
  1081.     LOCATE 10, 14: COLOR W1: PRINT CHR$(AJ)
  1082.     LOCATE 10, 15: COLOR W3: PRINT CHR$(AJ)
  1083.     LOCATE 10, 16: COLOR W1: PRINT CHR$(AJ)
  1084.     LOCATE 10, 17: COLOR W3: PRINT CHR$(AJ)
  1085.     LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  1086.     LOCATE 10, 19: COLOR W3: PRINT CHR$(AJ)
  1087.     LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  1088.     LOCATE 10, 21: COLOR W3: PRINT CHR$(AJ)
  1089.     LOCATE 10, 22: COLOR W1: PRINT CHR$(AJ)
  1090.     LOCATE 10, 23: COLOR W3: PRINT CHR$(AJ)
  1091.     LOCATE 10, 24: COLOR W1: PRINT CHR$(AJ)
  1092.     LOCATE 10, 25: COLOR W3: PRINT CHR$(AJ)
  1093.     LOCATE 10, 26: COLOR W1: PRINT CHR$(AJ)
  1094.     LOCATE 10, 27: COLOR W3: PRINT CHR$(AJ)
  1095.     LOCATE 10, 28: COLOR W1: PRINT CHR$(AJ)
  1096.     LOCATE 10, 29: COLOR W3: PRINT CHR$(AJ)
  1097.     LOCATE 10, 30: COLOR W1: PRINT CHR$(AJ)
  1098.  
  1099.  
  1100.  
  1101.     LOCATE 14, 10: COLOR W1: PRINT CHR$(AJ)
  1102.     LOCATE 14, 11: COLOR W3: PRINT CHR$(AJ)
  1103.     LOCATE 14, 12: COLOR W1: PRINT CHR$(AJ)
  1104.     LOCATE 14, 13: COLOR W3: PRINT CHR$(AJ)
  1105.     LOCATE 14, 14: COLOR W1: PRINT CHR$(AJ)
  1106.     LOCATE 14, 15: COLOR W3: PRINT CHR$(AJ)
  1107.     LOCATE 14, 16: COLOR W1: PRINT CHR$(AJ)
  1108.     LOCATE 14, 17: COLOR W3: PRINT CHR$(AJ)
  1109.     LOCATE 14, 18: COLOR W1: PRINT CHR$(AJ)
  1110.     LOCATE 14, 19: COLOR W3: PRINT CHR$(AJ)
  1111.     LOCATE 14, 20: COLOR W1: PRINT CHR$(AJ)
  1112.     LOCATE 14, 21: COLOR W3: PRINT CHR$(AJ)
  1113.     LOCATE 14, 22: COLOR W1: PRINT CHR$(AJ)
  1114.     LOCATE 14, 23: COLOR W3: PRINT CHR$(AJ)
  1115.     LOCATE 14, 24: COLOR W1: PRINT CHR$(AJ)
  1116.     LOCATE 14, 25: COLOR W3: PRINT CHR$(AJ)
  1117.     LOCATE 14, 26: COLOR W1: PRINT CHR$(AJ)
  1118.     LOCATE 14, 27: COLOR W3: PRINT CHR$(AJ)
  1119.     LOCATE 14, 28: COLOR W1: PRINT CHR$(AJ)
  1120.     LOCATE 14, 29: COLOR W3: PRINT CHR$(AJ)
  1121.     LOCATE 14, 30: COLOR W1: PRINT CHR$(AJ)
  1122.  
  1123. '*************************************
  1124. '*
  1125. '* IN QUESTA VERSIONE, INVECE DI COLORARE UNO SCHERMO VERDE
  1126. '* RIDISEGNA IL MONDO.
  1127. '* LA STESSA COSA VA FATTA PER LO SPARO
  1128. '*
  1129. '*************************************
  1130.  
  1131.  
  1132.  
  1133.  
  1134. DISEGNOMONDO2:
  1135. '******************** DISEGNO MONDO ***************************
  1136. '================
  1137. 'CIELO
  1138.  
  1139. LINE (0, 0)-(320, 120), 199, BF
  1140. '================
  1141. '================
  1142. ' NUVOLE
  1143.  
  1144. NUVX = 200
  1145. NUVY = 20
  1146.  
  1147. CIRCLE (20, 20), 8, 15
  1148. PAINT (20, 20), 15
  1149.  
  1150. CIRCLE (26, 25), 8, 15
  1151. PAINT (26, 25), 15
  1152.  
  1153. CIRCLE (38, 22), 8, 15
  1154. PAINT (41, 22), 15
  1155.  
  1156. CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  1157. PAINT (20 + NUVX, 20 + NUVY), 15
  1158.  
  1159. CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  1160. PAINT (26 + NUVX, 25 + NUVY), 15
  1161.  
  1162. CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  1163. PAINT (41 + NUVX, 22 + NUVY), 15
  1164. '================
  1165. '================
  1166. 'TERRA
  1167. LINE (0, 120)-(320, 200), 1, BF
  1168. LINE (0, 100)-(40, 200), 1, BF
  1169. LINE (80, 90)-(120, 200), 1, BF
  1170. LINE (160, 110)-(200, 200), 1, BF
  1171. LINE (240, 100)-(280, 200), 1, BF
  1172.  
  1173.  
  1174. '================
  1175. 'CAMINETTO
  1176. CAMX = 140
  1177. CAMY = 150
  1178. CAMX1 = 140
  1179. CAMX2 = 140
  1180. FOR H = 1 TO 1
  1181.     LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  1182.     CAMX = CAMX + 10
  1183. FOR HA = 1 TO 1
  1184.     LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  1185.     CAMX1 = CAMX1 + 10
  1186. NEXT HA
  1187. FOR HB = 1 TO 1
  1188.     LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  1189.     CAMX2 = CAMX2 + 10
  1190. NEXT HB
  1191. LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  1192.  
  1193. '================
  1194. '******************** PUNTI E LIVELLO
  1195. punt = 50
  1196. LOCATE 1, 1: COLOR 14, 199: PRINT "Liv. 2"
  1197. LOCATE 1, 28: COLOR 14, 199: PRINT "Punti"
  1198. LOCATE 1, 33: COLOR 14, 199: PRINT punt
  1199.  
  1200.  
  1201.  
  1202. '*********************************** FINE DISEGNO MONDO ***********
  1203.  
  1204.  
  1205. '======================
  1206. '======================
  1207. 'ASTRONAVE
  1208. XAST = 20 '*** POSIZIONE X INIZIALE
  1209. YAST = 50 '*** POSIZIONE Y INIZIALE
  1210.  
  1211. PS0A:
  1212.  
  1213. CIRCLE (XAST - 10, YAST), 10, 44
  1214. PAINT (XAST - 10, YAST), 44
  1215. CIRCLE (XAST + 14, YAST + 3), 6, 44
  1216. PAINT (XAST + 14, YAST + 3), 44
  1217. LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  1218. LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  1219. CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  1220. LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  1221. LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  1222. CIRCLE (XAST + 5, YAST - 10), 4, 88
  1223. PAINT (XAST + 5, YAST - 10), 88
  1224. PSET (XAST + 5, YAST - 10)
  1225. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  1226. CIRCLE (XAST - 7, YAST - 2), 7, 6
  1227. PAINT (XAST - 8, YAST - 2), 6
  1228. PSET (XAST - 8, YAST - 8)
  1229. DRAW "c6e3l3f3"
  1230.  
  1231.  
  1232.  
  1233. PS1A: A$ = INKEY$: IF A$ = "" THEN GOTO PS1A
  1234.  
  1235. IF A$ = " " THEN GOTO FIREA
  1236. IF A$ = "G" OR A$ = "g" THEN GOTO AST1A
  1237. IF A$ = "H" OR A$ = "h" THEN GOTO AST2A
  1238. 'IF A$ = "Y" OR A$ = "y" THEN GOTO AST3
  1239. 'IF A$ = "B" OR A$ = "b" THEN GOTO AST4
  1240. IF A$ = "E" OR A$ = "e" THEN END
  1241. GOTO PS1A
  1242.  
  1243.  
  1244.  
  1245. '*** MOVIMENTO 4 DIREZIONI
  1246. AST1A: XAST = XAST - 10:
  1247. IF XAST < 20 THEN XAST = 20 '**** ROUTINE MIGLIORATA PER NON FARE USCIRE DALLO SCHERMO
  1248. GOTO DISEGNAASTA
  1249.  
  1250. AST2A: XAST = XAST + 10:
  1251. IF XAST > 300 THEN XAST = 300 '**** ROUTINE MIGLIORATA PER NON FARE USCIRE DALLO SCHERMO
  1252. GOTO DISEGNAASTA
  1253.  
  1254. 'AST3: YAST = YAST - 10: GOTO DISEGNAASTA     *** tolto il vert in alto
  1255. 'AST4: YAST = YAST + 10: GOTO DISEGNAASTA     *** tolto il vert in basso
  1256. ' *** FINE MOVIMENTO 4 DIREZIONI
  1257.  
  1258. DISEGNAASTA:
  1259.  
  1260. '******************** RI DISEGNO MONDO ***************************
  1261. '================
  1262. 'CIELO
  1263.  
  1264. LINE (0, 0)-(320, 120), 199, BF
  1265. '================
  1266. '================
  1267. ' NUVOLE
  1268.  
  1269. NUVX = 200
  1270. NUVY = 20
  1271.  
  1272. CIRCLE (20, 20), 8, 15
  1273. PAINT (20, 20), 15
  1274.  
  1275. CIRCLE (26, 25), 8, 15
  1276. PAINT (26, 25), 15
  1277.  
  1278. CIRCLE (38, 22), 8, 15
  1279. PAINT (41, 22), 15
  1280.  
  1281. CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  1282. PAINT (20 + NUVX, 20 + NUVY), 15
  1283.  
  1284. CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  1285. PAINT (26 + NUVX, 25 + NUVY), 15
  1286.  
  1287. CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  1288. PAINT (41 + NUVX, 22 + NUVY), 15
  1289. '================
  1290. '================
  1291. 'TERRA
  1292. LINE (0, 120)-(320, 200), 1, BF
  1293. LINE (0, 100)-(40, 200), 1, BF
  1294. LINE (80, 90)-(120, 200), 1, BF
  1295. LINE (160, 110)-(200, 200), 1, BF
  1296. LINE (240, 100)-(280, 200), 1, BF
  1297.  
  1298. 'CAMINETTO
  1299. CAMX = 140
  1300. CAMY = 150
  1301. CAMX1 = 140
  1302. CAMX2 = 140
  1303. FOR H = 1 TO 1
  1304.     LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  1305.     CAMX = CAMX + 10
  1306. FOR HA = 1 TO 1
  1307.     LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  1308.     CAMX1 = CAMX1 + 10
  1309. NEXT HA
  1310. FOR HB = 1 TO 1
  1311.     LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  1312.     CAMX2 = CAMX2 + 10
  1313. NEXT HB
  1314. LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  1315.  
  1316. '******************** PUNTI E LIVELLO
  1317. punt = 50
  1318. LOCATE 1, 1: COLOR 14, 199: PRINT "Liv. 2"
  1319. LOCATE 1, 28: COLOR 14, 199: PRINT "Punti"
  1320. LOCATE 1, 33: COLOR 14, 199: PRINT punt
  1321.  
  1322.  
  1323. '*********************************** FINE DISEGNO MONDO ***********
  1324.  
  1325.  
  1326.  
  1327. CIRCLE (XAST - 10, YAST), 10, 44
  1328. PAINT (XAST - 10, YAST), 44
  1329. CIRCLE (XAST + 14, YAST + 3), 6, 44
  1330. PAINT (XAST + 14, YAST + 3), 44
  1331. LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  1332. LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  1333. CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  1334. LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  1335. LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  1336. CIRCLE (XAST + 5, YAST - 10), 4, 88
  1337. PAINT (XAST + 5, YAST - 10), 88
  1338. PSET (XAST + 5, YAST - 10)
  1339. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  1340. CIRCLE (XAST - 7, YAST - 2), 7, 6
  1341. PAINT (XAST - 8, YAST - 2), 6
  1342. PSET (XAST - 8, YAST - 8)
  1343. DRAW "c6e3l3f3"
  1344.  
  1345.  
  1346. GOTO PS1A
  1347.  
  1348.  
  1349.  
  1350. '======================
  1351. FIREA:
  1352. ' ************ FIREA SPARA DA SOTTO DELLA ASTRONAVE
  1353. XF = XAST + 1: YF = YAST + 10 '**** modifica per vento
  1354.  
  1355. FOR T = 1 TO 10
  1356.     YF = YF + 10: XF = XF + 1 '********** vento
  1357.     LINE (XF, YF)-(XF + 8, YF + 6), 4, BF
  1358.     LINE (XF + 3, YF)-(XF + 5, YF + 6), 14, BF
  1359.     LINE (XF, YF + 2)-(XF + 8, YF + 4), 14, BF
  1360.     'SLEEP 1
  1361.     FOR N = 1 TO 12000000: NEXT N
  1362.     'ok su p2.8 6 gb ram
  1363.     IF XF = 140 AND YF = 150 GOTO VITTORIAA:
  1364.     IF XF <> 140 AND YF = 150 GOTO KOA
  1365.  
  1366.     '******************** DISEGNO MONDO ***************************
  1367.     '================
  1368.     'CIELO
  1369.  
  1370.     LINE (0, 0)-(320, 120), 199, BF
  1371.     '================
  1372.     '================
  1373.     ' NUVOLE
  1374.  
  1375.     NUVX = 200
  1376.     NUVY = 20
  1377.  
  1378.     CIRCLE (20, 20), 8, 15
  1379.     PAINT (20, 20), 15
  1380.  
  1381.     CIRCLE (26, 25), 8, 15
  1382.     PAINT (26, 25), 15
  1383.  
  1384.     CIRCLE (38, 22), 8, 15
  1385.     PAINT (41, 22), 15
  1386.  
  1387.     CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  1388.     PAINT (20 + NUVX, 20 + NUVY), 15
  1389.  
  1390.     CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  1391.     PAINT (26 + NUVX, 25 + NUVY), 15
  1392.  
  1393.     CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  1394.     PAINT (41 + NUVX, 22 + NUVY), 15
  1395.     '================
  1396.     '================
  1397.     'TERRA
  1398.     LINE (0, 120)-(320, 200), 1, BF
  1399.     LINE (0, 100)-(40, 200), 1, BF
  1400.     LINE (80, 90)-(120, 200), 1, BF
  1401.     LINE (160, 110)-(200, 200), 1, BF
  1402.     LINE (240, 100)-(280, 200), 1, BF
  1403.  
  1404.     '================
  1405.     'CAMINETTO
  1406.     CAMX = 140
  1407.     CAMY = 150
  1408.     CAMX1 = 140
  1409.     CAMX2 = 140
  1410.     FOR H = 1 TO 1
  1411.         LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  1412.         CAMX = CAMX + 10
  1413.     NEXT H
  1414.     FOR HA = 1 TO 1
  1415.         LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  1416.         CAMX1 = CAMX1 + 10
  1417.     NEXT HA
  1418.     FOR HB = 1 TO 1
  1419.         LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  1420.         CAMX2 = CAMX2 + 10
  1421.     NEXT HB
  1422.     LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  1423.  
  1424.  
  1425.  
  1426.  
  1427.     CIRCLE (XAST - 10, YAST), 10, 44
  1428.     PAINT (XAST - 10, YAST), 44
  1429.     CIRCLE (XAST + 14, YAST + 3), 6, 44
  1430.     PAINT (XAST + 14, YAST + 3), 44
  1431.     LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  1432.     LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  1433.     CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  1434.     LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  1435.     LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  1436.     CIRCLE (XAST + 5, YAST - 10), 4, 88
  1437.     PAINT (XAST + 5, YAST - 10), 88
  1438.     PSET (XAST + 5, YAST - 10)
  1439.     DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  1440.     CIRCLE (XAST - 7, YAST - 2), 7, 6
  1441.     PAINT (XAST - 8, YAST - 2), 6
  1442.     PSET (XAST - 8, YAST - 8)
  1443.     DRAW "c6e3l3f3"
  1444.  
  1445.     '*********************************** FINE DISEGNO MONDO ***********
  1446.  
  1447. GOTO PS0A
  1448.  
  1449.  
  1450. VITTORIAA:
  1451. LOCATE 10, 12: COLOR 14, 199: PRINT "LIVELLO COMPLETATO": SLEEP 3: GOTO LEV3
  1452. KOA:
  1453. LOCATE 10, 12: COLOR 43, 199: PRINT "G A M E    O V E R": SLEEP 3: END
  1454.  
  1455. LEV3:
  1456. LINE (0, 0)-(320, 200), 0, BF
  1457. FOR U = 1 TO 5
  1458.     SLEEP 1
  1459.     AJ = 3 '35
  1460.     W1 = 4
  1461.     W2 = 14
  1462.     W3 = 2
  1463.  
  1464.     LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  1465.     LOCATE 10, 11: COLOR W3: PRINT CHR$(AJ)
  1466.     LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  1467.     LOCATE 10, 13: COLOR W3: PRINT CHR$(AJ)
  1468.     LOCATE 10, 14: COLOR W1: PRINT CHR$(AJ)
  1469.     LOCATE 10, 15: COLOR W3: PRINT CHR$(AJ)
  1470.     LOCATE 10, 16: COLOR W1: PRINT CHR$(AJ)
  1471.     LOCATE 10, 17: COLOR W3: PRINT CHR$(AJ)
  1472.     LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  1473.     LOCATE 10, 19: COLOR W3: PRINT CHR$(AJ)
  1474.     LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  1475.     LOCATE 10, 21: COLOR W3: PRINT CHR$(AJ)
  1476.     LOCATE 10, 22: COLOR W1: PRINT CHR$(AJ)
  1477.     LOCATE 10, 23: COLOR W3: PRINT CHR$(AJ)
  1478.     LOCATE 10, 24: COLOR W1: PRINT CHR$(AJ)
  1479.     LOCATE 10, 25: COLOR W3: PRINT CHR$(AJ)
  1480.     LOCATE 10, 26: COLOR W1: PRINT CHR$(AJ)
  1481.     LOCATE 10, 27: COLOR W3: PRINT CHR$(AJ)
  1482.     LOCATE 10, 28: COLOR W1: PRINT CHR$(AJ)
  1483.     LOCATE 10, 29: COLOR W3: PRINT CHR$(AJ)
  1484.     LOCATE 10, 30: COLOR W1: PRINT CHR$(AJ)
  1485.  
  1486.  
  1487.  
  1488.     LOCATE 14, 10: COLOR W1: PRINT CHR$(AJ)
  1489.     LOCATE 14, 11: COLOR W3: PRINT CHR$(AJ)
  1490.     LOCATE 14, 12: COLOR W1: PRINT CHR$(AJ)
  1491.     LOCATE 14, 13: COLOR W3: PRINT CHR$(AJ)
  1492.     LOCATE 14, 14: COLOR W1: PRINT CHR$(AJ)
  1493.     LOCATE 14, 15: COLOR W3: PRINT CHR$(AJ)
  1494.     LOCATE 14, 16: COLOR W1: PRINT CHR$(AJ)
  1495.     LOCATE 14, 17: COLOR W3: PRINT CHR$(AJ)
  1496.     LOCATE 14, 18: COLOR W1: PRINT CHR$(AJ)
  1497.     LOCATE 14, 19: COLOR W3: PRINT CHR$(AJ)
  1498.     LOCATE 14, 20: COLOR W1: PRINT CHR$(AJ)
  1499.     LOCATE 14, 21: COLOR W3: PRINT CHR$(AJ)
  1500.     LOCATE 14, 22: COLOR W1: PRINT CHR$(AJ)
  1501.     LOCATE 14, 23: COLOR W3: PRINT CHR$(AJ)
  1502.     LOCATE 14, 24: COLOR W1: PRINT CHR$(AJ)
  1503.     LOCATE 14, 25: COLOR W3: PRINT CHR$(AJ)
  1504.     LOCATE 14, 26: COLOR W1: PRINT CHR$(AJ)
  1505.     LOCATE 14, 27: COLOR W3: PRINT CHR$(AJ)
  1506.     LOCATE 14, 28: COLOR W1: PRINT CHR$(AJ)
  1507.     LOCATE 14, 29: COLOR W3: PRINT CHR$(AJ)
  1508.     LOCATE 14, 30: COLOR W1: PRINT CHR$(AJ)
  1509.  
  1510.  
  1511.     LOCATE 12, 16: COLOR 41, 0: PRINT "LIVELLO 3"
  1512.  
  1513.     SLEEP 1
  1514.     W1 = 2
  1515.     W2 = 14
  1516.     W3 = 4
  1517.  
  1518.     LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  1519.     LOCATE 10, 11: COLOR W3: PRINT CHR$(AJ)
  1520.     LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  1521.     LOCATE 10, 13: COLOR W3: PRINT CHR$(AJ)
  1522.     LOCATE 10, 14: COLOR W1: PRINT CHR$(AJ)
  1523.     LOCATE 10, 15: COLOR W3: PRINT CHR$(AJ)
  1524.     LOCATE 10, 16: COLOR W1: PRINT CHR$(AJ)
  1525.     LOCATE 10, 17: COLOR W3: PRINT CHR$(AJ)
  1526.     LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  1527.     LOCATE 10, 19: COLOR W3: PRINT CHR$(AJ)
  1528.     LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  1529.     LOCATE 10, 21: COLOR W3: PRINT CHR$(AJ)
  1530.     LOCATE 10, 22: COLOR W1: PRINT CHR$(AJ)
  1531.     LOCATE 10, 23: COLOR W3: PRINT CHR$(AJ)
  1532.     LOCATE 10, 24: COLOR W1: PRINT CHR$(AJ)
  1533.     LOCATE 10, 25: COLOR W3: PRINT CHR$(AJ)
  1534.     LOCATE 10, 26: COLOR W1: PRINT CHR$(AJ)
  1535.     LOCATE 10, 27: COLOR W3: PRINT CHR$(AJ)
  1536.     LOCATE 10, 28: COLOR W1: PRINT CHR$(AJ)
  1537.     LOCATE 10, 29: COLOR W3: PRINT CHR$(AJ)
  1538.     LOCATE 10, 30: COLOR W1: PRINT CHR$(AJ)
  1539.  
  1540.  
  1541.  
  1542.     LOCATE 14, 10: COLOR W1: PRINT CHR$(AJ)
  1543.     LOCATE 14, 11: COLOR W3: PRINT CHR$(AJ)
  1544.     LOCATE 14, 12: COLOR W1: PRINT CHR$(AJ)
  1545.     LOCATE 14, 13: COLOR W3: PRINT CHR$(AJ)
  1546.     LOCATE 14, 14: COLOR W1: PRINT CHR$(AJ)
  1547.     LOCATE 14, 15: COLOR W3: PRINT CHR$(AJ)
  1548.     LOCATE 14, 16: COLOR W1: PRINT CHR$(AJ)
  1549.     LOCATE 14, 17: COLOR W3: PRINT CHR$(AJ)
  1550.     LOCATE 14, 18: COLOR W1: PRINT CHR$(AJ)
  1551.     LOCATE 14, 19: COLOR W3: PRINT CHR$(AJ)
  1552.     LOCATE 14, 20: COLOR W1: PRINT CHR$(AJ)
  1553.     LOCATE 14, 21: COLOR W3: PRINT CHR$(AJ)
  1554.     LOCATE 14, 22: COLOR W1: PRINT CHR$(AJ)
  1555.     LOCATE 14, 23: COLOR W3: PRINT CHR$(AJ)
  1556.     LOCATE 14, 24: COLOR W1: PRINT CHR$(AJ)
  1557.     LOCATE 14, 25: COLOR W3: PRINT CHR$(AJ)
  1558.     LOCATE 14, 26: COLOR W1: PRINT CHR$(AJ)
  1559.     LOCATE 14, 27: COLOR W3: PRINT CHR$(AJ)
  1560.     LOCATE 14, 28: COLOR W1: PRINT CHR$(AJ)
  1561.     LOCATE 14, 29: COLOR W3: PRINT CHR$(AJ)
  1562.     LOCATE 14, 30: COLOR W1: PRINT CHR$(AJ)
  1563.  
  1564. DISEGNOMONDO3:
  1565. '******************** DISEGNO MONDO ***************************
  1566. '================
  1567. 'CIELO
  1568.  
  1569. LINE (0, 0)-(320, 120), 199, BF
  1570. '================
  1571. '================
  1572. ' NUVOLE
  1573.  
  1574. NUVX = 200
  1575. NUVY = 20
  1576.  
  1577. CIRCLE (20, 20), 8, 15
  1578. PAINT (20, 20), 15
  1579.  
  1580. CIRCLE (26, 25), 8, 15
  1581. PAINT (26, 25), 15
  1582.  
  1583. CIRCLE (38, 22), 8, 15
  1584. PAINT (41, 22), 15
  1585.  
  1586. CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  1587. PAINT (20 + NUVX, 20 + NUVY), 15
  1588.  
  1589. CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  1590. PAINT (26 + NUVX, 25 + NUVY), 15
  1591.  
  1592. CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  1593. PAINT (41 + NUVX, 22 + NUVY), 15
  1594. '================
  1595. '================
  1596. 'TERRA
  1597. LINE (0, 120)-(320, 200), 1, BF
  1598. LINE (0, 100)-(40, 200), 1, BF
  1599. LINE (80, 90)-(120, 200), 1, BF
  1600. LINE (160, 110)-(200, 200), 1, BF
  1601. LINE (240, 100)-(280, 200), 1, BF
  1602.  
  1603.  
  1604. '================
  1605. 'CAMINETTO
  1606. CAMX = 140
  1607. CAMY = 150
  1608. CAMX1 = 140
  1609. CAMX2 = 140
  1610. FOR H = 1 TO 1
  1611.     LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  1612.     CAMX = CAMX + 10
  1613. FOR HA = 1 TO 1
  1614.     LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  1615.     CAMX1 = CAMX1 + 10
  1616. NEXT HA
  1617. FOR HB = 1 TO 1
  1618.     LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  1619.     CAMX2 = CAMX2 + 10
  1620. NEXT HB
  1621. LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  1622.  
  1623.  
  1624.  
  1625.  
  1626. '*********************************** FINE DISEGNO MONDO ***********
  1627.  
  1628.  
  1629. '======================
  1630. '======================
  1631. 'ASTRONAVE
  1632. XAST = 20 '*** POSIZIONE X INIZIALE
  1633. YAST = 50 '*** POSIZIONE Y INIZIALE
  1634.  
  1635. PS0B:
  1636.  
  1637. CIRCLE (XAST - 10, YAST), 10, 44
  1638. PAINT (XAST - 10, YAST), 44
  1639. CIRCLE (XAST + 14, YAST + 3), 6, 44
  1640. PAINT (XAST + 14, YAST + 3), 44
  1641. LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  1642. LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  1643. CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  1644. LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  1645. LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  1646. CIRCLE (XAST + 5, YAST - 10), 4, 88
  1647. PAINT (XAST + 5, YAST - 10), 88
  1648. PSET (XAST + 5, YAST - 10)
  1649. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  1650. CIRCLE (XAST - 7, YAST - 2), 7, 6
  1651. PAINT (XAST - 8, YAST - 2), 6
  1652. PSET (XAST - 8, YAST - 8)
  1653. DRAW "c6e3l3f3"
  1654.  
  1655.  
  1656.  
  1657. PS1B: A$ = INKEY$: IF A$ = "" THEN GOTO PS1B
  1658.  
  1659. IF A$ = " " THEN GOTO FIREB
  1660. IF A$ = "G" OR A$ = "g" THEN GOTO AST1B
  1661. IF A$ = "H" OR A$ = "h" THEN GOTO AST2B
  1662. 'IF A$ = "Y" OR A$ = "y" THEN GOTO AST3
  1663. 'IF A$ = "B" OR A$ = "b" THEN GOTO AST4
  1664. IF A$ = "E" OR A$ = "e" THEN END
  1665. GOTO PS1B
  1666.  
  1667.  
  1668.  
  1669. '*** MOVIMENTO 4 DIREZIONI
  1670. AST1B: XAST = XAST - 10:
  1671. IF XAST < 20 THEN XAST = 20 '**** ROUTINE MIGLIORATA PER NON FARE USCIRE DALLO SCHERMO
  1672. GOTO DISEGNAASTB
  1673.  
  1674. AST2B: XAST = XAST + 10:
  1675. IF XAST > 300 THEN XAST = 300 '**** ROUTINE MIGLIORATA PER NON FARE USCIRE DALLO SCHERMO
  1676. GOTO DISEGNAASTB
  1677.  
  1678. 'AST3: YAST = YAST - 10: GOTO DISEGNAASTB     *** tolto il vert in alto
  1679. 'AST4: YAST = YAST + 10: GOTO DISEGNAASTB     *** tolto il vert in basso
  1680. ' *** FINE MOVIMENTO 4 DIREZIONI
  1681.  
  1682. DISEGNAASTB:
  1683.  
  1684. '******************** RI DISEGNO MONDO ***************************
  1685. '================
  1686. 'CIELO
  1687.  
  1688. LINE (0, 0)-(320, 120), 199, BF
  1689. '================
  1690. '================
  1691. ' NUVOLE
  1692.  
  1693. NUVX = 200
  1694. NUVY = 20
  1695.  
  1696. CIRCLE (20, 20), 8, 15
  1697. PAINT (20, 20), 15
  1698.  
  1699. CIRCLE (26, 25), 8, 15
  1700. PAINT (26, 25), 15
  1701.  
  1702. CIRCLE (38, 22), 8, 15
  1703. PAINT (41, 22), 15
  1704.  
  1705. CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  1706. PAINT (20 + NUVX, 20 + NUVY), 15
  1707.  
  1708. CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  1709. PAINT (26 + NUVX, 25 + NUVY), 15
  1710.  
  1711. CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  1712. PAINT (41 + NUVX, 22 + NUVY), 15
  1713. '================
  1714. '================
  1715. 'TERRA
  1716. LINE (0, 120)-(320, 200), 1, BF
  1717. LINE (0, 100)-(40, 200), 1, BF
  1718. LINE (80, 90)-(120, 200), 1, BF
  1719. LINE (160, 110)-(200, 200), 1, BF
  1720. LINE (240, 100)-(280, 200), 1, BF
  1721.  
  1722. 'CAMINETTO
  1723. CAMX = 140
  1724. CAMY = 150
  1725. CAMX1 = 140
  1726. CAMX2 = 140
  1727. FOR H = 1 TO 1
  1728.     LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  1729.     CAMX = CAMX + 10
  1730. FOR HA = 1 TO 1
  1731.     LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  1732.     CAMX1 = CAMX1 + 10
  1733. NEXT HA
  1734. FOR HB = 1 TO 1
  1735.     LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  1736.     CAMX2 = CAMX2 + 10
  1737. NEXT HB
  1738. LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  1739.  
  1740.  
  1741. '================
  1742. '******************** PUNTI E LIVELLO
  1743. punt = 100
  1744. LOCATE 1, 1: COLOR 14, 199: PRINT "Liv. 3"
  1745. LOCATE 1, 28: COLOR 14, 199: PRINT "Punti"
  1746. LOCATE 1, 33: COLOR 14, 199: PRINT punt
  1747.  
  1748.  
  1749. '*********************************** FINE DISEGNO MONDO ***********
  1750.  
  1751.  
  1752.  
  1753.  
  1754. CIRCLE (XAST - 10, YAST), 10, 44
  1755. PAINT (XAST - 10, YAST), 44
  1756. CIRCLE (XAST + 14, YAST + 3), 6, 44
  1757. PAINT (XAST + 14, YAST + 3), 44
  1758. LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  1759. LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  1760. CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  1761. LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  1762. LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  1763. CIRCLE (XAST + 5, YAST - 10), 4, 88
  1764. PAINT (XAST + 5, YAST - 10), 88
  1765. PSET (XAST + 5, YAST - 10)
  1766. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  1767. CIRCLE (XAST - 7, YAST - 2), 7, 6
  1768. PAINT (XAST - 8, YAST - 2), 6
  1769. PSET (XAST - 8, YAST - 8)
  1770. DRAW "c6e3l3f3"
  1771.  
  1772.  
  1773. GOTO PS1B
  1774.  
  1775.  
  1776.  
  1777. '======================
  1778. FIREB:
  1779. ' ************ FIREB SPARA DA SOTTO DELLA ASTRONAVE
  1780. XF = XAST + 2: YF = YAST + 10 '**** modifica per vento
  1781.  
  1782. FOR T = 1 TO 10
  1783.     YF = YF + 10: XF = XF + 2 '********** vento
  1784.     LINE (XF, YF)-(XF + 8, YF + 6), 4, BF
  1785.     LINE (XF + 3, YF)-(XF + 5, YF + 6), 14, BF
  1786.     LINE (XF, YF + 2)-(XF + 8, YF + 4), 14, BF
  1787.     'SLEEP 1
  1788.     FOR N = 1 TO 12000000: NEXT N
  1789.     'ok su p2.8 6 gb ram
  1790.     IF XF = 140 AND YF = 150 GOTO VITTORIAB:
  1791.     IF XF <> 140 AND YF = 150 GOTO KOB
  1792.  
  1793.     '******************** DISEGNO MONDO ***************************
  1794.     '================
  1795.     'CIELO
  1796.  
  1797.     LINE (0, 0)-(320, 120), 199, BF
  1798.     '================
  1799.     '================
  1800.     ' NUVOLE
  1801.  
  1802.     NUVX = 200
  1803.     NUVY = 20
  1804.  
  1805.     CIRCLE (20, 20), 8, 15
  1806.     PAINT (20, 20), 15
  1807.  
  1808.     CIRCLE (26, 25), 8, 15
  1809.     PAINT (26, 25), 15
  1810.  
  1811.     CIRCLE (38, 22), 8, 15
  1812.     PAINT (41, 22), 15
  1813.  
  1814.     CIRCLE (20 + NUVX, 20 + NUVY), 8, 15
  1815.     PAINT (20 + NUVX, 20 + NUVY), 15
  1816.  
  1817.     CIRCLE (26 + NUVX, 25 + NUVY), 8, 15
  1818.     PAINT (26 + NUVX, 25 + NUVY), 15
  1819.  
  1820.     CIRCLE (38 + NUVX, 22 + NUVY), 8, 15
  1821.     PAINT (41 + NUVX, 22 + NUVY), 15
  1822.     '================
  1823.     '================
  1824.     'TERRA
  1825.     LINE (0, 120)-(320, 200), 1, BF
  1826.     LINE (0, 100)-(40, 200), 1, BF
  1827.     LINE (80, 90)-(120, 200), 1, BF
  1828.     LINE (160, 110)-(200, 200), 1, BF
  1829.     LINE (240, 100)-(280, 200), 1, BF
  1830.  
  1831.     '================
  1832.     'CAMINETTO
  1833.     CAMX = 140
  1834.     CAMY = 150
  1835.     CAMX1 = 140
  1836.     CAMX2 = 140
  1837.     FOR H = 1 TO 1
  1838.         LINE (CAMX, CAMY)-(CAMX + 8, CAMY + 4), 8, BF
  1839.         CAMX = CAMX + 10
  1840.     NEXT H
  1841.     FOR HA = 1 TO 1
  1842.         LINE (CAMX1, CAMY + 6)-(CAMX1 + 8, CAMY + 10), 8, BF
  1843.         CAMX1 = CAMX1 + 10
  1844.     NEXT HA
  1845.     FOR HB = 1 TO 1
  1846.         LINE (CAMX2, CAMY + 12)-(CAMX2 + 8, CAMY + 16), 8, BF
  1847.         CAMX2 = CAMX2 + 10
  1848.     NEXT HB
  1849.     LINE (CAMX - 25, CAMY + 50)-(CAMX + 105, CAMY + 18), 55, BF
  1850.  
  1851.  
  1852.  
  1853.     '================
  1854.  
  1855.     '================
  1856.     '================
  1857.     '******************** PUNTI E LIVELLO
  1858.     punt = 100
  1859.     LOCATE 1, 1: COLOR 14, 199: PRINT "Liv. 3"
  1860.     LOCATE 1, 28: COLOR 14, 199: PRINT "Punti"
  1861.     LOCATE 1, 33: COLOR 14, 199: PRINT punt
  1862.  
  1863.  
  1864.  
  1865.     CIRCLE (XAST - 10, YAST), 10, 44
  1866.     PAINT (XAST - 10, YAST), 44
  1867.     CIRCLE (XAST + 14, YAST + 3), 6, 44
  1868.     PAINT (XAST + 14, YAST + 3), 44
  1869.     LINE (XAST - 10, YAST)-(XAST + 12, YAST + 8), 44, BF
  1870.     LINE (XAST - 18, YAST + 14)-(XAST + 15, YAST + 14), 130
  1871.     CIRCLE (XAST + 15, YAST + 9), 6, 130, 4.5, 0
  1872.     LINE (XAST - 4, YAST + 14)-(XAST + 6, YAST + 9), 130, B
  1873.     LINE (XAST + 2, YAST - 1)-(XAST + 9, YAST - 6), 4, BF
  1874.     CIRCLE (XAST + 5, YAST - 10), 4, 88
  1875.     PAINT (XAST + 5, YAST - 10), 88
  1876.     PSET (XAST + 5, YAST - 10)
  1877.     DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  1878.     CIRCLE (XAST - 7, YAST - 2), 7, 6
  1879.     PAINT (XAST - 8, YAST - 2), 6
  1880.     PSET (XAST - 8, YAST - 8)
  1881.     DRAW "c6e3l3f3"
  1882.  
  1883.     '*********************************** FINE DISEGNO MONDO ***********
  1884.  
  1885. GOTO PS0B
  1886.  
  1887.  
  1888. VITTORIAB:
  1889. LOCATE 10, 12: COLOR 14, 199: PRINT "LIVELLO COMPLETATO": SLEEP 3: GOTO BONUS1
  1890. KOB:
  1891. LOCATE 10, 12: COLOR 43, 199: PRINT "G A M E    O V E R": SLEEP 3: END
  1892.  
  1893. '==========================================================================
  1894. '*****************
  1895. '*               *
  1896. '* BONUS 1       *
  1897. '*               *
  1898. '*****************
  1899.  
  1900.  
  1901. BONUS1:
  1902. LINE (0, 0)-(320, 200), 0, BF
  1903. 'PAINT (1, 1), 0
  1904. 'FOR U = 1 TO 3
  1905. AJ = 3 '35
  1906. W1 = 4
  1907. W2 = 14
  1908. W3 = 2
  1909.  
  1910. LOCATE 10, 10: COLOR W1: PRINT CHR$(AJ)
  1911. LOCATE 10, 11: COLOR W1: PRINT CHR$(AJ)
  1912. LOCATE 10, 12: COLOR W1: PRINT CHR$(AJ)
  1913. LOCATE 10, 13: COLOR W1: PRINT CHR$(AJ)
  1914. LOCATE 10, 14: COLOR W1: PRINT CHR$(AJ)
  1915. LOCATE 10, 15: COLOR W1: PRINT CHR$(AJ)
  1916. LOCATE 10, 16: COLOR W1: PRINT CHR$(AJ)
  1917. LOCATE 10, 17: COLOR W1: PRINT CHR$(AJ)
  1918. LOCATE 10, 18: COLOR W1: PRINT CHR$(AJ)
  1919. LOCATE 10, 19: COLOR W1: PRINT CHR$(AJ)
  1920. LOCATE 10, 20: COLOR W1: PRINT CHR$(AJ)
  1921. LOCATE 10, 21: COLOR W1: PRINT CHR$(AJ)
  1922. LOCATE 10, 22: COLOR W1: PRINT CHR$(AJ)
  1923. LOCATE 10, 23: COLOR W1: PRINT CHR$(AJ)
  1924. LOCATE 10, 24: COLOR W1: PRINT CHR$(AJ)
  1925. LOCATE 10, 25: COLOR W1: PRINT CHR$(AJ)
  1926. LOCATE 10, 26: COLOR W1: PRINT CHR$(AJ)
  1927. LOCATE 10, 27: COLOR W1: PRINT CHR$(AJ)
  1928. LOCATE 10, 28: COLOR W1: PRINT CHR$(AJ)
  1929. LOCATE 10, 29: COLOR W1: PRINT CHR$(AJ)
  1930. LOCATE 10, 30: COLOR W1: PRINT CHR$(AJ)
  1931.  
  1932.  
  1933.  
  1934. LOCATE 14, 10: COLOR W1: PRINT CHR$(AJ)
  1935. LOCATE 14, 11: COLOR W1: PRINT CHR$(AJ)
  1936. LOCATE 14, 12: COLOR W1: PRINT CHR$(AJ)
  1937. LOCATE 14, 13: COLOR W1: PRINT CHR$(AJ)
  1938. LOCATE 14, 14: COLOR W1: PRINT CHR$(AJ)
  1939. LOCATE 14, 15: COLOR W1: PRINT CHR$(AJ)
  1940. LOCATE 14, 16: COLOR W1: PRINT CHR$(AJ)
  1941. LOCATE 14, 17: COLOR W1: PRINT CHR$(AJ)
  1942. LOCATE 14, 18: COLOR W1: PRINT CHR$(AJ)
  1943. LOCATE 14, 19: COLOR W1: PRINT CHR$(AJ)
  1944. LOCATE 14, 20: COLOR W1: PRINT CHR$(AJ)
  1945. LOCATE 14, 21: COLOR W1: PRINT CHR$(AJ)
  1946. LOCATE 14, 22: COLOR W1: PRINT CHR$(AJ)
  1947. LOCATE 14, 23: COLOR W1: PRINT CHR$(AJ)
  1948. LOCATE 14, 24: COLOR W1: PRINT CHR$(AJ)
  1949. LOCATE 14, 25: COLOR W1: PRINT CHR$(AJ)
  1950. LOCATE 14, 26: COLOR W1: PRINT CHR$(AJ)
  1951. LOCATE 14, 27: COLOR W1: PRINT CHR$(AJ)
  1952. LOCATE 14, 28: COLOR W1: PRINT CHR$(AJ)
  1953. LOCATE 14, 29: COLOR W1: PRINT CHR$(AJ)
  1954. LOCATE 14, 30: COLOR W1: PRINT CHR$(AJ)
  1955.  
  1956.  
  1957. LOCATE 12, 18: COLOR 41: PRINT "BONUS"
  1958.  
  1959. W1 = 2
  1960. W2 = 14
  1961. W3 = 4
  1962.  
  1963. LOCATE 10, 10: COLOR W2: PRINT CHR$(AJ)
  1964. LOCATE 10, 11: COLOR W2: PRINT CHR$(AJ)
  1965. LOCATE 10, 12: COLOR W2: PRINT CHR$(AJ)
  1966. LOCATE 10, 13: COLOR W2: PRINT CHR$(AJ)
  1967. LOCATE 10, 14: COLOR W2: PRINT CHR$(AJ)
  1968. LOCATE 10, 15: COLOR W2: PRINT CHR$(AJ)
  1969. LOCATE 10, 16: COLOR W2: PRINT CHR$(AJ)
  1970. LOCATE 10, 17: COLOR W2: PRINT CHR$(AJ)
  1971. LOCATE 10, 18: COLOR W2: PRINT CHR$(AJ)
  1972. LOCATE 10, 19: COLOR W2: PRINT CHR$(AJ)
  1973. LOCATE 10, 20: COLOR W2: PRINT CHR$(AJ)
  1974. LOCATE 10, 21: COLOR W2: PRINT CHR$(AJ)
  1975. LOCATE 10, 22: COLOR W2: PRINT CHR$(AJ)
  1976. LOCATE 10, 23: COLOR W2: PRINT CHR$(AJ)
  1977. LOCATE 10, 24: COLOR W2: PRINT CHR$(AJ)
  1978. LOCATE 10, 25: COLOR W2: PRINT CHR$(AJ)
  1979. LOCATE 10, 26: COLOR W2: PRINT CHR$(AJ)
  1980. LOCATE 10, 27: COLOR W2: PRINT CHR$(AJ)
  1981. LOCATE 10, 28: COLOR W2: PRINT CHR$(AJ)
  1982. LOCATE 10, 29: COLOR W2: PRINT CHR$(AJ)
  1983. LOCATE 10, 30: COLOR W2: PRINT CHR$(AJ)
  1984.  
  1985.  
  1986.  
  1987. LOCATE 14, 10: COLOR W2: PRINT CHR$(AJ)
  1988. LOCATE 14, 11: COLOR W2: PRINT CHR$(AJ)
  1989. LOCATE 14, 12: COLOR W2: PRINT CHR$(AJ)
  1990. LOCATE 14, 13: COLOR W2: PRINT CHR$(AJ)
  1991. LOCATE 14, 14: COLOR W2: PRINT CHR$(AJ)
  1992. LOCATE 14, 15: COLOR W2: PRINT CHR$(AJ)
  1993. LOCATE 14, 16: COLOR W2: PRINT CHR$(AJ)
  1994. LOCATE 14, 17: COLOR W2: PRINT CHR$(AJ)
  1995. LOCATE 14, 18: COLOR W2: PRINT CHR$(AJ)
  1996. LOCATE 14, 19: COLOR W2: PRINT CHR$(AJ)
  1997. LOCATE 14, 20: COLOR W2: PRINT CHR$(AJ)
  1998. LOCATE 14, 21: COLOR W2: PRINT CHR$(AJ)
  1999. LOCATE 14, 22: COLOR W2: PRINT CHR$(AJ)
  2000. LOCATE 14, 23: COLOR W2: PRINT CHR$(AJ)
  2001. LOCATE 14, 24: COLOR W2: PRINT CHR$(AJ)
  2002. LOCATE 14, 25: COLOR W2: PRINT CHR$(AJ)
  2003. LOCATE 14, 26: COLOR W2: PRINT CHR$(AJ)
  2004. LOCATE 14, 27: COLOR W2: PRINT CHR$(AJ)
  2005. LOCATE 14, 28: COLOR W2: PRINT CHR$(AJ)
  2006. LOCATE 14, 29: COLOR W2: PRINT CHR$(AJ)
  2007. LOCATE 14, 30: COLOR W2: PRINT CHR$(AJ)
  2008.  
  2009. 'NEXT U
  2010.  
  2011. '********* QUI PASSA LA SLITTA CON CARTELLONE CON SCRITTO 30 PUNTI
  2012.  
  2013.  
  2014. '********** SLITTE
  2015. '************* SLITTA FRECCIA INDIETRO *************
  2016. AXSN = 100: AYSN = 90
  2017.  
  2018. CIRCLE (AXSN - 10, AYSN), 10, 44
  2019. PAINT (AXSN - 10, AYSN), 44
  2020. CIRCLE (AXSN + 14, AYSN + 3), 6, 44
  2021. PAINT (AXSN + 14, AYSN + 3), 44
  2022. LINE (AXSN - 10, AYSN)-(AXSN + 12, AYSN + 8), 44, BF
  2023. LINE (AXSN - 18, AYSN + 14)-(AXSN + 15, AYSN + 14), 130
  2024. CIRCLE (AXSN + 15, AYSN + 9), 6, 130, 4.5, 0
  2025. LINE (AXSN - 4, AYSN + 14)-(AXSN + 6, AYSN + 9), 130, B
  2026. LINE (AXSN + 2, AYSN - 1)-(AXSN + 9, AYSN - 6), 4, BF
  2027. CIRCLE (AXSN + 5, AYSN - 10), 4, 88
  2028. PAINT (AXSN + 5, AYSN - 10), 88
  2029. PSET (AXSN + 5, AYSN - 10)
  2030. DRAW "BR1C0D1BR3BD1C15D4L1U4L1D3BU5BL4U3L1D3L1U3BU1C4R6H3G3R1U1R1U1R1D1R1BU3BL1C15U1L1D1"
  2031. CIRCLE (AXSN - 7, AYSN - 2), 7, 6
  2032. PAINT (AXSN - 8, AYSN - 2), 6
  2033. PSET (AXSN - 8, AYSN - 8)
  2034. DRAW "c6e3l3f3"
  2035.  
  2036.  
  2037.  
  2038.  
  2039.  
  2040. SORT1A:
  2041. PRIMOSOR1 = INT(RND(1) * 2) + 1
  2042.  
  2043.  
  2044. IF PRIMOSOR1 = 1 THEN SQ$ = "1": GOTO TUR1A
  2045. IF PRIMOSOR1 = 2 THEN SQ$ = "2": GOTO TUR1B
  2046.  
  2047. TUR1A:
  2048. LOCATE 5, 14: PRINT SQ$
  2049. FOR UA = 1 TO 3
  2050.     'SLEEP 1
  2051.     AJ = 3 '35
  2052.  
  2053.     LINE (160, 80)-(180, 100), 4, BF
  2054.     LINE (168, 80)-(172, 100), 14, BF
  2055.     LINE (160, 90)-(180, 94), 14, BF
  2056.     LINE (159, 79)-(181, 84), 10, B
  2057.     LINE (160, 80)-(180, 83), 2, BF
  2058.  
  2059.  
  2060.     SLEEP 1
  2061.     LINE (159, 79)-(181, 100), 0, BF
  2062.  
  2063.     CIRCLE (170, 90), 10, 8
  2064.     PAINT (170, 90), 8
  2065.     CIRCLE (167, 86), 3, 7
  2066.     PAINT (167, 86), 7
  2067.     LINE (167, 81)-(173, 79), 8, BF
  2068.     SLEEP 1
  2069.     LINE (159, 79)-(181, 100), 0, BF
  2070.  
  2071. NEXT UA
  2072.  
  2073. LINE (160, 80)-(180, 100), 4, BF
  2074. LINE (168, 80)-(172, 100), 14, BF
  2075. LINE (160, 90)-(180, 94), 14, BF
  2076. LINE (159, 79)-(181, 84), 10, B
  2077. LINE (160, 80)-(180, 83), 2, BF
  2078. GOTO BONUSOK
  2079.  
  2080.  
  2081. TUR1B:
  2082. LOCATE 5, 14: PRINT SQ$
  2083. FOR UA = 1 TO 3
  2084.     'SLEEP 1
  2085.     AJ = 3 '35
  2086.  
  2087.     LINE (160, 80)-(180, 100), 4, BF
  2088.     LINE (168, 80)-(172, 100), 14, BF
  2089.     LINE (160, 90)-(180, 94), 14, BF
  2090.     LINE (159, 79)-(181, 84), 10, B
  2091.     LINE (160, 80)-(180, 83), 2, BF
  2092.  
  2093.  
  2094.     SLEEP 1
  2095.     LINE (159, 79)-(181, 100), 0, BF
  2096.  
  2097.     CIRCLE (170, 90), 10, 8
  2098.     PAINT (170, 90), 8
  2099.     CIRCLE (167, 86), 3, 7
  2100.     PAINT (167, 86), 7
  2101.     LINE (167, 81)-(173, 79), 8, BF
  2102.     SLEEP 1
  2103.     LINE (159, 79)-(181, 100), 0, BF
  2104.  
  2105. NEXT UA
  2106.  
  2107. CIRCLE (170, 90), 10, 8
  2108. PAINT (170, 90), 8
  2109. CIRCLE (167, 86), 3, 7
  2110. PAINT (167, 86), 7
  2111. LINE (167, 81)-(173, 79), 8, BF
  2112. GOTO BONUSKO:
  2113.  
  2114.  
  2115. BONUSOK:
  2116.  
  2117. LINE (160, 80)-(180, 100), 4, BF
  2118. LINE (168, 80)-(172, 100), 14, BF
  2119. LINE (160, 90)-(180, 94), 14, BF
  2120. 'LINE (159, 79)-(181, 84), 10, B
  2121. 'LINE (160, 80)-(180, 83), 2, BF
  2122.  
  2123. PSET (166, 80)
  2124. DRAW "C7R6U2L6U2R6U2L6U2R6U2L6U2R6"
  2125. CIRCLE (169, 60), 8, 88
  2126. PAINT (169, 60), 88
  2127. CIRCLE (166, 60), 2, 0
  2128. PAINT (166, 60), 0
  2129. CIRCLE (172, 60), 2, 0
  2130. PAINT (172, 60), 0
  2131. CIRCLE (166, 60), 0, 15
  2132. CIRCLE (172, 60), 0, 15
  2133.  
  2134. CIRCLE (169, 61), 5, 4, 4.14, 5.28
  2135. PSET (163, 55)
  2136. DRAW "C4R12H6G6"
  2137. PAINT (169, 50), 4
  2138. CIRCLE (169, 47), 3, 15
  2139. PAINT (169, 47), 15
  2140.  
  2141.  
  2142.  
  2143. punt = punt + 25
  2144. GOTO FINALGAME
  2145.  
  2146. BONUSKO:
  2147. CIRCLE (170, 87), 18, 4
  2148. PAINT (170, 87), 4
  2149. 'CIRCLE (170, 85), 15, 0
  2150. 'PAINT (170, 85), 0
  2151. CIRCLE (172, 88), 10, 41
  2152. PAINT (172, 88), 41
  2153. 'CIRCLE (174, 88), 10, 0
  2154. 'PAINT (174, 88), 0
  2155. CIRCLE (174, 93), 8, 42
  2156. PAINT (174, 93), 42
  2157. 'CIRCLE (176, 93), 10, 0
  2158. 'PAINT (176, 93), 0
  2159. CIRCLE (178, 86), 10, 43
  2160. PAINT (178, 86), 43
  2161.  
  2162. punt = punt + 0
  2163.  
  2164. GOTO FINALGAME
  2165.  
  2166. FINALGAME:
  2167. LOCATE 10, 10: PRINT "IL TUO PUNTEGGIO TOTALE E' : "
  2168. LOCATE 12, 20: PRINT punt
  2169.  
  2170.  
  2171.  
  2172.  
  2173.  

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: In the last Christmas holidays
« Reply #1 on: March 06, 2019, 09:01:00 am »
Hi qb4ever,

Very cute! I bet with line numbers this would work in old GW-BASIC.


« Last Edit: March 06, 2019, 09:23:33 am by bplus »

Offline qb4ever

  • Newbie
  • Posts: 40
  • LOCATE 15,15: COLOR 14: PRINT "Hello World!"
    • View Profile
Re: In the last Christmas holidays
« Reply #2 on: March 06, 2019, 09:21:02 am »
Very cute!

I bet with line numbers this would work in old GW-BASIC.

Thanks !
Exactly, I have used old command.
In 90' I used two way for create games, in the next days I will post the second way

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: In the last Christmas holidays
« Reply #3 on: March 06, 2019, 09:23:48 am »
Are you familiar with the conveniences of modular programming, ie using SUBs and FUNCTIONs?

For instance, instead of circle, paint use FillCircle:
Code: QB64: [Select]
  1.  
  2. 'test FillCircle
  3. FillCircle 320, 240, 150, 14 '<<<<<<<<<<<<<<<<< works for qb color numbers as well as rgb
  4. FillCircle 320 - 75, 240, 37, 9
  5. FillCircle 320 + 75, 240, 37, 9
  6. FillCircle 320, 240 + 80, 20, 12
  7.  
  8. 'fill circle
  9. SUB FillCircle (CX AS INTEGER, CY AS INTEGER, R AS INTEGER, C AS _UNSIGNED LONG)
  10.     DIM Radius AS INTEGER, RadiusError AS INTEGER
  11.     DIM X AS INTEGER, Y AS INTEGER
  12.  
  13.     Radius = ABS(R)
  14.     RadiusError = -Radius
  15.     X = Radius
  16.     Y = 0
  17.  
  18.     IF Radius = 0 THEN PSET (CX, CY), C: EXIT SUB
  19.  
  20.     ' Draw the middle span here so we don't draw it twice in the main loop,
  21.     ' which would be a problem with blending turned on.
  22.     LINE (CX - X, CY)-(CX + X, CY), C, BF
  23.  
  24.     WHILE X > Y
  25.         RadiusError = RadiusError + Y * 2 + 1
  26.         IF RadiusError >= 0 THEN
  27.             IF X <> Y + 1 THEN
  28.                 LINE (CX - Y, CY - X)-(CX + Y, CY - X), C, BF
  29.                 LINE (CX - Y, CY + X)-(CX + Y, CY + X), C, BF
  30.             END IF
  31.             X = X - 1
  32.             RadiusError = RadiusError - X * 2
  33.         END IF
  34.         Y = Y + 1
  35.         LINE (CX - X, CY - Y)-(CX + X, CY - Y), C, BF
  36.         LINE (CX - X, CY + Y)-(CX + X, CY + Y), C, BF
  37.     WEND
  38.  
  39.  

Offline qb4ever

  • Newbie
  • Posts: 40
  • LOCATE 15,15: COLOR 14: PRINT "Hello World!"
    • View Profile
Re: In the last Christmas holidays
« Reply #4 on: March 06, 2019, 09:31:52 am »
Are you familiar with the conveniences of modular programming, ie using SUBs and FUNCTIONs?

For instance, instead of circle, paint use FillCircle:
Code: QB64: [Select]
  1.  
  2. 'test FillCircle
  3. FillCircle 320, 240, 150, 14 '<<<<<<<<<<<<<<<<< works for qb color numbers as well as rgb
  4. FillCircle 320 - 75, 240, 37, 9
  5. FillCircle 320 + 75, 240, 37, 9
  6. FillCircle 320, 240 + 80, 20, 12
  7.  
  8. 'fill circle
  9. SUB FillCircle (CX AS INTEGER, CY AS INTEGER, R AS INTEGER, C AS _UNSIGNED LONG)
  10.     DIM Radius AS INTEGER, RadiusError AS INTEGER
  11.     DIM X AS INTEGER, Y AS INTEGER
  12.  
  13.     Radius = ABS(R)
  14.     RadiusError = -Radius
  15.     X = Radius
  16.     Y = 0
  17.  
  18.     IF Radius = 0 THEN PSET (CX, CY), C: EXIT SUB
  19.  
  20.     ' Draw the middle span here so we don't draw it twice in the main loop,
  21.     ' which would be a problem with blending turned on.
  22.     LINE (CX - X, CY)-(CX + X, CY), C, BF
  23.  
  24.     WHILE X > Y
  25.         RadiusError = RadiusError + Y * 2 + 1
  26.         IF RadiusError >= 0 THEN
  27.             IF X <> Y + 1 THEN
  28.                 LINE (CX - Y, CY - X)-(CX + Y, CY - X), C, BF
  29.                 LINE (CX - Y, CY + X)-(CX + Y, CY + X), C, BF
  30.             END IF
  31.             X = X - 1
  32.             RadiusError = RadiusError - X * 2
  33.         END IF
  34.         Y = Y + 1
  35.         LINE (CX - X, CY - Y)-(CX + X, CY - Y), C, BF
  36.         LINE (CX - X, CY + Y)-(CX + X, CY + Y), C, BF
  37.     WEND
  38.  
  39.  

Thanks for your hel Bplus.
I must study QB64.
I know using a "circle" property for draw ellipses, part of circle, etc...
It's been about 25 years ... I hope that with my prehistoric programming I do not go off topic ....

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: In the last Christmas holidays
« Reply #5 on: March 06, 2019, 09:55:37 am »
Here is crash course of graphics with mouse, move the mouse:
Code: QB64: [Select]
  1. _TITLE "Face with moving eyes" 'B+ 2019-03-06
  2.  
  3. COLOR , 11
  4. WHILE _KEYDOWN(27) = 0 'until esc keypress
  5.     CLS
  6.     drawFace
  7.     mx = _MOUSEX: my = _MOUSEY
  8.     angle = _ATAN2(my - 240, mx - 320)
  9.     FOR i = 1 TO 8
  10.         IF i MOD 2 THEN bc = 0 ELSE bc = 14
  11.         FillCircle mx + i * 3, my + i * 3, 5, bc
  12.     NEXT
  13.     FillCircle mx - 15 + 20, my + 10, 8, 7
  14.     FillCircle mx + 8 + 20, my + 5, 8, 7
  15.     x1 = 320 - 75 + 37 / 2 * COS(angle)
  16.     y1 = 240 + 37 / 2 * SIN(angle)
  17.     x2 = 320 + 75 + 37 / 2 * COS(angle)
  18.     FillCircle x1, y1, 37 / 2, 0
  19.     FillCircle x2, y1, 37 / 2, 0
  20.     _DISPLAY 'prevent flicker
  21.     _LIMIT 60 'save CPU fan
  22.  
  23. SUB drawFace
  24.     FillCircle 320, 240, 150, 14 '<<<<<<<<<<<<<<<<< works for qb color numbers as well as rgb
  25.     FillCircle 320 - 75, 240, 37, 9
  26.     FillCircle 320 + 75, 240, 37, 9
  27.     FillCircle 320, 240 + 80, 20, 12
  28.  
  29. 'fill circle
  30. SUB FillCircle (CX AS INTEGER, CY AS INTEGER, R AS INTEGER, C AS _UNSIGNED LONG)
  31.     DIM Radius AS INTEGER, RadiusError AS INTEGER
  32.     DIM X AS INTEGER, Y AS INTEGER
  33.  
  34.     Radius = ABS(R)
  35.     RadiusError = -Radius
  36.     X = Radius
  37.     Y = 0
  38.  
  39.     IF Radius = 0 THEN PSET (CX, CY), C: EXIT SUB
  40.  
  41.     ' Draw the middle span here so we don't draw it twice in the main loop,
  42.     ' which would be a problem with blending turned on.
  43.     LINE (CX - X, CY)-(CX + X, CY), C, BF
  44.  
  45.     WHILE X > Y
  46.         RadiusError = RadiusError + Y * 2 + 1
  47.         IF RadiusError >= 0 THEN
  48.             IF X <> Y + 1 THEN
  49.                 LINE (CX - Y, CY - X)-(CX + Y, CY - X), C, BF
  50.                 LINE (CX - Y, CY + X)-(CX + Y, CY + X), C, BF
  51.             END IF
  52.             X = X - 1
  53.             RadiusError = RadiusError - X * 2
  54.         END IF
  55.         Y = Y + 1
  56.         LINE (CX - X, CY - Y)-(CX + X, CY - Y), C, BF
  57.         LINE (CX - X, CY + Y)-(CX + X, CY + Y), C, BF
  58.     WEND
  59.  
  60.  

Offline qb4ever

  • Newbie
  • Posts: 40
  • LOCATE 15,15: COLOR 14: PRINT "Hello World!"
    • View Profile
Re: In the last Christmas holidays
« Reply #6 on: March 06, 2019, 10:01:33 am »
Here is crash course of graphics with mouse, move the mouse:
Code: QB64: [Select]
  1. _TITLE "Face with moving eyes" 'B+ 2019-03-06
  2.  
  3. COLOR , 11
  4. WHILE _KEYDOWN(27) = 0 'until esc keypress
  5.     CLS
  6.     drawFace
  7.     mx = _MOUSEX: my = _MOUSEY
  8.     angle = _ATAN2(my - 240, mx - 320)
  9.     FOR i = 1 TO 8
  10.         IF i MOD 2 THEN bc = 0 ELSE bc = 14
  11.         FillCircle mx + i * 3, my + i * 3, 5, bc
  12.     NEXT
  13.     FillCircle mx - 15 + 20, my + 10, 8, 7
  14.     FillCircle mx + 8 + 20, my + 5, 8, 7
  15.     x1 = 320 - 75 + 37 / 2 * COS(angle)
  16.     y1 = 240 + 37 / 2 * SIN(angle)
  17.     x2 = 320 + 75 + 37 / 2 * COS(angle)
  18.     FillCircle x1, y1, 37 / 2, 0
  19.     FillCircle x2, y1, 37 / 2, 0
  20.     _DISPLAY 'prevent flicker
  21.     _LIMIT 60 'save CPU fan
  22.  
  23. SUB drawFace
  24.     FillCircle 320, 240, 150, 14 '<<<<<<<<<<<<<<<<< works for qb color numbers as well as rgb
  25.     FillCircle 320 - 75, 240, 37, 9
  26.     FillCircle 320 + 75, 240, 37, 9
  27.     FillCircle 320, 240 + 80, 20, 12
  28.  
  29. 'fill circle
  30. SUB FillCircle (CX AS INTEGER, CY AS INTEGER, R AS INTEGER, C AS _UNSIGNED LONG)
  31.     DIM Radius AS INTEGER, RadiusError AS INTEGER
  32.     DIM X AS INTEGER, Y AS INTEGER
  33.  
  34.     Radius = ABS(R)
  35.     RadiusError = -Radius
  36.     X = Radius
  37.     Y = 0
  38.  
  39.     IF Radius = 0 THEN PSET (CX, CY), C: EXIT SUB
  40.  
  41.     ' Draw the middle span here so we don't draw it twice in the main loop,
  42.     ' which would be a problem with blending turned on.
  43.     LINE (CX - X, CY)-(CX + X, CY), C, BF
  44.  
  45.     WHILE X > Y
  46.         RadiusError = RadiusError + Y * 2 + 1
  47.         IF RadiusError >= 0 THEN
  48.             IF X <> Y + 1 THEN
  49.                 LINE (CX - Y, CY - X)-(CX + Y, CY - X), C, BF
  50.                 LINE (CX - Y, CY + X)-(CX + Y, CY + X), C, BF
  51.             END IF
  52.             X = X - 1
  53.             RadiusError = RadiusError - X * 2
  54.         END IF
  55.         Y = Y + 1
  56.         LINE (CX - X, CY - Y)-(CX + X, CY - Y), C, BF
  57.         LINE (CX - X, CY + Y)-(CX + X, CY + Y), C, BF
  58.     WEND
  59.  
  60.  

Fun animation !

Offline bplus

  • Global Moderator
  • Forum Resident
  • Posts: 8053
  • b = b + ...
    • View Profile
Re: In the last Christmas holidays
« Reply #7 on: March 06, 2019, 10:15:18 am »
Hi qb4ever,

That game you started with Santa, that still needs to be finished? It looks like a fun animation too!

Offline qb4ever

  • Newbie
  • Posts: 40
  • LOCATE 15,15: COLOR 14: PRINT "Hello World!"
    • View Profile
Re: In the last Christmas holidays
« Reply #8 on: March 06, 2019, 10:18:58 am »
Hi qb4ever,

That game you started with Santa, that still needs to be finished? It looks like a fun animation too!

As soon as possible i want finish the game. I have very few time disponible.....