'=========================================================================== ' Subject: ANSI FIRE Date: 11-05-96 (15:55) ' Author: Mattias Andersson Code: QB, QBasic, PDS ' Origin: phobia2@hotmail.com Packet: ANSI.ABC '=========================================================================== ' Ok, I'm back again... (Phobia that is...) ' This time I've made a flame in textmode... ' Errr... Comment or something... ' ' phobia2@hotmail.com ' ' Don't tell me how slow it is... I know how slow it is... ' QB is kinda limited when it comes to speed... ' And the source isn't in any way optimized... most of you can ' probably make a flame that 1000 times faster... ' But I was first! :-) ' And I don't wanna comment this one... to mezzy source... ' Just love it or hate it... ' ' See ya later! ' DECLARE SUB addcol () DECLARE SUB plot (x1!, y1!, c1!) x = 1 y = 20 n = 1 WIDTH 80, 50 CLS FOR a = 20 TO 40 plot a, 20, 9 plot a, 21, 9 NEXT a RANDOMIZE TIMER hej: n = n + 1 IF n = 500 THEN nn = 20 n = 0 newline: c2 = INT(RND * 3) IF c2 = 2 THEN c2 = 9 IF c2 = 3 THEN c2 = 1 IF c2 = 1 THEN c2 = 1 plot 1 + nn, 20, c2 plot 1 + nn, 21, c2 nn = nn + 1 IF nn = 40 THEN GOTO newslut GOTO newline newslut: END IF col = 0 coll = SCREEN(y, x, 1) teck = SCREEN(y, x) IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF coll = SCREEN(y + 1, x, 1) teck = SCREEN(y + 1, x) IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF coll = SCREEN(y, x + 1, 1) teck = SCREEN(y, x + 1) IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF coll = SCREEN(y + 1, x + 1, 1) teck = SCREEN(y + 1, x + 1) IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF IF y > 1 THEN coll = SCREEN(y - 1, x, 1) teck = SCREEN(y - 1, x) END IF IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF IF x > 1 THEN coll = SCREEN(y, x - 1, 1) IF x > 1 THEN teck = SCREEN(y, x - 1) IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF IF x > 1 THEN IF y > 1 THEN coll = SCREEN(y - 1, x - 1, 1) teck = SCREEN(y - 1, x - 1) END IF END IF IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF IF x > 1 THEN coll = SCREEN(y + 1, x - 1, 1) teck = SCREEN(y + 1, x - 1) END IF IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF IF y > 1 THEN coll = SCREEN(y - 1, x + 1, 1) teck = SCREEN(y - 1, x + 1) END IF IF coll = 15 THEN col = col + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col = col + 8 IF teck = 178 THEN col = col + 7 IF teck = 177 THEN col = col + 6 IF teck = 176 THEN col = col + 5 IF teck = 32 THEN col = col + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col = col + 3 IF teck = 177 THEN col = col + 2 IF teck = 176 THEN col = col + 1 IF teck = 32 THEN col = col + 0 END IF col = INT((col / 8) - .1) IF y > 1 THEN plot x, y - 1, col x = x + 1 IF x > 40 THEN x = 20 y = y - 1 IF y < 1 THEN y = 20 END IF SELECT CASE INKEY$ CASE CHR$(27) WIDTH 80, 25 CLS COLOR 7, 0 PRINT "Fire i textmode av Phobia 1996!" END END SELECT GOTO hej SUB addcol IF coll = 15 THEN col! = col! + 9 END IF IF coll = 78 THEN IF teck = 219 THEN col! = col! + 8 IF teck = 178 THEN col! = col! + 7 IF teck = 177 THEN col! = col! + 6 IF teck = 176 THEN col! = col! + 5 IF teck = 32 THEN col! = col! + 4 END IF IF coll = 4 THEN IF teck = 178 THEN col! = col! + 3 IF teck = 177 THEN col! = col! + 2 IF teck = 176 THEN col! = col! + 1 IF teck = 32 THEN col! = col! + 0 END IF END SUB SUB plot (x1, y1, c1) LOCATE y1, x1 IF c1 = 0 THEN COLOR 0, 0: PRINT " " IF c1 = 1 THEN COLOR 4, 0: PRINT "°" IF c1 = 2 THEN COLOR 4, 0: PRINT "±" IF c1 = 3 THEN COLOR 4, 0: PRINT "²" IF c1 = 4 THEN COLOR 14, 4: PRINT " " IF c1 = 5 THEN COLOR 14, 4: PRINT "°" IF c1 = 6 THEN COLOR 14, 4: PRINT "±" IF c1 = 7 THEN COLOR 14, 4: PRINT "²" IF c1 = 8 THEN COLOR 14, 4: PRINT "Û" IF c1 = 9 THEN COLOR 15, 0: PRINT "Û" END SUB