I believe you can force c_move to use AABB collision.
As for the movement, I usually move the entity up before c_move and move it down afterward.
Something like this
Code:
my.z+=100;
c_move(something);
my.z-=100;