Once again, if you're using dbp...
Try looking up the INTERSECT OBJECT() command in the help file, it's excellent for this sort of thing, I always use it. I even made a small dll for single player collision with intersect object.
Basically you shoot a line from the character to a limb infront of the character and detect if anything goes inbetween those two points. If so and the distance is infront of you, you can then handle appropriately.
It's a fairly complex command to get used to if youre new to the coding world but basically:
INTERSECT OBJECT(Object, X, Y, Z, ToX, ToY, ToZ)
Object = The object you wish to detect intersection with (the map file in this case)
X = Starting x pos of ray
Y = Starting Y pos of ray
Z = Starting Z pos of ray
ToX, ToY, and ToZ are the same but give the coordinates of where the ray should travel to.
I recommend using a for/next loop to change the object being tested against.
Goodluck, if you need any help just post.
Current Projects: SHADE - Game Maker | Mecho - TGC Puzzle Entry | Halo Physics Engine | COLD - Polygonal Collision Detection