This works for me:
Rem * Title : Show Limbs
Rem * Author : Scorpyo
Rem * Date : July 2003
rem ===============================================
set display mode 800,600,32
autocam off
set global collision off
backdrop on
color backdrop rgb(0,0,0)
background=rgb(0,0,0)
foreground=rgb(255,10,10)
ink foreground,backgound
set text opaque
set ambient light 80
sync on
hideflag=0
x#=0:h#=0:z#=0:a#=0
cx#=0:cy#=50:cz#=-300
t=0:l=0
rem dim limbs$(1000)
numberoflimbs=0
rem ************************************************
rem **********LOAD YOUR OBJECT HERE*****************
load object "myobject.x",1
set object 1,1,0,0,1,1,1
set object specular 1,0
rem fade object 1,200
position object 1,x#,h#,z#
rem *************************************************
rem *************************************************
gosub resetcam
rem hide object 1
rem Find out how many limbs the object has and hide them
perform checklist for object limbs 1
numberoflimbs=checklist quantity()
dim limbs$(numberoflimbs+1)
for n=1 to numberoflimbs
limbs$(n)=checklist string$(n)
next n
gosub printdata
do
if inkey$()="l"
if hideflag=0 then gosub hidelimbs
hide limb 1,l
gosub showlimb:wait 500
rem gosub printdata
endif
gosub printdata
gosub camera_controls
gosub update_camera
sync
loop
showlimb:
rem Scroll through object limbs
if l=numberoflimbs-1 then l=-1
l=l+1
rem Clear the screen
cls
rem Show each limb as it is viewed
show limb 1,l
return
hidelimbs:
cls
hideflag=1
for t=0 to numberoflimbs-1
hide limb 1,t
set cursor 0,0
print " "
set cursor 0,0
print t
next t
return
printdata:
rem Print information about object
set cursor 0,0
print "Limb Information"
print "----------------"
print "Total Limbs:";numberoflimbs
print "Limb Number:";l
print "Limb name:",limbs$(l+1)
print " "
print "limb offset x = ";limb offset x(1,l)
print "limb offset y = ";limb offset y(1,l)
print "limb offset z = ";limb offset z(1,l)
print "limb angle x = ";limb angle x(1,l)
print "limb angle y = ";limb angle y(1,l)
print "limb angle z = ";limb angle z(1,l)
print "limb position x = ";limb position x(1,l)
print "limb position y = ";limb position y(1,l)
print "limb position z = ";limb position z(1,l)
print "limb texture = ";limb texture(1,l)
print " "
print "Press L for next limb"
print
print "Move mouse for movement"
print "Mousewheel for distance"
print "z and x for camera height"
return
camera_controls:
if inkey$()="z" then camhgt=camhgt+1
if inkey$()="x" then camhgt=camhgt-1
mymousex=mousemovex()
if mymousex>0 then camrot=camrot+1
if mymousex<0 then camrot=camrot-1
mymousey=mousemovey()
if mymousey>0 then camlen=camlen+1
if mymousey<0 then camlen=camlen-1
mymousez=mousemovez()
if mymousez>0 then camdist=camdist+10
if mymousez<0 then camdist=camdist-10
return
rem camera update
update_camera:
rem Position camera to the back of the character
ca#=wrapvalue(a#+camrot)
cx#=newxvalue(x#,ca#,camdist)
cz#=newzvalue(z#,ca#,camdist)
cy#=0
position camera cx#,cy#+camhgt,cz#
yrotate camera ca#
rem Point camera at object
point camera x#,cy#+camhgt+camlen,z#
return
Resetcam:
set camera range 1,30000
camdist=-300
camhgt=120
camrot=0
camlen=0
cls
return
rem End the program
end