Fix #1025 and some P_PathTraverse bugs
This MR is a standalone version of the blockmap fixes from !2389:
- Fixes #1025 by adding a new argument to P_BlockThingsIterator that takes an
mobj_t
and checks for it, instead of just checking fortmthing
. - Fixes a few bugs with P_PathTraverse:
- Ports over a couple of fixes regarding path traversal from ZDoom (traversing through blockmap corners, etc.).
- Fixes incorrect calculation(s) of
partial
(nowpartialx
andpartialy
),xstep
,ystep
,xintercept
, andyintercept
. - Path traversals can now go beyond a map's blockmap limit, granted they stay within the hardcoded limit of 65536x65536.