From 02c8599139825e6076f004a2b59eb0ac243200ef Mon Sep 17 00:00:00 2001 From: terencehill Date: Sat, 29 Jul 2017 11:14:45 +0200 Subject: [PATCH] Clean up 2 WarpZoneLib functions --- qcsrc/lib/warpzone/common.qc | 30 +++++++++++------------------- qcsrc/lib/warpzone/common.qh | 4 ++-- qcsrc/lib/warpzone/util_server.qh | 4 ++-- 3 files changed, 15 insertions(+), 23 deletions(-) diff --git a/qcsrc/lib/warpzone/common.qc b/qcsrc/lib/warpzone/common.qc index 03248ec50..65b1a7f64 100644 --- a/qcsrc/lib/warpzone/common.qc +++ b/qcsrc/lib/warpzone/common.qc @@ -784,7 +784,7 @@ entity WarpZone_RefSys_SpawnSameRefSys(entity me) return e; } -float WarpZoneLib_ExactTrigger_Touch(entity this, entity toucher) +bool WarpZoneLib_ExactTrigger_Touch(entity this, entity toucher) { return !WarpZoneLib_BoxTouchesBrush(toucher.absmin, toucher.absmax, this, toucher); } @@ -804,11 +804,9 @@ void WarpZoneLib_MoveOutOfSolid_Expand(entity e, vector by) } } -float WarpZoneLib_MoveOutOfSolid(entity e) +bool WarpZoneLib_MoveOutOfSolid(entity e) { - vector o, m0, m1; - - o = e.origin; + vector o = e.origin; traceline(o, o, MOVE_WORLDONLY, e); if (trace_startsolid) return false; @@ -817,22 +815,16 @@ float WarpZoneLib_MoveOutOfSolid(entity e) if (!trace_startsolid) return true; - m0 = e.mins; - m1 = e.maxs; + vector m0 = e.mins; + vector m1 = e.maxs; e.mins = '0 0 0'; e.maxs = '0 0 0'; - WarpZoneLib_MoveOutOfSolid_Expand(e, '1 0 0' * m0_x); - e.mins_x = m0_x; - WarpZoneLib_MoveOutOfSolid_Expand(e, '1 0 0' * m1_x); - e.maxs_x = m1_x; - WarpZoneLib_MoveOutOfSolid_Expand(e, '0 1 0' * m0_y); - e.mins_y = m0_y; - WarpZoneLib_MoveOutOfSolid_Expand(e, '0 1 0' * m1_y); - e.maxs_y = m1_y; - WarpZoneLib_MoveOutOfSolid_Expand(e, '0 0 1' * m0_z); - e.mins_z = m0_z; - WarpZoneLib_MoveOutOfSolid_Expand(e, '0 0 1' * m1_z); - e.maxs_z = m1_z; + WarpZoneLib_MoveOutOfSolid_Expand(e, eX * m0.x); e.mins.x = m0.x; + WarpZoneLib_MoveOutOfSolid_Expand(e, eX * m1.x); e.maxs.x = m1.x; + WarpZoneLib_MoveOutOfSolid_Expand(e, eY * m0.y); e.mins.y = m0.y; + WarpZoneLib_MoveOutOfSolid_Expand(e, eY * m1.y); e.maxs.y = m1.y; + WarpZoneLib_MoveOutOfSolid_Expand(e, eZ * m0.z); e.mins.z = m0.z; + WarpZoneLib_MoveOutOfSolid_Expand(e, eZ * m1.z); e.maxs.z = m1.z; setorigin(e, e.origin); tracebox(e.origin, e.mins, e.maxs, e.origin, MOVE_WORLDONLY, e); diff --git a/qcsrc/lib/warpzone/common.qh b/qcsrc/lib/warpzone/common.qh index 26c0e80fe..0ddd0d052 100644 --- a/qcsrc/lib/warpzone/common.qh +++ b/qcsrc/lib/warpzone/common.qh @@ -106,10 +106,10 @@ 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); +bool WarpZoneLib_MoveOutOfSolid(entity e); #define move_out_of_solid(e) WarpZoneLib_MoveOutOfSolid(e) -float WarpZoneLib_ExactTrigger_Touch(entity this, entity toucher); +bool WarpZoneLib_ExactTrigger_Touch(entity this, entity toucher); void WarpZoneLib_ExactTrigger_Init(entity this); // WARNING: this kills the trace globals diff --git a/qcsrc/lib/warpzone/util_server.qh b/qcsrc/lib/warpzone/util_server.qh index b73289927..515f8db2e 100644 --- a/qcsrc/lib/warpzone/util_server.qh +++ b/qcsrc/lib/warpzone/util_server.qh @@ -1,7 +1,7 @@ #pragma once -float WarpZoneLib_MoveOutOfSolid(entity e); -float WarpZoneLib_ExactTrigger_Touch(entity this, entity toucher); +bool WarpZoneLib_MoveOutOfSolid(entity e); +bool WarpZoneLib_ExactTrigger_Touch(entity this, entity toucher); #ifdef SVQC void WarpZoneLib_ExactTrigger_Init(entity this); #endif -- 2.39.2