I'm not quite sure what you mean by "lock up" but the way I understand it, it's because when you for example try to push both the "up arrowkey" and the "left arrowkey" then it locks up. If that's the problem then it maybe would help using keystates for the controls instead. Like this:
rem mainloop
do
if keystate(200)=1
if valan.fcg = 0
valan.pos.z = valan.pos.z + 1
endif
valan.fcg = curveangle(0,valan.fcg,10)
else
endif
if keystate(208)=1
if valan.fcg = 180
valan.pos.z = valan.pos.z - 1
endif
valan.fcg = curveangle(180,valan.fcg,10)
else
endif
if keystate(203)=1
if valan.fcg = 270
valan.pos.x = valan.pos.x - 1
endif
valan.fcg = curveangle(270,valan.fcg,10)
else
endif
if keystate(205)=1
if valan.fcg = 90
valan.pos.x = valan.pos.x + 1
endif
valan.fcg = curveangle(90,valan.fcg,10)
else
endif
position object 1,valan.pos.x,0,valan.pos.z
rotate object 1,0,valan.fcg,0
sync
loop
rem endmainloop
It could also be a hardware limit on your keyboard
-The Nerd
PanzerGames
here
Free Particle Engine For dbpro :
here