c_move (my, vector(7 * time_step, 0, 0), nullvector, GLIDE);
trace1 = c_trace(vector(my.x,my.y,my.z), vector(my.x+20,my.y,my.z), IGNORE_CONTENT);
trace2 = c_trace(vector(my.x,my.y,my.z), vector(my.x+20,my.y,my.z+100), IGNORE_CONTENT);
if(trace1 > 0 && trace2 = 0)
my.z += 100;
//keeping entity on ground
c_trace(my.x,vector(my.x,my.y,my.z-1000),IGNORE_ME|IGNORE_SPRITES|IGNORE_CONTENT);
my.z = hit.z - my.min_z;