Probably a load of rubbish but try:
d#=50 : ` distance from house to camera
s#=0.5 : ` step size
h=100 : ` object number for hidden object
sync on : sync rate 0 : autocam off
make matrix 1,200,200,32,32
make object cube 1,10 : position object 1,100,5,100
make object cube 2,6 : position object 2,100,10,100 : rotate object 2,45,0,0
make object cube h,1 : hide object h : offset limb h,0,0,0,-d#
position object h,object position x(1),object position y(1),object position z(1)
move object h,-d#
do
xa#=object angle x(h)
if downkey() and (xa# < 90 or (xa# > (271 + s#)))
move object h,d#
xrotate object h,wrapvalue(xa#-s#)
move object h,-d#
endif
if upkey() and ((xa# < (89.0-s#) and xa# >= 0) or xa# > 270)
move object h,d#
xrotate object h,wrapvalue(xa#+s#)
move object h,-d#
endif
if rightkey()
move object h,d#
yrotate object h,wrapvalue(object angle y(h)-s#)
move object h,-d#
endif
if leftkey()
move object h,d#
yrotate object h,wrapvalue(object angle y(h)+s#)
move object h,-d#
endif
position camera object position x(h),object position y(h),object position z(h)
point camera object position x(1),object position y(1),object position z(1)
sync
loop
If your mansion house needs haunting, just call Rentaghost!