I have been busy, now I'm not... Well actually I am. So, without further ado, I present to you my improved particles screensaver that
DOESN'T REQUIRE ANY MEDIA DOWNLOAD!!! here is the code which I have now reduced to 5 lines:
SET DISPLAY MODE 1024,768,32 : HIDE MOUSE : BACKDROP OFF : SYNC ON : SYNC RATE 60 : CREATE BITMAP 1,16,16 : x1=7 : x2=8 : REPEAT : LINE 0,y,15,y : INC y : IF x1=0 : flag=1 : ENDIF : IF flag=0 : DEC x1 : INC x2 : ENDIF : IF flag=1 : INC x1 : DEC x2 : ENDIF : UNTIL y=15 : GET IMAGE 1,0,0,15,15 : CLS
SET CURRENT BITMAP 0 : MAKE PARTICLES 1,1,10,20 : POSITION PARTICLES 1,0,0,-20 : ROTATE PARTICLES 1,90,0,0 : SET PARTICLE VELOCITY 1,10 : SET PARTICLE GRAVITY 1,20 : SET PARTICLE EMISSIONS 1,1 : ROTATE CAMERA 12,0,0 : t=1 : colour1=255 : colour2=1 : colour3=1 : xchange=1 : xmove=1 : ymove=1 : xmax=15 : xpos#=0 : ypos#=0 : REPEAT : IF colour1=255 AND colour2<255 AND colour3=1 : INC colour2,1 : ENDIF : IF colour1>1 AND colour2=255 AND colour3=1 : DEC colour1,1 : ENDIF
IF colour1=1 AND colour2=255 AND colour3<255 : INC colour3,1 : ENDIF : IF colour1=1 AND colour2=>1 AND colour3=255 : DEC colour2,1 : ENDIF : IF colour1<255 AND colour2=1 AND colour3=255 : INC colour1,1 : ENDIF : IF colour1=255 AND colour2=1 AND colour3>1 : DEC colour3,1 : ENDIF : IF xpos#<(-xmax) : xmove=1 : ENDIF : IF xpos#>xmax : xmove=2 : ENDIF : IF ypos#<(-10) : ymove=1 : ENDIF : IF ypos#>10 : ymove=2 : ENDIF : IF xmove=1
INC xpos#,0.125 : ENDIF : IF xmove=2 : DEC xpos#,0.125 : ENDIF : IF ymove=1 : INC ypos#,0.125 : ENDIF : IF ymove=2 : DEC ypos#,0.125 : ENDIF : COlOR PARTICLES 1,colour1,colour2,colour3 : POSITION PARTICLES 1,xpos#,ypos#,-2 : POSITION PARTICLE EMISSIONS 1,xpos#,ypos#,0 : SYNC : INC t : IF t=2000 : CLS : t=1 : IF xchange=1 AND xmax=20 : xchange=2 : ENDIF : IF xchange=2 AND xmax=10 : xchange=1 : ENDIF
IF xchange=1 AND xmax<20 : INC xmax : ENDIF : IF xchange=2 AND xmax>10 : DEC xmax : ENDIF : ENDIF : UNTIL MOUSEMOVEX()=1 OR MOUSEMOVEX()=-1 OR MOUSEMOVEY()=1 OR MOUSEMOVEY()=-1 OR MOUSECLICK()>0 : DELETE IMAGE 1 : DELETE PARTICLES 1
and if you are lazy then here is a faster version. By the way, my brother and I watched this for a long time and we never saw it repeat itself. Anyway, here is the fast version:
SET DISPLAY MODE 1024,768,32 : HIDE MOUSE : BACKDROP OFF : SYNC ON : SYNC RATE 0 : CREATE BITMAP 1,16,16 : x1=7 : x2=8 : REPEAT : LINE 0,y,15,y : INC y : IF x1=0 : flag=1 : ENDIF : IF flag=0 : DEC x1 : INC x2 : ENDIF : IF flag=1 : INC x1 : DEC x2 : ENDIF : UNTIL y=15 : GET IMAGE 1,0,0,15,15 : CLS
SET CURRENT BITMAP 0 : MAKE PARTICLES 1,1,10,20 : POSITION PARTICLES 1,0,0,-20 : ROTATE PARTICLES 1,90,0,0 : SET PARTICLE VELOCITY 1,10 : SET PARTICLE GRAVITY 1,20 : SET PARTICLE EMISSIONS 1,1 : ROTATE CAMERA 12,0,0 : t=1 : colour1=255 : colour2=1 : colour3=1 : xchange=1 : xmove=1 : ymove=1 : xmax=15 : xpos#=0 : ypos#=0 : REPEAT : IF colour1=255 AND colour2<255 AND colour3=1 : INC colour2,1 : ENDIF : IF colour1>1 AND colour2=255 AND colour3=1 : DEC colour1,1 : ENDIF
IF colour1=1 AND colour2=255 AND colour3<255 : INC colour3,1 : ENDIF : IF colour1=1 AND colour2=>1 AND colour3=255 : DEC colour2,1 : ENDIF : IF colour1<255 AND colour2=1 AND colour3=255 : INC colour1,1 : ENDIF : IF colour1=255 AND colour2=1 AND colour3>1 : DEC colour3,1 : ENDIF : IF xpos#<(-xmax) : xmove=1 : ENDIF : IF xpos#>xmax : xmove=2 : ENDIF : IF ypos#<(-10) : ymove=1 : ENDIF : IF ypos#>10 : ymove=2 : ENDIF : IF xmove=1
INC xpos#,0.125 : ENDIF : IF xmove=2 : DEC xpos#,0.125 : ENDIF : IF ymove=1 : INC ypos#,0.125 : ENDIF : IF ymove=2 : DEC ypos#,0.125 : ENDIF : COlOR PARTICLES 1,colour1,colour2,colour3 : POSITION PARTICLES 1,xpos#,ypos#,-2 : POSITION PARTICLE EMISSIONS 1,xpos#,ypos#,0 : SYNC : INC t : IF t=2000 : CLS : t=1 : IF xchange=1 AND xmax=20 : xchange=2 : ENDIF : IF xchange=2 AND xmax=10 : xchange=1 : ENDIF
IF xchange=1 AND xmax<20 : INC xmax : ENDIF : IF xchange=2 AND xmax>10 : DEC xmax : ENDIF : ENDIF : UNTIL MOUSEMOVEX()=1 OR MOUSEMOVEX()=-1 OR MOUSEMOVEY()=1 OR MOUSEMOVEY()=-1 OR MOUSECLICK()>0 : DELETE IMAGE 1 : DELETE PARTICLES 1
yes, I know all I changed was the sync rate!
and if you want the uncompressed, readable code you can find it at the top of this thread. The code that I added for the media is:
CREATE BITMAP 1,16,16
x1=7
x2=8
REPEAT
LINE 0,y,15,y
INC y
IF x1=0 THEN flag=1
IF flag=0 THEN DEC x1 : INC x2
IF flag=1 THEN INC x1 : DEC x2
UNTIL y=15
GET IMAGE 1,0,0,15,15
CLS
SET CURRENT BITMAP 0
and there you have it! Now I realise that not many people like to comment on what they see here... For example I have over 600 views for this but I only have 1 proper comment!!! The rest is either by me or by people complaining that they don't want to download or something lame like that. Please comment becuase I want to know your opinions on this. Even if you think it's stupid, say so!
In the unlikely event that you find yourself thinking "hmm... This is a really cool screen saver, I wish I could have it on
MY computer" I will attach, to this thread, an install file which I quickly created which will do just that! However, it only works for windows xp which is what I have at home and is what I assume to be pretty standard. The reason is because on other versions, the screensaver folder is located elsewhere on the harddisk. Extract the install file to your desktop and run it from there, not from the zip file. Hope you enjoy this and please...
DROP ME A COMMENT!!!
Happy, always happy!