It worked! I feel so retarded now. I tried everything except from the simplest and most evident solution! Thanks a ton.
This section allows you to view all posts made by this member. Note that you can only see posts made in areas you currently have access to.
Show posts Menu
x_old = Cam_x//store current x camera value
z_old = Cam_z//store current z camera value
IF X_COLLISION(0,0,sz/4,Cam_x,sz/2,Cam_z)//check if the camera collides with any of the walls. walls have id 0
Cam_z = z_old
Cam_x = x_old
collision = 1
ELSE
collision = 0
ENDIF
IF KEY(17)// forward 'w'
INC Cam_z,qSIN(phi_xz)*Cam_Speed
INC Cam_x,qCOS(phi_xz)*Cam_Speed
ENDIF
IF KEY(31)// back 's'
DEC Cam_z,qSIN(phi_xz)*Cam_Speed
DEC Cam_x,qCOS(phi_xz)*Cam_Speed
ENDIF
IF KEY(30)// left 'a'
INC Cam_z,qSIN(phi_xz-90)*(Cam_Speed-0.2)
INC Cam_x,qCOS(phi_xz-90)*(Cam_Speed-0.2)
ENDIF
IF KEY(32)// right 'd'
INC Cam_z,qSIN(phi_xz+90)*(Cam_Speed-0.2)
INC Cam_x,qCOS(phi_xz+90)*(Cam_Speed-0.2)
ENDIF