'=========================================================================== ' Subject: STARWARS (SHOOTER) Date: 09-22-97 (21:59) ' Author: David Calhoun Code: QB, QBasic, PDS ' Origin: _gotmilk_@geocities.com Packet: GAMES.ABC '=========================================================================== 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ '| ÄÄÄÄÄSTARWARS.BASÄÄÄÄÄ | '| | '| A program made in QuickBasic 4.5 | 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ '| ÄÄÄÄÄCREDITSÄÄÄÄÄ | '| | '| Programed and created by David Calhoun | 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ '| ÄÄÄÄÄCONTROLSÄÄÄÄÄ | '| Use the arrow keys to move in any dircetion | '| Press S to stop moving and SPC to fire | '| Press ESC key to quit | 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DEFINT A-Z DECLARE SUB fillarrays () DECLARE SUB controls () DECLARE SUB gameover () DECLARE SUB warp () DIM SHARED maxx 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Change maxx to equal the number of missiles you have. 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ maxx = 50 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Miscellaneous Variables that are shared through out the program. 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DIM SHARED falcon(500), tie(150), black(150) DIM SHARED x(100), y(100), ytie(10), xtie(10) DIM SHARED colr(100), layer(100), attack(10) DIM SHARED sy(maxx), sx(maxx), clr(maxx) DIM SHARED move(10) DIM SHARED level, lwarp DIM SHARED power RANDOMIZE TIMER CLS COLOR 8 PRINT "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ" PRINT "| ÄÄÄÄÄSTARWARS.BASÄÄÄÄÄ |" PRINT "| |" PRINT "| A program made in QuickBasic 4.5 |" PRINT "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ" PRINT "| ÄÄÄÄÄCREDITSÄÄÄÄÄ |" PRINT "| |" PRINT "| Programed and created by David Calhoun |" PRINT "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ" PRINT "| ÄÄÄÄÄCONTROLSÄÄÄÄÄ |" PRINT "|"; TAB(26); CHR$(24); " = Up"; TAB(52); CHR$(27); " = Left"; TAB(80); "|" PRINT "|"; TAB(26); CHR$(25); " = Down"; TAB(52); CHR$(26); " = Right"; TAB(80); "|" PRINT "| |" PRINT "| Press S to stop moving and SPC to fire |" PRINT "| Press ESC key to advance levels or to quit |" PRINT "ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ" PRINT " **PRESS THE ESCAPE KEY TO CONTINUE**" level = 1 l$ = "" DO UNTIL l$ = CHR$(27) l$ = INKEY$ LOOP SCREEN 13 fillarrays controls END 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ 'Data for Millenium Falcon 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DATA 00,00,00,00,00,00,20,20,20,00,00,20,20,20,00,00,20,20,20,20 DATA 00,00,00,00,00,00,20,21,20,00,00,20,21,20,00,00,20,21,21,20 DATA 00,00,00,00,00,00,20,21,20,00,00,20,21,20,00,00,20,21,21,20 DATA 00,00,00,00,00,20,21,21,20,00,00,20,21,21,20,20,21,22,21,20 DATA 00,00,00,00,20,21,22,21,20,00,00,20,21,22,21,20,21,22,21,20 DATA 00,00,00,20,21,22,22,21,20,00,00,20,21,22,22,21,20,21,20,00 DATA 00,00,00,20,21,22,22,21,20,00,00,20,21,22,22,21,20,20,00,00 DATA 00,00,20,21,22,23,22,21,20,00,00,20,21,22,23,22,21,20,00,00 DATA 00,20,21,22,23,24,23,22,21,20,20,21,22,23,24,23,22,21,20,00 DATA 20,21,22,23,24,25,24,23,22,21,21,22,23,24,25,24,23,22,21,20 DATA 20,21,22,23,24,25,25,25,20,22,22,20,25,25,25,24,23,22,21,20 DATA 20,21,22,23,24,25,25,25,21,25,25,21,25,25,25,24,23,22,21,20 DATA 20,21,22,23,24,25,25,25,21,21,21,21,25,25,25,24,23,22,21,20 DATA 20,21,22,23,24,25,25,21,22,22,22,22,21,25,25,24,23,22,21,20 DATA 20,21,22,23,24,25,25,21,22,23,23,22,21,25,25,24,23,22,21,20 DATA 00,20,21,22,23,24,24,21,22,22,22,22,21,24,24,23,22,21,20,00 DATA 00,00,20,21,22,23,23,23,21,21,21,21,23,23,23,22,21,20,00,00 DATA 00,00,00,20,21,22,22,22,22,22,22,22,22,22,22,21,20,00,00,00 DATA 00,00,00,00,20,21,21,21,21,21,21,21,21,21,21,20,00,00,00,00 DATA 00,00,00,00,00,20,20,20,20,20,20,20,20,20,20,00,00,00,00,00 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ 'Data for Tie Fighter 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ DATA 00,00,00,00,00,00,00,00,00,00 DATA 00,00,22,00,00,00,00,22,00,00 DATA 00,22,00,00,00,00,00,00,22,00 DATA 00,22,00,22,22,22,22,00,22,00 DATA 00,22,22,23,23,23,23,22,22,00 DATA 00,22,22,23,23,23,23,22,22,00 DATA 00,22,00,22,22,22,22,00,22,00 DATA 00,22,00,00,00,00,00,00,22,00 DATA 00,00,22,00,00,00,00,22,00,00 DATA 00,00,00,00,00,00,00,00,00,00 SUB controls 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Define starting variables 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ii = 1 ' Right to left movement of Tie Fighters xx = 150 ' Start x-cord. of falcon yy = 170 ' Start y-cord. of falcon power = 200 missle = maxx ' Max missiles (printed on screen) lwarp = 200 DO UNTIL in$ = CHR$(27) in$ = INKEY$ in$ = UCASE$(in$) 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Movement of the stars 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FOR c = 0 TO 99 PRESET (x(c), y(c)) y(c) = y(c) + layer(c) IF y(c) > 200 THEN y(c) = 1: x(c) = INT(RND * 320) + 1 PSET (x(c), y(c)), colr(c) NEXT 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Movement of the Tie Fighters and Collision Detection 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FOR c = 1 TO 9 ii = -ii ' Change x - cord. interval PUT (xtie(c), ytie(c)), tie, PSET ' PUT Tie Fighter ytie(c) = ytie(c) + INT(RND * 2) ' Change y - cord. IF xtie(c) >= xx AND xtie(c) <= xx + 19 AND ytie(c) >= yy AND ytie(c) <= yy + 19 THEN hit1 = 1 IF xtie(c) + 8 >= xx AND xtie(c) + 8 <= xx + 19 AND ytie(c) >= yy AND ytie(c) <= yy + 19 THEN hit1 = 1 IF xtie(c) >= xx AND xtie(c) <= xx + 19 AND ytie(c) + 8 >= yy AND ytie(c) + 8 <= yy + 19 THEN hit1 = 1 IF xtie(c) + 8 >= xx AND xtie(c) + 8 <= xx + 19 AND ytie(c) + 8 >= yy AND ytie(c) + 8 <= yy + 19 THEN hit1 = 1 IF hit1 = 1 THEN power = power - 10 PUT (xtie(c), ytie(c)), black, PSET ytie(c) = 0 hit1 = 0 END IF FOR cd = 0 TO 50 IF sx(cd) >= xtie(c) AND sx(cd) <= xtie(c) + 8 AND sy(cd) >= ytie(c) AND sy(cd) <= ytie(c) + 8 THEN score = score + 5 sy(cd) = -10 hit = 1 END IF NEXT IF xtie(c) + 10 < 290 AND xtie(c) - 10 > -5 THEN xtie(c) = xtie(c) + ii * (INT(RND * 2)) END IF IF ytie(c) > 180 OR hit = 1 THEN PUT (xtie(c), ytie(c)), black, PSET: ytie(c) = 0: xtie(c) = INT(RND * 300) + 1 hit = 0 NEXT PUT (xx, yy), falcon, PSET 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Checks INKEY$ for any pressed keys 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ WAIT 986, 8 IF in$ = CHR$(0) + "H" OR up = 1 AND yy - 5 > 0 THEN up = 1: yy = yy - 2: down = 0: right = 0: left = 0 IF in$ = CHR$(0) + "P" OR down = 1 AND yy + 20 < 190 THEN down = 1: yy = yy + 2: up = 0: right = 0: left = 0 IF in$ = CHR$(0) + "M" OR right = 1 AND xx + 20 < 300 THEN right = 1: xx = xx + 2: left = 0: up = 0: down = 0 IF in$ = CHR$(0) + "K" OR left = 1 AND xx - 5 > 0 THEN left = 1: xx = xx - 2: right = 0: up = 0: down = 0 IF in$ = "S" THEN up = 0: down = 0: right = 0: left = 0 PUT (xx, yy), falcon, PSET 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Sets variables for a fired Missile ( SPC BAR = Fire ) 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ IF in$ = " " AND shoot < maxx THEN rr = INT(RND * 2) + 1 IF rr = 1 THEN rr = 13 IF rr = 2 THEN rr = 16 sx(shoot) = xx + rr sy(shoot) = yy + 15 clr(shoot) = 1 shoot = shoot + 1 missle = missle - 1 END IF FOR c = 0 TO shoot - 1 LINE (sx(c), sy(c))-(sx(c) + 1, sy(c) + 1), 0, BF sy(c) = sy(c) - 4 ' Change y - cord. of missile IF sy(c) < 0 THEN clr(c) = 0 LINE (sx(c), sy(c))-(sx(c) + 1, sy(c) + 1), clr(c), BF IF shoot = maxx AND sy(maxx - 1) < -2 THEN shoot = 0: missle = maxx NEXT 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Writes amount of Missiles, Score, Power and checks to see if your power ' is gone resulting in a GAME OVER 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ COLOR 112 LOCATE 1, 1 PRINT "Score:"; score, "Level:"; level; " "; "Missiles:"; missle IF score = lwarp THEN warp IF power <= 0 THEN gameover LINE (1, 16)-(201, 26), 0, BF IF power > 0 THEN LINE (2, 17)-(power, 25), 3, BF LOOP END SUB SUB fillarrays 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Draw and GET Falcon 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FOR y = 6 TO 25 FOR x = 6 TO 25 READ A PSET (x, y), A NEXT NEXT GET (1, 1)-(30, 30), falcon CLS 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Draw and GET Tie 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FOR y = 2 TO 10 FOR x = 1 TO 10 READ A IF A = 0 THEN A = 254 PSET (x, y), A NEXT NEXT GET (0, 0)-(11, 11), tie CLS GET (0, 0)-(11, 11), black 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Define variables for Stars 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FOR c = 0 TO 99 x(c) = INT(RND * 320) + 1 ' x - cord. y(c) = INT(RND * 200) + 1 ' y - cord. colr(c) = INT(RND * 16) + 16 ' color layer(c) = INT(RND * 10) + 1 ' step NEXT 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ ' Define variables for Tie Fighters 'ÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄÄ FOR c = 1 TO 10 xtie(c) = INT(RND * 300) + 1 ' x - cord. ytie(c) = 1 ' y - cord. attack(c) = INT(RND * 20) + 1 ' time to take off NEXT END SUB SUB gameover CLS COLOR 15 LOCATE 13, 17 PRINT "GAME OVER" END END SUB SUB warp level = level + 1 lwarp = lwarp + 200 CLS DO UNTIL in$ = CHR$(27) in$ = INKEY$ WAIT 986, 8 FOR c = 0 TO 99 PRESET (x(c), y(c)) y(c) = y(c) + layer(c) IF y(c) > 200 THEN y(c) = 1: x(c) = INT(RND * 300) + 1 PSET (x(c), y(c)), colr(c) NEXT LOCATE 13, 17 PRINT "Level:"; level LOOP IF level MOD 2 = 0 THEN power = 200 CLS END SUB