If I move a sprite at a 45 degree angle and the sprite speed is 2 it'll increase by 2 pixels making it move exactly the same speed as it goes in horizontal and vertical at that speed. Using floats would slow it down vs integers. When the coordinates start at say 45.50,101.50 and you increase by only a fraction the sprite wouldn't actually move if the resulting coordinates were 45.75,101,75.
Lets have an integer vs float race and see who wins.
` Make a box
ink rgb(0,255,0),0
box 0,0,50,50
ink rgb(255,0,0),0
box 0,25,50,50
get image 1,0,0,50,50,1
` Set a timer
tim=timer()
` Set the starting y coordaintes
y=100
y#=200.00
repeat
` Show both sprites
sprite 1,x,y,1
sprite 2,x#,y#,1
` Identify the sprites
center text x+sprite width(1)/2,y-20,"INTEGER"
center text x#+sprite width(2)/2,y#-20,"FLOAT"
` Check if it's time to move the sprites
if timer()>tim+10
` Increase sprite 1 by 1 pixel
inc x
` Increase sprite 2 by .50 pixels
inc x#,.50
` Reset timer
tim=timer()
endif
until x#>screen width()