From e5a5b5253e50b0a8b9cc5c64bbeab2e7dc594760 Mon Sep 17 00:00:00 2001 From: cohrs Date: Sun, 10 Feb 2002 20:19:24 +0000 Subject: [PATCH] rotten wraith corpse sidestep the rotten partly eaten wraith corpse impossible() message by causing rotten wraith corpses to immediately rot away completely --- src/eat.c | 13 +++++++++++-- 1 file changed, 11 insertions(+), 2 deletions(-) diff --git a/src/eat.c b/src/eat.c index 471016fc8..c964bfbae 100644 --- a/src/eat.c +++ b/src/eat.c @@ -1244,8 +1244,17 @@ eatcorpse(otmp) /* called when a corpse is selected as food */ otmp->orotten = TRUE; (void)touchfood(otmp); retcode = 1; - } else - consume_oeaten(otmp, 2); /* oeaten >>= 2 */ + } + + if (!mons[otmp->corpsenm].cnutrit) { + /* no nutrution: rots away, no message if you passed out */ + if (!retcode) pline_The("corpse rots away completely."); + if (carried(otmp)) useup(otmp); + else useupf(otmp, 1L); + retcode = 2; + } + + if (!retcode) consume_oeaten(otmp, 2); /* oeaten >>= 2 */ } else { pline("%s%s %s!", !uniq ? "This " : !type_is_pname(&mons[mnum]) ? "The " : "",