X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=blobdiff_plain;f=qcsrc%2Fwarpzonelib%2Fcommon.qh;h=3e2b7c7c63eacae9b1dfd93c4dfc55feb77bef3c;hp=c79ee95d6e02d2d2062b8a35a987de07f0aca3cb;hb=86c9dc7c3696c329496b06375c1e79fb407401ce;hpb=8a390ed02bde47c98a5e6bd47c7eb9b1cb3cd1dc diff --git a/qcsrc/warpzonelib/common.qh b/qcsrc/warpzonelib/common.qh index c79ee95d6e..3e2b7c7c63 100644 --- a/qcsrc/warpzonelib/common.qh +++ b/qcsrc/warpzonelib/common.qh @@ -1,3 +1,6 @@ +#ifndef WARPZONELIB_COMMON_H +#define WARPZONELIB_COMMON_H + // uncomment this if your mod uses the roll angle in fixangle // #define KEEP_ROLL @@ -16,6 +19,7 @@ float warpzone_cameras_exist; .float warpzone_fadestart; .float warpzone_fadeend; void WarpZone_SetUp(entity e, vector my_org, vector my_ang, vector other_org, vector other_ang); +void WarpZone_Camera_SetUp(entity e, vector my_org, vector my_ang); float WarpZoneLib_BoxTouchesBrush(vector mi, vector ma, entity e, entity ig); vector WarpZoneLib_NearestPointOnBox(vector mi, vector ma, vector org); @@ -100,3 +104,13 @@ entity WarpZone_RefSys_SpawnSameRefSys(entity me); // spawn().R = me.R #ifndef BITXOR_ASSIGN # define BITXOR_ASSIGN(a,b) ((a) = ((a) | (b)) - ((a) & (b))) #endif +float WarpZoneLib_MoveOutOfSolid(entity e); +#define move_out_of_solid(e) WarpZoneLib_MoveOutOfSolid(e) + +float WarpZoneLib_ExactTrigger_Touch(); +void WarpZoneLib_ExactTrigger_Init(); + +// WARNING: this kills the trace globals +#define EXACTTRIGGER_TOUCH if(WarpZoneLib_ExactTrigger_Touch()) return +#define EXACTTRIGGER_INIT WarpZoneLib_ExactTrigger_Init() +#endif