No screenshot appearing, but I get the idea. I'm working on something with a similar requirement.
Use the function: INTERSECT OBJECT()
This looks for collision with a specified object from a given starting point (ie, your player's position) in a given direction. If you specify point 2 as 10 units straight down from your player's position, the command doesn't stop there, it'll look for a collision with the object at any distance, straight down.
So how do you know if your player's standing on a rock, as opposed to jumping or falling through the air? If the collision distance returned by this function is equal to (or less than) the distance from the origin of your player model to his/her/its feet, then you're there.
To determine he slope, look at the collision distance from two or three test points around the area of your player's feet. Then form a triangle with the difference between the (in this case two) measurements.
A_____ B
|........../
|......../
|....../
|..../
|../
|/
C
Leg AC of the triangle is the difference between the two measurements. Leg AB is the distance between your two test points. Angle A is your slope. So, to calculate angle A use the trig function Tangent: Angle_B# = TAN(Opposite/Adjacent) ...or... Angle_B# = TAN(Leg_AC / Leg_AB)
This simple formula is for 2D. The 3D formula is somewhat more complicated. I haven't got it at hand, so if it's a 3D game, let me know and I'll post that for you.
Good luck!