First of i did this in 15 min, as im on a hurry now.
sync on
sync rate 60
set image colorkey 255,0,255
load bitmap "spot.bmp",0
get image 1,0,0,19,18,1
get image 2,19,0,37,18,1
get image 3,37,0,54,18,1
global x# : x#=100
global y# : y#=100
global imagetimer#
do
cls
spot()
sync
loop
Function spot()
height#=4
speed#=0.4
inc imagetimer#,speed#
image=1
if (imagetimer#<2 and imagetimer#>1) or (imagetimer#>11 and imagetimer#<12) then image=2
if imagetimer#>3 and imagetimer#<10 then image=3
if imagetimer#>=4 and imagetimer#<=6 then dec y#,height#
if imagetimer#>=8 and imagetimer#<=10 then inc y#,height#
if imagetimer#>6 and imagetimer#<7 then dec y#,height#/2
if imagetimer#>7 and imagetimer#<8 then inc y#,height#/2
if imagetimer#>10 then imagetimer#=0
sprite 1,x#,y#,image
endfunction
Just reedited the code from above to make is a simple jumping spot.
Now, about those other questions...
1) Im have no idea what bluegui is, or what your refering to a gadget. If you could explain something more about it i may ( may not) now something about it.
2) The part were it says "Fill world array", loads the data statement to an array, wich will be used for the creation of the level. When you READ data statements, it starts from the very first data, wich is a 2. Then you must use the READ command again to grab the 2° data wich is a 2 (the one next to the first one), and so on. When it reaches the end of the line, then it goes to the next DATA. If thats what your not understanding, fine. However if its how i pasted the images using the paste, offset, and for loops, then re ask
.
3) Yes, actually i've done 2 programs that help me with a characters animation sheet, and a map editor, but this last i did just the basic, as i started another project, still i may help you.
4) Glad i can help, im not that experienced yet, but looking forward it
.