Is this any good.
set display mode 1280,1024,32
Sync On
sync rate 100
hide mouse
color backdrop 0
phy start
phy make material 1,"player"
phy set material restitution 1, 0.0
phy set material dynamic friction 1, 0.1
phy set material static friction 1, 0.1
phy build material 1
Make Object Cube 1 , 1
make matrix 1,100,100,10,10
position matrix 1,0,-10,0
make object box 2,0.5,0.5,10
set object cull 2,0
position object 2,object position x(1)+1,object position y(1)-1.1,object position z(1)+1
phy make rigid body dynamic box 2,1:rem moved
PHY SET RIGID BODY KINEMATIC 2,1 :rem added
phy set rigid body mass 2,100
`lock object on 2
make object box 3,10,2,10
position object 3,0,-2,0
phy make rigid body static box 3, 1
make object cube 500,0.5
position object 500,2,10,2
phy make rigid body dynamic box 500
phy set rigid body mass 500,3
make object sphere 301,3
phy make rigid body dynamic sphere 301,1
position object 301,0,20,0
phy set rigid body mass 301,100
glue object to limb 2,301,0
x#=0
y#=0
z#=0
bounce = 6
Angle = 0
Angle2 = 0
Angle3 = 0
add = 5
Do
phy set rigid body linear damping 2,8
phy set rigid body position 2,object position x(1)+1,object position y(1)-1.1,object position z(1)+1
phy set rigid body linear damping 301,8
position object 301,object position x(1),object position y(1),object position z(1)
rx#=object position x(1)
ry#=object position y(1)
rz#=object position z(1)
phy set rigid body position 301, rx#, ry#, rz#
text 0,0,"x : " + str$(object angle x(2)) + " / y : " + str$(object angle y(2)) + " / z : " + str$(object angle z(2))
text 0,10,"polygons: "+str$(statistic(1))
text 0,20,"fps: "+str$(screen fps())
position object 1,object position x(1),y#,object position z(1)
Inc Angle , 5
Inc Angle2, rnd(add)
Inc Angle3, rnd(add)
if mouseclick()=1
anglex#=object angle x(2)+(mousemovey()/2.5)
angley#=object angle y(2)+(mousemovex()/2.5)
if anglex#<=-33.6 then anglex#=-33.6
if anglex#>=20 then anglex#=20
if angley#>=26 then angley#=26
if angley#<=-52 then angley#=-52
rotate object 2,anglex#,angley#,0
else
rotate object 1,object angle x(1)+(mousemovey()/2.5),object angle y(1)+(mousemovex()/2.5),0
rotate camera 0,object angle x(1),object angle y(1)+sin(Angle2),0-sin(Angle3)
endif
if keystate(17)=1
move object 1,0.2
bounce = 1
add = 5
else
add = 0
bounce = 6
endif
if keystate(31)=1 then move object 1,-0.2
if keystate(32)=1 then move object right 1,0.2
if keystate(30)=1 then move object left 1,0.2
y# = 0+sin(angle)/bounce
position camera 0,object position x(1),object position y(1),object position z(1)
phy update
Sync
Loop
Dark Physics makes any hot drink go cold.