Disallow picking up SPB rings in first

This commit is contained in:
NepDisk 2026-03-08 18:15:09 -04:00
parent 87122216c5
commit edcb7dbe69
2 changed files with 8 additions and 1 deletions

View file

@ -11066,6 +11066,9 @@ void A_SPBChase(void *thing)
specialring->colorized = true;
specialring->color = SKINCOLOR_RED;
specialring->flags |= MF_NOCLIPHEIGHT;
// But don't let first pick these up.
specialring->extravalue3 = 1;
}
}

View file

@ -629,7 +629,7 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
if (special->extravalue1)
return;
// No picking up rings while SPB is targetting you
// No picking up rings while your rings are locked.
if (player->pflags & PF_RINGLOCK)
return;
@ -637,6 +637,10 @@ void P_TouchSpecialThing(mobj_t *special, mobj_t *toucher, boolean heightcheck)
if (special->threshold > 0 || P_PlayerInPain(player))
return;
// Don't pick up SPB rings in first.
if (special->extravalue3 && player->position == 1)
return;
if (!(P_CanPickupItem(player, PICKUPITEM_RING)))
return;