diff --git a/src/objects/random-item.c b/src/objects/random-item.c index a9fdae254..5e07c6de5 100644 --- a/src/objects/random-item.c +++ b/src/objects/random-item.c @@ -114,7 +114,7 @@ void Obj_RandomItemVisuals(mobj_t *mobj) // the player's cleared out a good portion of the map. // // Then extraval1 starts ticking up and triggers the transformation from Ringbox to Random Item. - if (mobj->fuse == 0 && !(mobj->flags & MF_NOCLIPTHING) + if (mobj->fuse == 0 && !(mobj->flags & MF_NOCLIPTHING) && !(mobj->flags2 & MF2_AMBUSH) && !cv_thunderdome.value && !(modeattacking & ATTACKING_SPB)) { mobj->extravalue1++; diff --git a/src/p_mobj.c b/src/p_mobj.c index dd076a12b..f92794602 100644 --- a/src/p_mobj.c +++ b/src/p_mobj.c @@ -13273,6 +13273,8 @@ static boolean P_SetupSpawnedMapThing(mapthing_t *mthing, mobj_t *mobj) P_SetThingPosition(mobj); } } + if (mthing->args[0] == 1) + mobj->flags2 |= MF2_AMBUSH; break; } case MT_ITEMCAPSULE: