SGN
dx = SGN(lx - x);
dy = SGN(ly - y);
xdiff = SGN(xdiff);
ydiff = SGN(ydiff);
pp->altitude += SGN(pp->new_altitude - pp->altitude);
xnew = SGN(Player.p_x) * MAX(fabs(Player.p_x), D_BEYOND);
ynew = SGN(Player.p_y) * MAX(fabs(Player.p_y), D_BEYOND);
xnew = Player.p_x + SGN(Player.p_x) * ROLL(50 * Circle, 250 * Circle);
ynew = Player.p_y + SGN(Player.p_y) * ROLL(50 * Circle, 250 * Circle);