rem Bitmap Showcase
rem Standard Setup Code for all examples
sync on : sync rate 60 : draw to back
set text font "arial" : set text size 20
set text to bold : set text transparent
rem Load backdrop
load bitmap "foliage.jpg"
get image 1,0,0,640,480
rem Produce Title
ink rgb(0,0,0),0 : center text (screen width()/2)+1,7,"BMP DDS DIB JPG PNG RLE TGA"
ink rgb(255,255,255),0 : center text screen width()/2,6,"BMP DDS DIB JPG PNG RLE TGA"
rem Create offscreen sprite
set sprite 1,0,1
set sprite alpha 1,128
offset sprite 1,(640-96)/4,(450-96)/4
size sprite 1,(640-96)/2,(450-96)/2
sprite 1,320,48+((450-96)/2),1
rem Create offscreen bitmap
create bitmap 2,640,480
set current bitmap 0
rem Main loop
do
rem Provide backdrop to visual screen
set current bitmap 2
sprite 2,320,240,1
sr#=350+(cos(a#)*10)
rotate sprite 2,sr#
size sprite 2,1000,800
offset sprite 2,512,384
set sprite alpha 2,100
set sprite 2,0,0
paste sprite 2,320,240
sprite 2,-2000,-2000,1
set current bitmap 0
copy bitmap 2,48,48,640-48,450-48,0,48,48,640-48,450-48
rem Rotate sprite
a#=wrapvalue(a#+2)
r#=350+(cos(a#)*10)
rotate sprite 1,r#
set sprite alpha 1,128
sprite 1,320,48+((450-96)/2),1
set sprite 1,0,0
s#=s#+0.5 : if s#>100 then s#=100
size sprite 1,((640-96)/2)*(s#/100.0),((450-96)/2)*(s#/100.0)
rem Show filename
ink rgb(255,255,255),0
center text 320,350,file$
rem Show Buttons
over=0
for but=1 to 3
for high=0 to 1
if high=0 then ink rgb(20,20,20),0 : bx=-1 : by=-1
if high=1 then ink rgb(100,200,100),0 : bx=0 : by=0
if high=1 and mousey()>420 and mousey()<460
if but=1 and abs(mousex()-170)<50 then ink rgb(255,255,255),0 : over=1
if but=2 and abs(mousex()-320)<50 then ink rgb(255,255,255),0 : over=2
if but=3 and abs(mousex()-470)<50 then ink rgb(255,255,255),0 : over=3
endif
if but=1 then but$="PREV"
if but=2 then but$="NEXT"
if but=3 then but$="EXIT"
center text 320+bx+((but-2)*150),420+by,but$
next high
next but
rem Controls
if mouseclick()=1
if once=0
once=1
if over=1 then pic=pic-1 : picload=1 : s#=0
if over=2 then pic=pic+1 : picload=1 : s#=0
if picload=1
picload=0
if pic<0 then pic=6
if pic>6 then pic=0
if pic=0 then file$="2DFiles\logo.bmp"
if pic=1 then file$="2DFiles\logo.dds"
if pic=2 then file$="2DFiles\logo.dib"
if pic=3 then file$="2DFiles\logo.jpg"
if pic=4 then file$="2DFiles\logo.png"
if pic=5 then file$="2DFiles\logo.rle"
if pic=6 then file$="2DFiles\logo.tga"
load bitmap file$,1
if bitmap exist(1)=1
get image 1,0,0,bitmap width(1),bitmap height(1),1
set current bitmap 0
delete bitmap 1
endif
endif
if over=3 then end
endif
else
once=0
endif
rem Update screen
sync
rem End loop
loop |