...
c_move(me,vector(speed.x,speed.y,0),nullvector,GLIDE);// so it can glide along walls
c_move(me,nullvector,vector(0,0,speed.y),0);// so it doesnt glide here and there in slopped floor
...
This way, you can use invisible block as stair...
Oh, BTW, why does c_trace doesnt detect invisible block you may ask? Just my opinion, I think it doesnt detect invisible blocks so it can be used by bullets, I guess...