I made two screensavors. The first has two colors fighting for the screen.
REM Made by Cave Man
sync on
set display mode 1024,768,32
hide mouse
x1 = 400
y1 = 350
x2 = 400
y2 = 350
do
lock pixels
for i = 1 to 20
x1 = x1 + rnd(2) - 1
y1 = y1 + rnd(2) - 1
dot x1, y1,RGB(0,0,255)`rnd(255),rnd(255),rnd(255))
x2 = x2 + rnd(2) - 1
y2 = y2 + rnd(2) - 1
dot x2, y2,RGB(255,0,0)`rnd(255),rnd(255),rnd(255))
next i
unlock pixels
if y1 > screen height() then y1 = screen height()
if x1 > screen width() then x1 = screen width()
if y1 < 0 then y1 = 0
if x1 < 0 then x1= 0
if y2 > screen height() then y2 = screen height()
if x2 > screen width() then x2 = screen width()
if y2 < 0 then y2 = 0
if x2 < 0 then x2 = 0
if abs(mousemovex()) > 10 or abs(mousemovey()) > 10 or mouseclick() <> 0 or inkey$() <> ""
end
endif
sync
loop
Second, a bunch of lines going in circles
REM Made by Cave Man
randomize timer()
sync on
type place
ang as float
dist as integer
dire as float
color as dword
endtype
dim TH(-1) as place
for i = 0 to 28
if i MOD 2 = 0
add(i * 8, rnd(259),-rnd(1)-1)
else
add(i * 8, rnd(259),rnd(1)+1)
endif
next
time = timer()
MTrans(22,1)
do
if timer() - time > 8
`cls 0
paste image 1,0,0,1
lock pixels
for i = 1 to array count(TH())
xp = (sin(TH(i).ang)) * TH(i).dist + screen width() / 2
yp = -(cos(TH(i).ang)) * TH(i).dist+screen height()/2
pxp = ((sin(TH(i - 1).ang)) * TH(i - 1).dist) + screen width() / 2
pyp = (-(cos(TH(i - 1).ang)) * TH(i - 1).dist)+screen height()/2
`inc TH(i).color,rnd(20)+1
TH(i).color = rgb(rgbr(TH(i).color)+rnd(8) Mod 255,rgbg(TH(i).color)+rnd(8) Mod 255,rgbb(TH(i).color)+rnd(8) Mod 255)
ink TH(i).color, 0
line pxp,pyp,xp,yp
next
unlock pixels
for i = 0 to array count(TH())
TH(i).ang = TH(i).ang + TH(i).dire
next
time = timer()
sync
endif
loop
FUNCTION add(dist as integer, ang as float, dire as float)
array insert at top TH()
TH(0).ang = ang
TH(0).dire = dire
TH(0).dist = dist
TH(0).color = RGB(rnd(255),rnd(255),rnd(255))
endfunction
FUNCTION MTrans(alpha as byte,I_N as integer)
make memblock 1,screen width() * screen height() * 4
write memblock dword 1, 0,screen width()
write memblock dword 1, 4,screen height()
write memblock dword 1, 8,32
for i = 12 to get memblock size(1)-1 step 4
write memblock byte 1,i + 3,alpha
next
make image from memblock I_N,1
delete memblock 1
endfunction
Tell me what you think.