SYSTEMPOINTER TRUE
GLOBAL mx,my,b1,b2
TYPE tShot
x%;y% //position
speed#
delay = 500
FUNCTION NEW: speed = 1
self.speed = speed+RND(1)
self.x = mx
self.y = my
DIMPUSH _tShot[], self
ENDFUNCTION
FUNCTION UPDATE:
DEC self.y, self.speed
ENDFUNCTION
ENDTYPE
GLOBAL _tShot[] AS tShot
LOCAL timer%
WHILE TRUE
MOUSESTATE mx,my,b1,b2
IF b1 AND timer < GETTIMERALL()
LOCAL s AS tShot
s.NEW() // or s.NEW(2)
timer = GETTIMERALL()+s.delay
ENDIF
FOREACH s IN _tShot[]
s.UPDATE()
PRINT "!", s.x, s.y
IF s.y < -10 THEN DELETE s
NEXT
PRINT LEN(_tShot[]), 10,10
SHOWSCREEN
WEND
END