#else
#define TC(T, sym) MACRO_BEGIN \
if (!is_##T(sym)) { \
- LOG_WARNINGF("Type check failed: " #sym " :: " #T); \
+ LOG_WARNF("Type check failed: " #sym " :: " #T); \
isnt_##T(sym); \
} \
MACRO_END
#endif
-#define is_float(this) (true || ftoe(this))
-#define isnt_float(this)
-#define is_vector(this) (true || vtos(this))
-#define isnt_vector(this)
-#define is_string(this) (true || stof(this))
-#define isnt_string(this)
-#define is_entity(this) (true || etof(this))
-#define isnt_entity(this)
-bool is_int(float this) { return this == floor(this); }
-void isnt_int(float this) { print(ftos(this)); }
-bool is_bool(float this) { return this == true || this == false; }
-void isnt_bool(float this) { print(ftos(this)); }
+#if !(NDEBUG)
+ #define is_float(this) (true || ftoe(this))
+ #define isnt_float(this)
+ #define is_vector(this) (true || vtos(this))
+ #define isnt_vector(this)
+ #define is_string(this) (true || stof(this))
+ #define isnt_string(this)
+ #define is_entity(this) (true || etof(this))
+ #define isnt_entity(this)
+ bool is_int(float this) { return this == floor(this); }
+ void isnt_int(float this) { print(ftos(this)); }
+ bool is_bool(float this) { return this == true || this == false; }
+ void isnt_bool(float this) { print(ftos(this)); }
+#endif
#include "warpzone/mathlib.qc"
#include "vector.qh"
#include "yenc.qh"
-#include "matrix/_mod.inc"
+#if XONOTIC
+ #include "matrix/_mod.inc"
+#endif
#ifndef SVQC
#define objerror_safe(e)
#endif
#define objerror(this, msg) MACRO_BEGIN { \
- LOG_WARNING("======OBJECT ERROR======"); \
+ LOG_WARN("======OBJECT ERROR======"); \
entity _e = (this); \
eprint(_e); \
objerror_safe(_e); \
delete(_e); \
- LOG_WARNINGF("%s OBJECT ERROR in %s:\n%s\nTip: read above for entity information", PROGNAME, __FUNC__, msg); \
+ LOG_WARNF("%s OBJECT ERROR in %s:\n%s\nTip: read above for entity information", PROGNAME, __FUNC__, msg); \
} MACRO_END
#ifdef MENUQC
void SetChangeParms() { ENGINE_EVENT(); if (_SetChangeParms) _SetChangeParms(this); }
#define SetChangeParms _SetChangeParms
+#ifdef DP_EXT_PRECONNECT
+ void _ClientPreConnect(entity this);
+ void ClientPreConnect() { ENGINE_EVENT(); if (_ClientPreConnect) _ClientPreConnect(this); }
+ #define ClientPreConnect _ClientPreConnect
+#endif
+
void _ClientConnect(entity this);
void ClientConnect() { ENGINE_EVENT(); if (_ClientConnect) _ClientConnect(this); }
#define ClientConnect _ClientConnect
#endif
#undef ENGINE_EVENT
-#ifndef MENUQC
- #include <ecs/_lib.qh>
- #include <ecs/components/_mod.qh>
+#if XONOTIC
+#ifdef GAMEQC
+ #include <ecs/_mod.qh>
+#endif
#endif