WANTED player or Lightning Shield attracts emeralds

This commit is contained in:
James R 2023-06-30 04:20:48 -07:00 committed by VelocitOni
parent 4874c90f8d
commit a98db957e6
3 changed files with 6 additions and 4 deletions

View file

@ -7564,7 +7564,7 @@ static inline BlockItReturn_t PIT_AttractingRings(mobj_t *thing)
return BMIT_CONTINUE; // invalid
}
if (!(thing->type == MT_RING || thing->type == MT_FLINGRING))
if (!(thing->type == MT_RING || thing->type == MT_FLINGRING || thing->type == MT_EMERALD))
{
return BMIT_CONTINUE; // not a ring
}
@ -7574,7 +7574,7 @@ static inline BlockItReturn_t PIT_AttractingRings(mobj_t *thing)
return BMIT_CONTINUE; // dead
}
if (thing->extravalue1)
if (thing->extravalue1 && thing->type != MT_EMERALD)
{
return BMIT_CONTINUE; // in special ring animation
}
@ -8577,7 +8577,7 @@ void K_KartPlayerAfterThink(player_t *player)
player->jawztargetdelay = 0;
}
if (player->itemtype == KITEM_LIGHTNINGSHIELD)
if (player->itemtype == KITEM_LIGHTNINGSHIELD || ((gametyperules & GTR_POWERSTONES) && K_IsPlayerWanted(player)))
{
K_LookForRings(player->mo);
}

View file

@ -3800,7 +3800,7 @@ void A_AttractChase(mobj_t *actor)
if (actor->flags2 & MF2_NIGHTSPULL || !actor->health)
return;
if (actor->extravalue1) // SRB2Kart
if (actor->extravalue1 && actor->type != MT_EMERALD) // SRB2Kart
{
if (!actor->target || P_MobjWasRemoved(actor->target) || !actor->target->player)
{

View file

@ -7538,6 +7538,8 @@ static boolean P_MobjRegularThink(mobj_t *mobj)
{
if (mobj->threshold > 0)
mobj->threshold--;
A_AttractChase(mobj);
}
/*FALLTHRU*/
case MT_MONITOR: