diff --git a/src/p_mobj.c b/src/p_mobj.c index a28c0a0f5..4fb441b15 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -9029,6 +9029,12 @@ void P_MobjThinker(mobj_t *mobj) mobj->extravalue1 = (mobj->extravalue1 + 3) % 360; mobj->z += FINESINE(((mobj->extravalue1*ANG1) >> ANGLETOFINESHIFT) & FINEMASK); + if (!(mobj->flags2 & MF2_AMBUSH)) + P_LookForPlayers(mobj, true, false, 1500*FRACUNIT); + + if (!mobj->target) + break; + if (mobj->extravalue2 == 1) P_PyreFlyBurn(mobj, 0, 20, MT_SMOKE, 4*FRACUNIT); else if (mobj->extravalue2 == 2) @@ -9039,12 +9045,6 @@ void P_MobjThinker(mobj_t *mobj) P_PyreFlyBurn(mobj, fireradius*FRACUNIT, 40, MT_PYREFLY_FIRE, 0); } - if (!(mobj->flags2 & MF2_AMBUSH)) - P_LookForPlayers(mobj, true, false, 1500*FRACUNIT); - - if (!mobj->target) - break; - hdist = R_PointToDist2(mobj->x, mobj->y, mobj->target->x, mobj->target->y); if (!(mobj->flags2 & MF2_AMBUSH) && hdist <= 450*FRACUNIT)