'===========================================================================
' Subject: SILLY GAME                         Date: 04-14-96 (14:33)       
'  Author: Andrew Jones                       Code: QB, QBasic, PDS        
'  Origin: FidoNet QUIK_BAS Echo            Packet: DEMOS.ABC
'===========================================================================
'This is a silly game I wrote awhile back.  There are 20 or so big dots
'moving around and you are the one that is NOT their color.  All you do is
'avoid them, each time you touch them your score is reset.  Whoop.  It'd
'prolly be more fun on a Calculator written in Z80 asm, but oh well.

DEFINT A-Z
die = 0
xx = 0
yy = 0
RANDOMIZE TIMER
SCREEN 13
DIM bx(20)
DIM by(20)
DIM bmy(20)
DIM bmx(20)
d = 0
my = 1
DO
LINE (xx, yy)-(xx + 2, yy + 2), 0, BF
l$ = INKEY$
SELECT CASE l$
CASE "4"
mx = -1
CASE "6"
mx = 1
CASE "8"
my = -1
CASE "2"
my = 1
END SELECT
xx = xx + mx
yy = yy + my
IF xx > 319 THEN xx = 319
IF xx < 0 THEN xx = 0
IF yy < 0 THEN yy = 0
IF yy > 199 THEN yy = 199
LINE (xx, yy)-(xx + 2, yy + 2), 9, BF
FOR t = 0 TO 20
IF bx(t) = 0 AND by(t) = 0 THEN
bx(t) = INT(RND * 320)
by(t) = INT(RND * 200)
bmx(t) = INT(RND * 5) + 2
IF INT(RND * 2) + 1 = 1 THEN bmx(t) = -bmx(t)
IF INT(RND * 2) + 1 = 1 THEN bmy(t) = 1 ELSE bmy(t) = -1
END IF
LINE (bx(t), by(t))-(bx(t) + 2, by(t) + 2), 0, BF
bx(t) = bx(t) + bmx(t)
by(t) = by(t) + bmy(t)
IF bx(t) > 319 THEN bmx(t) = -bmx(t)
IF bx(t) < 0 THEN bmx(t) = ABS(bmx(t))
IF by(t) > 199 THEN bmy(t) = -bmy(t)
IF by(t) < 0 THEN bmy(t) = ABS(bmy(t))
IF POINT(bx(t), by(t)) = 9 THEN die = 1
IF POINT(bx(t) + 1, by(t)) = 9 THEN die = 1
IF POINT(bx(t) + 1, by(t) + 1) = 9 THEN die = 1
IF POINT(bx(t), by(t) + 1) = 9 THEN die = 1
IF die = 1 THEN
score = 0
die = 0
x = 0
y = 0
END IF
LINE (bx(t), by(t))-(bx(t) + 2, by(t) + 2), 2, BF
NEXT
LINE (0, 195)-(score \ 4, 199), 4, BF
LINE (319, 195)-(score \ 4, 199), 0, BF
score = score + 1
LOOP UNTIL score = 319 * 4
CLS
END
