X-Git-Url: http://git.xonotic.org/?a=blobdiff_plain;f=qcsrc%2Fserver%2Fportals.qc;h=405d179ca8fce7cfd81b3c51f11447e903916cd6;hb=HEAD;hp=bd5a8540e22937cd791fb569dd89a24590431e6a;hpb=9b36d99e99fda853f75a7f63c6fc2ebf9fa9e5cb;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/server/portals.qc b/qcsrc/server/portals.qc index bd5a8540e..405d179ca 100644 --- a/qcsrc/server/portals.qc +++ b/qcsrc/server/portals.qc @@ -1,22 +1,27 @@ #include "portals.qh" +#include +#include #include -#include "g_hook.qh" -#include "mutators/_mod.qh" -#include "../common/constants.qh" -#include "../common/deathtypes/all.qh" -#include "../common/notifications/all.qh" -#include "../common/mapobjects/teleporters.qh" -#include "../common/mapobjects/subs.qh" -#include "../common/util.qh" +#include +#include +#include +#include +#include +#include +#include #include -#include "../lib/csqcmodel/sv_model.qh" -#include "../lib/warpzone/anglestransform.qh" -#include "../lib/warpzone/util_server.qh" -#include "../lib/warpzone/common.qh" -#include "../common/vehicles/vehicle.qh" -#include "../common/vehicles/sv_vehicles.qh" +#include +#include +#include +#include +#include +#include +#include +#include +#include #include +#include #define PORTALS_ARE_NOT_SOLID @@ -31,11 +36,10 @@ const vector SAFERNUDGE = '8 8 8'; float PlayerEdgeDistance(entity p, vector v) { - vector vbest; - - if(v.x < 0) vbest.x = p.mins.x; else vbest.x = p.maxs.x; - if(v.y < 0) vbest.y = p.mins.y; else vbest.y = p.maxs.y; - if(v.z < 0) vbest.z = p.mins.z; else vbest.z = p.maxs.z; + vector vbest = vec3( + ((v.x < 0) ? p.mins.x : p.maxs.x), + ((v.y < 0) ? p.mins.y : p.maxs.y), + ((v.z < 0) ? p.mins.z : p.maxs.z)); return vbest * v; } @@ -400,6 +404,7 @@ void Portal_Connect(entity teleporter, entity destination) #else teleporter.solid = SOLID_BSP; #endif + setorigin(teleporter, teleporter.origin); // link it to the area grid } void Portal_Remove(entity portal, float killed)