alot of progress since last time I saw your work (assuming you're the same dbnewbie i'm thinking of, therse several ppl with that kind of name now)
if you have dbc enhanced, you should use sparky's dll which has raycasting. it's a really quick function to call and it can be used for bullets, sliding collision, event triggering, and loads more
and what did u code the scroll wheel to do. i spun it and the camera did z axis barrel rolls. it seems like you're rotating the camera to the mosues x, y, and z axis , the Z being the scroll wheel. it's much more suited to guns.
and u could have almost all you're collision done already if you'd use the .x level demo that sports a very nice algorithm that uses raycasting to check for sliding collisions. it feels alot like the first half life's movement. as for your gravity, rather than
if key is pressed then go up
, you should do more like
if space is pressed and they arent jumping, they are jumping and gravity = -8
position camera camra position x, camera position y - gravity, camera position z
if they are jumping, gravity = gravity + 1 and if they hit the ground then gravity is 0
so basically, they go up and start to go down, then descend till they hit the ground
i've a source code sample on my site with this,
http://www.verydevastating.com/jumpcrouch.zip that is just the x level collision demo with tweaks, and I added jumping and crouching to it. you ought to take a peek at the jumping code. it basically does what the pseeudo code i gaev u would do, and it also checks down and turns jump off so if they step on something higher wile jumping, they wont "ramp" off of it. whoo, quite a post. good luck!
---Jeff
Your signature has been erased by a mod because it's larger than 600x120...