heres a set of function in this snippet that I have used to emulate the animated sprite commands, there's a little more work involved in it but it works well.
create a large image and run this demo and it will show my functions with DBP function and you can see them side by side.
might help, might not?
CTP
sync rate 0
sync on
dim sprite_index(100,3)
set sprite 1,0,0
set sprite 2,0,0
set_sprite_frames(1,4,14,"udeck.bmp",1)
set_sprite_frames(2,4,14,"udeck.bmp",100)
create animated sprite 3,"udeck.bmp",4,14,3
do
cls
play sprite 3,1,56,500
center text 100,80,"Dark Basics"
sprite 3,100,100,1
center text 300,80,"Mine"
animated_sprite(2,300,100)
`animated_sprite(2,200,100)
`if mouseclick() then advance_frame(1,1,56,200)
advance_frame(2,1,56,500)
sync
loop
function animated_sprite(sprite_number,sprite_x,sprite_y)
sprite sprite_number,sprite_x,sprite_y,sprite_index(sprite_number,2)
endfunction
function advance_frame(sprite_number,start_frame,last_frame,delay)
if sprite_index(sprite_number,3)+delay < timer()
sprite_index(sprite_number,3) = timer()
inc sprite_index(sprite_number,2),1
if sprite_index(sprite_number,2) > sprite_index(sprite_number,1)+last_frame-1
sprite_index(sprite_number,2) = sprite_index(sprite_number,1)+start_frame-1
endif
endif
endfunction
function set_sprite_frames(sprite_number,arcoss,down,image$,starting_image_number)
sprite_index(sprite_number,1) = starting_image_number
sprite_index(sprite_number,2) = starting_image_number
sprite_index(sprite_number,3) = timer()
load bitmap image$,1
set current bitmap 1
imageNo = starting_image_number
width = (bitmap width(1)/arcoss)
height = (bitmap height(1)/down)
for y=0 to down-1
for x=0 to arcoss-1
get image imageNo, x*width,y*height,((x+1)*width)-1,((y+1)*height)-1
inc imageNo
next x
next y
set current bitmap 0
delete bitmap 1
endfunction