ReD_eYe heres what I done so far the line is what I want to do with the 3d box. but I can't see which way to go to connect it.
rem Balance Time demo
rem by HowDo
rem with thanks to Mento and ChipOne who got the clock ticking
rem and Wastisname for getting the balance leveling.
sync on : sync rate 20: draw to back
set text font "arial" : set text size 12
set text to bold
set text opaque
rem makes a bitmap to change to
create bitmap 1,640,480
rem puts the time into varable the_time$
the_time$=get time$()
rem put time() into intsecondtimer
intsecondtimer=timer()
rem puts us in bitmap 0
a=0 : b=0 :c=0
set current bitmap 0
rem shows the time
updatesecondsimage(get time$(),roll#,height#)
rem sets up where the line starts
a=480
b=480
rem sets where the sprite is on the line
roll#=340
rem set the start speed
speed# = 0.0
rem get rid of blue backdrop
backdrop off
rem make object
make object box 1,680,100,20
autocam off
set camera range 1,100000
position camera 0,0,-900
point camera 0,0,0
set point light 0,0,300,0
rem sync on
rem sync rate 50
make object sphere 2,5
make object cylinder 3,100
position object 3,0,200,0
scale object 3,100,500,100
glue object to limb 3,2,0
position camera 0,200,-1000
do
Center text 320,0,"TIMBER!!!!"
center text 320,20,"Use left+right arrow keys to rotate cylinder"
center text 320,40,"Use A Z and ' ? to move line up and down or up down together"
if rightkey()=1 then roll object right 2,5
if leftkey()=1 then roll object left 2,5
rem sync
rem loop
rem do
rem cls
rem looks for the key or keys you have pressed
if keystate(30)=1 then a=a-1
if keystate(44)=1 then a=a+1
if keystate(40)=1 then b=b-1
if keystate(53)=1 then b=b+1
rem stop's the line from begin draw out side the screen
if a<0 then a=0
if a>480 then a=480
if b<0 then b=0
if b>480 then b=480
rem line *************************************
line 0,a,640,b
rem ******************************************
rem 680.0 here is screen width in pixels (I think)
frac# = roll#/640.0
height# = frac#*b + (1.0 - frac#)*a
rem the bit that keeps the sprite on the line
if height#<a or height#>b then speed# = speed# - (a-b)*00000.1
if height#>a or height#<b then speed# = speed# + (b-a)*00000.1
rem update roll
roll# = roll# + speed#
rem make sure circle or sprite doesn't leave screen
if speed#<0 and roll#<20 then speed# = 0.0: roll# = 20
if speed#>0 and roll#>620 then speed# = 0.0: roll# = 620
rem see if it time to get a new time value and make it a sprite
if timer()>(intsecondtimer+1000)
rem if it is jump to function with value get Time$()
updatesecondsimage(get time$(),roll#,height#)
rem return from function and give intsecondtimer new timer() to check.
intsecondtimer=timer()
endif
text 0,0,str$(a)
rem circle roll#,height# - 20,20
rem PITCH OBJECT UP 1,a
rem rotate object 1,84,0,0
POINT OBJECT 1, a, b, 50
rem put the now time on the screen
sprite 1,roll#-text width(the_time$),height#-10,1
rem update everything
sync
loop
function updatesecondsimage(the_time$,roll#,height#)
rem change to bitmap 1
_alphavalue=255
set current bitmap 1
rem set text color
ink RGB(255,255,255),0
rem put the text on bitmap screen 1
text 0,0,the_time$+" "
rem grab the text
get image 1,0,0,text width(the_time$)+150,text height(the_time$),1
rem switch back to main screen
set current bitmap 0
rem put sprite on the screen
sprite 1,roll#-text width(the_time$),height#-10,1
rem as below
endfunction a
In Space No One can Hear You Scream! (When your comm Line is cut?)