From 05c847262c7fb0f9f864776784ba400088ec0ecc Mon Sep 17 00:00:00 2001 From: UnknownShadow200 Date: Mon, 20 Apr 2020 23:16:23 +1000 Subject: [PATCH] Fix /client tp 999999999999999999999999999999999999999 0 0 crashing the game --- src/Picking.c | 3 +++ 1 file changed, 3 insertions(+) diff --git a/src/Picking.c b/src/Picking.c index e043d8390..444992d69 100644 --- a/src/Picking.c +++ b/src/Picking.c @@ -153,6 +153,9 @@ static cc_bool RayTrace(struct RayTracer* t, const Vec3* origin, const Vec3* dir int i, x, y, z; RayTracer_Init(t, origin, dir); + /* Check if origin is at NaN (happens if player's position is at infinity) */ + if (origin->X != origin->X || origin->Y != origin->Y || origin->Z != origin->Z) return false; + IVec3_Floor(&pOrigin, origin); insideMap = World_Contains(pOrigin.X, pOrigin.Y, pOrigin.Z); reachSq = reach * reach;