don`t cls every loop, that defeats the point of using sprites
don`t move the bullet in a loop, set a flag (like bullet_running=1) and then every loop do
if bullet_running=1 then inc g
then check if the bullet is offscreen with
if g=240 then bullet_running=0:g=1:hide sprite 32
that will reset the bullet when it gets offscreen, the spaceship moveing n a sluggish way is just the speed you move it, increas the amount of pixels per loop and it will run faster, cheers.
Mentor.
System spec : Pentium 3.0Ghz, 512MB DDR, 2x160Gb HD (using icewave hd coolers ), DVD RW/CD RW (all modes), multimedia front panel, 6 way surround sound, ATI radeon 9800Pro 128mb.