diff --git a/src/clientgame.m b/src/clientgame.m index e13c2af..e60a926 100644 --- a/src/clientgame.m +++ b/src/clientgame.m @@ -203,7 +203,7 @@ entinmap(DynamicEntity *d) float dx = (rnd(21) - 10) / 10.0f * i; // increasing distance float dy = (rnd(21) - 10) / 10.0f * i; OFVector3D old = d.origin; - d.origin = OFAddVector3D(d.origin, OFMakeVector3D(dx, dy, 0)); + d.origin = OFAddVectors3D(d.origin, OFMakeVector3D(dx, dy, 0)); if (collide(d, true, 0, 0)) return; d.origin = old; diff --git a/src/clients2c.m b/src/clients2c.m index b3b363e..1a3b1e7 100644 --- a/src/clients2c.m +++ b/src/clients2c.m @@ -47,11 +47,11 @@ updatepos(DynamicEntity *d) if (fx < r && fy < r && fz < rz && d.state != CS_DEAD) { if (fx < fy) // push aside - d.origin = OFAddVector3D(d.origin, + d.origin = OFAddVectors3D(d.origin, OFMakeVector3D( 0, (dy < 0 ? r - fy : -(r - fy)), 0)); else - d.origin = OFAddVector3D(d.origin, + d.origin = OFAddVectors3D(d.origin, OFMakeVector3D( (dx < 0 ? r - fx : -(r - fx)), 0, 0)); } diff --git a/src/cube.h b/src/cube.h index ded358f..9a82e3d 100644 --- a/src/cube.h +++ b/src/cube.h @@ -288,10 +288,10 @@ extern bool demoplayback; // simplistic vector ops #define dotprod(u, v) ((u).x * (v).x + (u).y * (v).y + (u).z * (v).z) -#define vmul(u, f) u = OFMultiplyVector3D(u, OFMakeVector3D(f, f, f)) -#define vdiv(u, f) u = OFDivideVector3D(u, OFMakeVector3D(f, f, f)) -#define vadd(u, v) u = OFAddVector3D(u, v) -#define vsub(u, v) u = OFSubtractVector3D(u, v) +#define vmul(u, f) u = OFMultiplyVector3D(u, f) +#define vdiv(u, f) u = OFMultiplyVector3D(u, (f) / 1.0f) +#define vadd(u, v) u = OFAddVectors3D(u, v) +#define vsub(u, v) u = OFSubtractVectors3D(u, v) #define vdist(d, v, e, s) \ OFVector3D v = s; \ vsub(v, e); \ diff --git a/src/physics.m b/src/physics.m index 538ba10..b09c099 100644 --- a/src/physics.m +++ b/src/physics.m @@ -208,13 +208,13 @@ collide(DynamicEntity *d, bool spawn, float drop, float rise) d.origin.x, d.origin.y, lo + d.eyeHeight); else if (space > -1.26f) // rise thru stair - d.origin = OFAddVector3D( + d.origin = OFAddVectors3D( d.origin, OFMakeVector3D(0, 0, rise)); else return false; } else // gravity - d.origin = OFSubtractVector3D(d.origin, + d.origin = OFSubtractVectors3D(d.origin, OFMakeVector3D( 0, 0, min(min(drop, space), headspace))); @@ -361,14 +361,14 @@ moveplayer4(DynamicEntity *pl, int moveres, bool local, int curtime) // discrete steps collision detection & sliding for (int i = 0; i < moveres; i++) { // try move forward - pl.origin = OFAddVector3D(pl.origin, + pl.origin = OFAddVectors3D(pl.origin, OFMakeVector3D(f * d.x, f * d.y, f * d.z)); if (collide(pl, false, drop, rise)) continue; // player stuck, try slide along y axis pl.blocked = true; - pl.origin = OFSubtractVector3D( + pl.origin = OFSubtractVectors3D( pl.origin, OFMakeVector3D(f * d.x, 0, 0)); if (collide(pl, false, drop, rise)) { d.x = 0; @@ -376,7 +376,7 @@ moveplayer4(DynamicEntity *pl, int moveres, bool local, int curtime) } // still stuck, try x axis - pl.origin = OFAddVector3D( + pl.origin = OFAddVectors3D( pl.origin, OFMakeVector3D(f * d.x, -f * d.y, 0)); if (collide(pl, false, drop, rise)) { d.y = 0; @@ -385,14 +385,14 @@ moveplayer4(DynamicEntity *pl, int moveres, bool local, int curtime) // try just dropping down pl.moving = false; - pl.origin = OFSubtractVector3D( + pl.origin = OFSubtractVectors3D( pl.origin, OFMakeVector3D(f * d.x, 0, 0)); if (collide(pl, false, drop, rise)) { d.y = d.x = 0; continue; } - pl.origin = OFSubtractVector3D( + pl.origin = OFSubtractVectors3D( pl.origin, OFMakeVector3D(0, 0, f * d.z)); break; }