REM 12-24-95 DIM SHARED rad AS INTEGER DIM SHARED l AS INTEGER DIM SHARED watercolor AS INTEGER DIM SHARED trickvariable AS INTEGER DECLARE SUB ender () DECLARE SUB background () DECLARE SUB riverwater () DECLARE SUB firstwater () DECLARE SUB secondwater () DECLARE SUB thirdwater () DECLARE SUB fourthwater () SCREEN 13 WINDOW (-50, -50)-(50, 50) rad = 0: CALL background CALL riverwater CALL firstwater CALL secondwater CALL thirdwater watercolor = 0: counter = 0 DO counter = counter + 1 IF counter = 21 THEN CALL ender END IF CALL fourthwater watercolor = watercolor + 1 LOOP SUB background SCREEN 13 WINDOW (-50, -50)-(50, 50) pi = (22 / 7): LINE (-10, 50)-(-5, 45), 2 LINE (0, 50)-(5, 45), 2 LINE (5, 45)-(50, 45), 2 LINE (-50, 45)-(-5, 45), 2 PAINT (9, 47.5), 2 PAINT (-9, 47.5), 2 LINE (5, 45)-(50, 45), 6 LINE (-50, 45)-(-5, 45), 6 LINE (5, 45)-(5, 25), 6 LINE (-5, 45)-(-5, 25), 6 LINE (5, 25)-(50, 25), 6 LINE (-5, 25)-(-50, 25), 6 PAINT (25, 30), 6 PAINT (-25, 30), 6 CIRCLE (0, 12), 20, 2, 0, pi / 2.4, 2 / 5 CIRCLE (0, 12), 20, 2, pi / 1.75, 6.28, 2 / 5 LINE (5, 25)-(50, 25), 2 LINE (-50, 25)-(-5, 25), 2 PAINT (-49, 0), 2 LINE (5, 25)-(50, 25), 6 LINE (-50, 25)-(-5, 25), 6 CIRCLE (0, 12), 20, 16, 0, pi / 2.4, 2 / 5 CIRCLE (0, 12), 20, 16, pi / 1.75, 6.28, 2 / 5 LINE (-10, 50)-(-5, 45), 16 LINE (0, 50)-(5, 45), 16 LINE (5, 45)-(5, 25), 16 LINE (-5, 45)-(-5, 25), 16 PAINT (0, 12), 16 LINE (5, 45)-(5, 25), 6 LINE (-5, 45)-(-5, 25), 6 LINE (-10, 50)-(-5, 45), 2 LINE (0, 50)-(5, 45), 2 END SUB SUB ender CLS SCREEN 13 WINDOW (0, 0)-(100, 100) OPEN "endscene.fls" FOR OUTPUT AS #1 CLOSE 1 DIM coordI(1000) DIM coordII(1000) RANDOMIZE TIMER launchsite = 48.5 'INT(RND * (90 - 1 + 1) + 1) explodesite = 55 'INT(RND * (90 - 50 + 1) + 50) flightspeed = INT(RND * (0 - 0 + 1) + 0) FOR flightpath = 0 TO explodesite PSET (launchsite, flightpath), 15 PSET (launchsite, flightpath - 5), 0 SOUND (explodesite - (flightpath * 5)) + 2000, .5 FOR i = 1 TO flightspeed NEXT NEXT FOR clearup = explodesite - 5 TO explodesite PSET (launchsite, clearup), 0 NEXT KILL "endscene.fls" GOSUB fireexplodeII fireexplodeII: c = 0: RANDOMIZE TIMER colordecide = INT(RND * (15 - 7 + 1) + 7) DO c = c + 1 RANDOMIZE TIMER bitsizeI = INT(RND * (10 - 0 + 1) + 0) RANDOMIZE TIMER bitsizeII = INT(RND * (10 - 0 + 1) + 0) RANDOMIZE TIMER bitsizeIII = INT(RND * (10 - 0 + 1) + 0) RANDOMIZE TIMER bitsizeIV = INT(RND * (10 - 0 + 1) + 0) IF colordecide = 7 THEN colorspecial = bitsizeI SELECT CASE colorspecial CASE 8 TO 10 colorspecial = colorspecial - 3 END SELECT firecolor = colorspecial + 8 ELSE firecolor = colordecide END IF PSET (launchsite + bitsizeI, explodesite + bitsizeII), firecolor OPEN "endscene.fls" FOR APPEND AS #1 coordI = launchsite + bitsizeI coordII = explodesite + bitsizeII WRITE #1, coordI, coordII PSET (launchsite - bitsizeIII, explodesite - bitsizeIV), firecolor coordI = launchsite - bitsizeIII coordII = explodesite - bitsizeIV WRITE #1, coordI, coordII PSET (launchsite - bitsizeI, explodesite + bitsizeII), firecolor coordI = launchsite - bitsizeI coordII = explodesite + bitsizeII WRITE #1, coordI, coordII PSET (launchsite + bitsizeIII, explodesite - bitsizeIV), firecolor coordI = launchsite + bitsizeIII coordII = explodesite - bitsizeIV WRITE #1, coordI, coordII CLOSE #1 SOUND 37, .05 LOOP UNTIL c = 15 IF colordecide = 7 THEN firecolor = 15 END IF OPEN "endscene.fls" FOR INPUT AS #1 q = 0: DO WHILE NOT EOF(1) q = q + 1 INPUT #1, coordI(q), coordII(q) PSET (coordI(q), coordII(q)), firecolor LOOP CLOSE #1 OPEN "endscene.fls" FOR INPUT AS #1 q = 0: DO WHILE NOT EOF(1) q = q + 1 INPUT #1, coordI(q), coordII(q) PSET (coordI(q), coordII(q)), 0 PSET (coordI(q), coordII(q) - 1), firecolor - 8 LOOP CLOSE #1 OPEN "endscene.fls" FOR INPUT AS #1 q = 0: DO WHILE NOT EOF(1) q = q + 1 INPUT #1, coordI(q), coordII(q) PSET (coordI(q), coordII(q) - 1), 0 PSET (coordI(q), coordII(q) - 2), firecolor - 8 LOOP CLOSE #1 OPEN "endscene.fls" FOR INPUT AS #1 q = 0: DO WHILE NOT EOF(1) q = q + 1 INPUT #1, coordI(q), coordII(q) PSET (coordI(q), coordII(q) - 2), 0 PSET (coordI(q), coordII(q) - 3), 8 LOOP CLOSE #1 OPEN "endscene.fls" FOR INPUT AS #1 q = 0: DO WHILE NOT EOF(1) q = q + 1 INPUT #1, coordI(q), coordII(q) PSET (coordI(q), coordII(q) - 3), 0 PSET (coordI(q), coordII(q) - 4), 8 LOOP CLOSE #1 OPEN "endscene.fls" FOR INPUT AS #1 q = 0: DO WHILE NOT EOF(1) q = q + 1 INPUT #1, coordI(q), coordII(q) PSET (coordI(q), coordII(q) - 4), 0 LOOP FOR i = .1 TO 6 STEP .1 CIRCLE (48.5, 50), i, 10 CIRCLE (48.5, 50), i, 0 NEXT CIRCLE (48.5, 50), 6, 10 CLOSE #1 ERASE coordI, coordII COLOR 15 LOCATE 13, 19: PRINT "Dom" COLOR 32 LOCATE 23, 1: PRINT "1" COLOR 33 LOCATE 23, 2: PRINT "9" COLOR 34 LOCATE 23, 3: PRINT "9" COLOR 35 LOCATE 23, 4: PRINT "5" COLOR 36 LOCATE 23, 6: PRINT "D" COLOR 37 LOCATE 23, 7: PRINT "o" COLOR 38 LOCATE 23, 8: PRINT "m" COLOR 39 LOCATE 23, 9: PRINT "i" COLOR 40 LOCATE 23, 10: PRINT "n" COLOR 41 LOCATE 23, 11: PRINT "o" COLOR 42 LOCATE 23, 13: PRINT "P" COLOR 43 LOCATE 23, 14: PRINT "r" COLOR 44 LOCATE 23, 15: PRINT "o" COLOR 45 LOCATE 23, 16: PRINT "d" COLOR 46 LOCATE 23, 17: PRINT "u" COLOR 47 LOCATE 23, 18: PRINT "c" COLOR 48 LOCATE 23, 19: PRINT "t" COLOR 49 LOCATE 23, 20: PRINT "i" COLOR 50 LOCATE 23, 21: PRINT "o" COLOR 51 LOCATE 23, 22: PRINT "n" COLOR 52 LOCATE 23, 23: PRINT "s" COLOR 0 END END SUB SUB firstwater slant = 10 FOR whI = 45 TO 40 STEP -.25 slant = whI - 35 LINE (-10, 50)-(-slant, whI + 5), 22 LINE (-9, 50)-(-slant + 1, whI + 5), 22 LINE (-8, 50)-(-slant + 2, whI + 5), 22 LINE (-7, 50)-(-slant + 3, whI + 5), 22 LINE (-6, 50)-(-slant + 4, whI + 5), 22 LINE (-5, 50)-(-slant + 5, whI + 5), 22 LINE (-4, 50)-(-slant + 6, whI + 5), 22 LINE (-3, 50)-(-slant + 7, whI + 5), 22 LINE (-2, 50)-(-slant + 8, whI + 5), 22 LINE (-1, 50)-(-slant + 9, whI + 5), 22 LINE (0, 50)-(-slant + 10, whI + 5), 22 LINE (-5, 45)-(-5, whI), 19 LINE (-4, 45)-(-4, whI), 19 LINE (-3, 45)-(-3, whI), 19 LINE (-2, 45)-(-2, whI), 19 LINE (-1, 45)-(-1, whI), 19 LINE (0, 45)-(0, whI), 19 LINE (1, 45)-(1, whI), 19 LINE (2, 45)-(2, whI), 19 LINE (3, 45)-(3, whI), 19 LINE (4, 45)-(4, whI), 19 LINE (5, 45)-(5, whI), 19 NEXT END SUB SUB fourthwater SELECT CASE watercolor CASE 0 colorone = 31 colortwo = 28 colorthree = 25 colorfour = 22 colorfive = 19 CASE 1 colorone = 19 colortwo = 31 colorthree = 28 colorfour = 25 colorfive = 22 trickvariable = 1 CASE 2 colorone = 22 colortwo = 19 colorthree = 31 colorfour = 28 colorfive = 25 CASE 3 colorone = 25 colortwo = 22 colorthree = 19 colorfour = 31 colorfive = 28 CASE 4 colorone = 28 colortwo = 25 colorthree = 22 colorfour = 19 colorfive = 31 watercolor = -1 END SELECT FOR whIIII = 30 TO 25 STEP -.25 slant = whIIII - 20 LINE (-10, 50)-(-slant, whIIII + 20), colorone LINE (-9, 50)-(-slant + 1, whIIII + 20), colorone LINE (-8, 50)-(-slant + 2, whIIII + 20), colorone LINE (-7, 50)-(-slant + 3, whIIII + 20), colorone LINE (-6, 50)-(-slant + 4, whIIII + 20), colorone LINE (-5, 50)-(-slant + 5, whIIII + 20), colorone LINE (-4, 50)-(-slant + 6, whIIII + 20), colorone LINE (-3, 50)-(-slant + 7, whIIII + 20), colorone LINE (-2, 50)-(-slant + 8, whIIII + 20), colorone LINE (-1, 50)-(-slant + 9, whIIII + 20), colorone LINE (0, 50)-(-slant + 10, whIIII + 20), colorone LINE (-5, whIIII + 5)-(-5, whIIII), colorfive LINE (-5, 35)-(-5, whIIII + 5), colorfour LINE (-5, 40)-(-5, whIIII + 10), colorthree LINE (-5, 45)-(-5, whIIII + 15), colortwo LINE (-4, whIIII + 5)-(-4, whIIII), colorfive LINE (-4, 35)-(-4, whIIII + 5), colorfour LINE (-4, 40)-(-4, whIIII + 10), colorthree LINE (-4, 45)-(-4, whIIII + 15), colortwo LINE (-3, whIIII + 5)-(-3, whIIII), colorfive LINE (-3, 35)-(-3, whIIII + 5), colorfour LINE (-3, 40)-(-3, whIIII + 10), colorthree LINE (-3, 45)-(-3, whIIII + 15), colortwo LINE (-2, whIIII + 5)-(-2, whIIII), colorfive LINE (-2, 35)-(-2, whIIII + 5), colorfour LINE (-2, 40)-(-2, whIIII + 10), colorthree LINE (-2, 45)-(-2, whIIII + 15), colortwo LINE (-1, whIIII + 5)-(-1, whIIII), colorfive LINE (-1, 35)-(-1, whIIII + 5), colorfour LINE (-1, 40)-(-1, whIIII + 10), colorthree LINE (-1, 45)-(-1, whIIII + 15), colortwo LINE (0, whIIII + 5)-(0, whIIII), colorfive LINE (0, 35)-(0, whIIII + 5), colorfour LINE (0, 40)-(0, whIIII + 10), colorthree LINE (0, 45)-(0, whIIII + 15), colortwo LINE (1, whIIII + 5)-(1, whIIII), colorfive LINE (1, 35)-(1, whIIII + 5), colorfour LINE (1, 40)-(1, whIIII + 10), colorthree LINE (1, 45)-(1, whIIII + 15), colortwo LINE (2, whIIII + 5)-(2, whIIII), colorfive LINE (2, 35)-(2, whIIII + 5), colorfour LINE (2, 40)-(2, whIIII + 10), colorthree LINE (2, 45)-(2, whIIII + 15), colortwo LINE (3, whIIII + 5)-(3, whIIII), colorfive LINE (3, 35)-(3, whIIII + 5), colorfour LINE (3, 40)-(3, whIIII + 10), colorthree LINE (3, 45)-(3, whIIII + 15), colortwo LINE (4, whIIII + 5)-(4, whIIII), colorfive LINE (4, 35)-(4, whIIII + 5), colorfour LINE (4, 40)-(4, whIIII + 10), colorthree LINE (4, 45)-(4, whIIII + 15), colortwo LINE (5, whIIII + 5)-(5, whIIII), colorfive LINE (5, 35)-(5, whIIII + 5), colorfour LINE (5, 40)-(5, whIIII + 10), colorthree LINE (5, 45)-(5, whIIII + 15), colortwo rad = rad + 1 radtwo = (rad - 22) / 10 IF radtwo > 20 THEN radtwo = 20 END IF IF trickvariable = 1 THEN RANDOMIZE TIMER foamlong = INT(RND * (5 - (-5) + 1) + (-5)) foamhigh = INT(RND * (26 - 24 + 1) + 24) CIRCLE (0, 12), radtwo, 32, pi / 1.75, 6.28, 2 / 5 LINE (foamlong, foamhigh)-(foamlong - .5, foamhigh - .5), 15, B, &HFF00 CIRCLE (foamlong, foamhigh), .5, 15 LINE (foamlong, foamhigh)-(foamlong - .5, foamhigh - .5), 32, B, &HFF00 l = l + 1 END IF IF l = 1 THEN LINE (-1, 12)-(2, 24), 32, BF END IF NEXT END SUB SUB riverwater FOR river = 50 TO 45 STEP -.25 slant = river - 40 LINE (-10, 50)-(-slant, river), 19 LINE (-9, 50)-(-slant + 1, river), 19 LINE (-8, 50)-(-slant + 2, river), 19 LINE (-7, 50)-(-slant + 3, river), 19 LINE (-6, 50)-(-slant + 4, river), 19 LINE (-5, 50)-(-slant + 5, river), 19 LINE (-4, 50)-(-slant + 6, river), 19 LINE (-3, 50)-(-slant + 7, river), 19 LINE (-2, 50)-(-slant + 8, river), 19 LINE (-1, 50)-(-slant + 9, river), 19 LINE (0, 50)-(-slant + 10, river), 19 NEXT END SUB SUB secondwater FOR whII = 40 TO 35 STEP -.25 slant = whII - 30 LINE (-10, 50)-(-slant, whII + 10), 25 LINE (-9, 50)-(-slant + 1, whII + 10), 25 LINE (-8, 50)-(-slant + 2, whII + 10), 25 LINE (-7, 50)-(-slant + 3, whII + 10), 25 LINE (-6, 50)-(-slant + 4, whII + 10), 25 LINE (-5, 50)-(-slant + 5, whII + 10), 25 LINE (-4, 50)-(-slant + 6, whII + 10), 25 LINE (-3, 50)-(-slant + 7, whII + 10), 25 LINE (-2, 50)-(-slant + 8, whII + 10), 25 LINE (-1, 50)-(-slant + 9, whII + 10), 25 LINE (0, 50)-(-slant + 10, whII + 10), 25 LINE (-5, whII + 5)-(-5, whII), 19 LINE (-5, 45)-(-5, whII + 5), 22 LINE (-4, whII + 5)-(-4, whII), 19 LINE (-4, 45)-(-4, whII + 5), 22 LINE (-3, whII + 5)-(-3, whII), 19 LINE (-3, 45)-(-3, whII + 5), 22 LINE (-2, whII + 5)-(-2, whII), 19 LINE (-2, 45)-(-2, whII + 5), 22 LINE (-1, whII + 5)-(-1, whII), 19 LINE (-1, 45)-(-1, whII + 5), 22 LINE (0, whII + 5)-(0, whII), 19 LINE (0, 45)-(0, whII + 5), 22 LINE (1, whII + 5)-(1, whII), 19 LINE (1, 45)-(1, whII + 5), 22 LINE (2, whII + 5)-(2, whII), 19 LINE (2, 45)-(2, whII + 5), 22 LINE (3, whII + 5)-(3, whII), 19 LINE (3, 45)-(3, whII + 5), 22 LINE (4, whII + 5)-(4, whII), 19 LINE (4, 45)-(4, whII + 5), 22 LINE (5, whII + 5)-(5, whII), 19 LINE (5, 45)-(5, whII + 5), 22 NEXT END SUB SUB thirdwater FOR whIII = 35 TO 30 STEP -.25 slant = whIII - 25 LINE (-10, 50)-(-slant, whIII + 15), 28 LINE (-9, 50)-(-slant + 1, whIII + 15), 28 LINE (-8, 50)-(-slant + 2, whIII + 15), 28 LINE (-7, 50)-(-slant + 3, whIII + 15), 28 LINE (-6, 50)-(-slant + 4, whIII + 15), 28 LINE (-5, 50)-(-slant + 5, whIII + 15), 28 LINE (-4, 50)-(-slant + 6, whIII + 15), 28 LINE (-3, 50)-(-slant + 7, whIII + 15), 28 LINE (-2, 50)-(-slant + 8, whIII + 15), 28 LINE (-1, 50)-(-slant + 9, whIII + 15), 28 LINE (0, 50)-(-slant + 10, whIII + 15), 28 LINE (-5, whIII + 5)-(-5, whIII), 19 LINE (-5, 40)-(-5, whIII + 5), 22 LINE (-5, 45)-(-5, whIII + 10), 25 LINE (-4, whIII + 5)-(-4, whIII), 19 LINE (-4, 40)-(-4, whIII + 5), 22 LINE (-4, 45)-(-4, whIII + 10), 25 LINE (-3, whIII + 5)-(-3, whIII), 19 LINE (-3, 40)-(-3, whIII + 5), 22 LINE (-3, 45)-(-3, whIII + 10), 25 LINE (-2, whIII + 5)-(-2, whIII), 19 LINE (-2, 40)-(-2, whIII + 5), 22 LINE (-2, 45)-(-2, whIII + 10), 25 LINE (-1, whIII + 5)-(-1, whIII), 19 LINE (-1, 40)-(-1, whIII + 5), 22 LINE (-1, 45)-(-1, whIII + 10), 25 LINE (0, whIII + 5)-(0, whIII), 19 LINE (0, 40)-(0, whIII + 5), 22 LINE (0, 45)-(0, whIII + 10), 25 LINE (1, whIII + 5)-(1, whIII), 19 LINE (1, 40)-(1, whIII + 5), 22 LINE (1, 45)-(1, whIII + 10), 25 LINE (2, whIII + 5)-(2, whIII), 19 LINE (2, 40)-(2, whIII + 5), 22 LINE (2, 45)-(2, whIII + 10), 25 LINE (3, whIII + 5)-(3, whIII), 19 LINE (3, 40)-(3, whIII + 5), 22 LINE (3, 45)-(3, whIII + 10), 25 LINE (4, whIII + 5)-(4, whIII), 19 LINE (4, 40)-(4, whIII + 5), 22 LINE (4, 45)-(4, whIII + 10), 25 LINE (5, whIII + 5)-(5, whIII), 19 LINE (5, 40)-(5, whIII + 5), 22 LINE (5, 45)-(5, whIII + 10), 25 NEXT END SUB