The solution is in the "room" demo.
The collision is build on this principe:
xpos= the old position of the object x
zpos= the old position of the object z
if you want create a matrix you need the ypos (up /down)
then you set the collision of the matrix / room to siliding
<<set object collision to siliding?>> (maybe look in the index )
and the finaly in the loop:
if object collision(matrix,the object)=1 then you must set the current position of the object to the old one.
maybe like that
xpos=old
ypos=old2
zpos=old3
xposnew=currentpos
yposnew=currentpos2
zposnew=currentpos3
if object collision(matrix,object)=1
currentpos=old
currentpos2=old2
currentpos3=old3
endif
then you will need a subrountine which checks the old position (ypos xpos zpos)
You only must watch in the room example.
I hope this is right
[href]

[/href]