'=========================================================================== ' Subject: TEXT LIGHT Date: 03-02-97 (06:56) ' Author: Nick Kochakian Code: QB, QBasic, PDS ' Origin: NickK@worldnet.att.net Packet: TEXT.ABC '=========================================================================== DECLARE SUB txtlight (x!, y!, delay!, txt$) 'Text light ' '3/2/97 '1997 By: - Nick Kochakian - ' 'This program should look something like that thing on the top of the screen 'of the advanced ABC reader. ' 'My e-mail: nickK@worldnet.att.net ' 'If you decide to use this program in one of yours please give me credit! ' 'Have fun! :) CLS txt$ = " Text Light 1997 By: - Nick Kochakian :) " 'Your message should be 'no longer that 80 'characters x = 1 y = 1 delay = 7000 CALL txtlight(x, y, delay, txt$) SUB txtlight (x, y, delay, txt$) y1 = y 'Rear y2 = y + 1 'Middle y3 = y + 2 'Front y4 = y + 3 y5 = y + 4 y6 = y1 - 1 y7 = y5 + 1 dirs = 1 txtlen = LEN(txt$) DO 'LOCATE x, y LOCATE x, y1 COLOR 8 PRINT MID$(txt$, y1, 1); LOCATE x, y2 COLOR 7 PRINT MID$(txt$, y2, 1); LOCATE x, y3 COLOR 15 PRINT MID$(txt$, y3, 1); LOCATE x, y4 COLOR 7 PRINT MID$(txt$, y4, 1); LOCATE x, y5 COLOR 8 PRINT MID$(txt$, y5, 1); IF dirs = 1 THEN y5 = y5 + 1 y = y + 1 y4 = y4 + 1 y3 = y3 + 1 y2 = y2 + 1 y1 = y1 + 1 END IF IF dirs = 2 THEN y1 = y1 - 1 y = y - 1 y5 = y5 - 1 y4 = y4 - 1 y3 = y3 - 1 y2 = y2 - 1 END IF IF y5 > txtlen THEN dirs = 2 IF y1 < x + 1 THEN dirs = 1 FOR i = 1 TO delay NEXT i FOR i = 1 TO delay NEXT i IF dirs = 1 THEN y6 = y1 - 1 IF dirs = 1 THEN IF y6 < 1 THEN y6 = y - 1 ELSE LOCATE x, y6: PRINT " " IF dirs = 2 THEN y7 = y5 + 1 IF dirs = 2 THEN IF y7 > 80 THEN y7 = y5 + 1 ELSE LOCATE x, y7: PRINT " " LOOP UNTIL INKEY$ <> "" END SUB