Why does this not work?
Quote: "
objx# keeps becoming equal to 2000 when mouse is clicked. Not sure why?
"
Full code:
*Should: Pick the screen for an object when mouse is not clicked, and get its original position(and 3D vectors). When mouse is clicked, it should ise its original position to calculate a new position by the mouse's movement, and position the object cpatured before the mouse click from its original position(objx#..) to its new position.. Or something like that
`Global cursorobj,objx#,objy#,objz#,pickdiffx#,pickdiffy#,pickdiffz#,pickfromx#,pickfromy#,pickfromz#
`Global pickdistance#,picktox#,picktoy#,picktoz#,grid,tpickdiffx#,tpickdiffy#,tpickdiffz#
mclick = Mouseclick()
If mclick = 0 Then pickmode=0 : cursorobj = 0
//No mouse clcik
Mouseclic = Mouseclick()
If Mouseclic = 0
//By putting this after mousclick = 0 then enabling drag 1st picked object
cursorobj = Pick Object( Mousex() , Mousey() , 1000 , 8000 )
//Get the initial pick value
If cursorobj > 0
pickmode = 1
pickdistance# = Get Pick Distance()
pickfromx# = Get Pick Vector X()
pickfromy# = Get Pick Vector Y()
pickfromz# = Get Pick Vector Z()
objx# = Object Position X( cursorobj )
objy# = Object Position Y( cursorobj )
objz# = Object Position Z( cursorobj )
Else
pickdiffx#=mousemovey() : pickdiffx#=0
pickdiffy#=mousemovex() : pickdiffy#=0
Endif
Endif
//Mouse clicked
If pickmode=1
If cursorobj > 0
//New pick value
pick screen mousex(),mousey(),pickdistance#
picktox# = Get Pick Vector X()
picktoy# = Get Pick Vector Y()
picktoz# = Get Pick Vector Z()
pickdiffx#=picktox#-pickfromx#
pickdiffy#=picktoy#-pickfromy#
pickdiffz#=picktoz#-pickfromz#
grid=1
If grid=1
pickdiffx#=int(pickdiffx#/5)*5
pickdiffy#=int(pickdiffy#/5)*5
pickdiffz#=int(pickdiffz#/5)*5
Endif
positionobjectpro( cursorobj,objx#+pickdiffx#,objy#+pickdiffy#,objz#+pickdiffz# )
Endif
Endif
Need some help to make this work.