diff --git a/doc/fixes34.4 b/doc/fixes34.4 index 0e92c370e..3d0eade16 100644 --- a/doc/fixes34.4 +++ b/doc/fixes34.4 @@ -272,6 +272,7 @@ prevent very large number of objects in # inventory slot from causing !fixinv config was using arbitrary characters instead of # for invent overflow don't report death by petrification if cockatrice kills hero via HP loss Riders are immune to green slime +Rider corpses can't be engulfed by gelatinous cubes wielding a cloak of magic resistance or gray dragon scales, or carrying one in alternate weapon or quiver inventory slot, conferred magic resistance to polymorphed hero diff --git a/src/mon.c b/src/mon.c index ff02a58fa..42f037102 100644 --- a/src/mon.c +++ b/src/mon.c @@ -814,6 +814,12 @@ meatobj(mtmp) /* for gelatinous cubes */ /* in case it polymorphed or died */ if (ptr != &mons[PM_GELATINOUS_CUBE]) return !ptr ? 2 : 1; + } else if (otmp->otyp == CORPSE && + is_rider(&mons[otmp->corpsenm])) { + /* Rider corpse will always pass the obj_resists() test above + and not be eaten; we don't want it to be engulfed either */ + (void)revive_corpse(otmp); + /* continue; -- regardless of whether it revived */ } else if (otmp->oclass != ROCK_CLASS && otmp != uball && otmp != uchain) { ++ecount;