-#ifndef LIB_WARPZONE_ANGLETRANSFORM_H
-#define LIB_WARPZONE_ANGLETRANSFORM_H
+#pragma once
#ifndef POSITIVE_PITCH_IS_DOWN
#define POSITIVE_PITCH_IS_DOWN 1
#if POSITIVE_PITCH_IS_DOWN
#define fixedmakevectors makevectors
+ #define FIXED_MAKE_VECTORS MAKE_VECTORS
+ #define FIXED_MAKE_VECTORS_NEW MAKE_VECTORS_NEW
noref vector _fixedvectoangles;
#define fixedvectoangles(a) (_fixedvectoangles = vectoangles(a), _fixedvectoangles.x *= -1, _fixedvectoangles)
noref vector _fixedvectoangles2;
a.x = -a.x;
makevectors(a);
}
+ #define FIXED_MAKE_VECTORS(angles, forward, right, up) MACRO_BEGIN \
+ fixedmakevectors(angles); \
+ GET_V_GLOBALS(forward, right, up); \
+ CLEAR_V_GLOBALS(); \
+ MACRO_END
+ #define FIXED_MAKE_VECTORS_NEW(angles, forward, right, up) \
+ VECS_NEW(forward, right, up); \
+ FIXED_MAKE_VECTORS(angles, forward, right, up);
#define fixedvectoangles2 vectoangles2
#define fixedvectoangles vectoangles
#endif
// transformed = original * transform + postshift
vector AnglesTransform_Multiply_GetPostShift(vector sf0, vector st0, vector t1, vector st1);
vector AnglesTransform_PrePostShift_GetPostShift(vector sf, vector t, vector st);
-#endif