From 2789e7668379bc9c75a4ed658dda0ef230524c09 Mon Sep 17 00:00:00 2001 From: TehRealSalt Date: Thu, 29 Nov 2018 05:36:40 -0500 Subject: [PATCH] ...Welp, I mixed up my commit names :V THIS commit's the MT_FIREDITEM fix, the LAST commit was me making sure the size of translationtablecache was correct. --- src/p_mobj.c | 29 +++++++++++++++-------------- 1 file changed, 15 insertions(+), 14 deletions(-) diff --git a/src/p_mobj.c b/src/p_mobj.c index 521070f5..5bbf6d4c 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -7210,23 +7210,24 @@ void P_MobjThinker(mobj_t *mobj) } break; case MT_FIREDITEM: - { - fixed_t x, y, z; - if (mobj->movecount) + if (mobj->target && !P_MobjWasRemoved(mobj->target)) { - x = mobj->target->x + P_ReturnThrustX(mobj->target, mobj->target->angle + mobj->movedir, mobj->target->radius + mobj->radius); - y = mobj->target->y + P_ReturnThrustY(mobj->target, mobj->target->angle + mobj->movedir, mobj->target->radius + mobj->radius); - z = mobj->target->z + mobj->target->height/3; + fixed_t x, y, z; + if (mobj->movecount) + { + x = mobj->target->x + P_ReturnThrustX(mobj->target, mobj->target->angle + mobj->movedir, mobj->target->radius + mobj->radius); + y = mobj->target->y + P_ReturnThrustY(mobj->target, mobj->target->angle + mobj->movedir, mobj->target->radius + mobj->radius); + z = mobj->target->z + mobj->target->height/3; + } + else + { + x = mobj->target->x; + y = mobj->target->y; + z = mobj->target->z + 80*(mapheaderinfo[gamemap-1]->mobj_scale); + } + P_TeleportMove(mobj, x, y, z); } - else - { - x = mobj->target->x; - y = mobj->target->y; - z = mobj->target->z + 80*(mapheaderinfo[gamemap-1]->mobj_scale); - } - P_TeleportMove(mobj, x, y, z); break; - } default: if (mobj->fuse) { // Scenery object fuse! Very basic!