P_IsObjectOnGround broken on spindash-able sectors? (DSZ2)
Originally mentioned in the SRB2 Discord server, back when 2.2.9 and 2.2.10 was used, P_IsObjectOnGround function worked properly when checking if a character (in my case, Windows) was grounded on a spindash-able sector in Deep Sea Zone 2... the ones you need to do that to open a door.
The code I have that's responsible for it is
local sectorthing = P_PlayerTouchingSectorSpecial(player, 0, 0)
if sectorthing and sectorthing.valid then
for fof in sectorthing.ffloors()
if fof.valid and (abs(fof.topheight - player.mo.z) <= 40*player.mo.scale
or abs(fof.bottomheight - player.mo.z+player.mo.height) <= 40*player.mo.scale)
and fof.master and fof.master.valid and fof.master.flags & ML_NOCLIMB
and (fof.master.special == 153 or fof.master.special == 180
or (fof.master.special >= 150 and fof.master.special <= 152)
or (fof.master.special >= 190 and fof.master.special <= 195)
or fof.master.special == 176 or fof.master.special == 177) then
if P_IsObjectOnGround(player.mo) then -- This doesn't return true since 2.2.11.
...
end
end
end
end
Is this because of UDMF being introduced that it broke the function in such sectors?