]> granicus.if.org Git - nethack/commitdiff
Fix the corpse taste adjectives
authorPasi Kallinen <paxed@alt.org>
Sat, 20 Aug 2022 13:33:35 +0000 (16:33 +0300)
committerPasi Kallinen <paxed@alt.org>
Sat, 20 Aug 2022 13:35:31 +0000 (16:35 +0300)
Use proper grammar, and just go with randomized, not fixed by corpse type.

src/eat.c

index 5e6d61c01ffc78634e5826960f74401db3a712dc..f49d1f00701c69d862e540dbd087dea9906e8a81 100644 (file)
--- a/src/eat.c
+++ b/src/eat.c
@@ -1871,8 +1871,13 @@ eatcorpse(struct obj *otmp)
                              && (rotted < 1 || !rn2((int) rotted + 1)));
         const char *pmxnam = food_xname(otmp, FALSE);
         static const char *const palatable_msgs[] = {
-            "okay", "stringy", "gamey", "fatty", "tough"
+            /* first char: T = tastes ... , I = is ... */
+            /* veggies are always just "okay" */
+            "Tokay", "Istringy", "Igamey", "Ifatty", "Itough"
         };
+        int idx = vegetarian(&mons[mnum]) ? 0 : rn2(SIZE(palatable_msgs));
+        const char *palat_msg = palatable_msgs[idx];
+        boolean use_is = (Hallucination || (palatable && *palat_msg == 'I'));
 
         if (!strncmpi(pmxnam, "the ", 4))
             pmxnam += 4;
@@ -1880,14 +1885,14 @@ eatcorpse(struct obj *otmp)
               type_is_pname(&mons[mnum])
                  ? "" : the_unique_pm(&mons[mnum]) ? "The " : "This ",
               pmxnam,
-              Hallucination ? "is" : "tastes",
+              use_is ? "is" : "tastes",
                   /* tiger reference is to TV ads for "Frosted Flakes",
                      breakfast cereal targeted at kids by "Tony the tiger" */
               Hallucination
                  ? (yummy ? ((u.umonnum == PM_TIGER) ? "gr-r-reat" : "gnarly")
                           : palatable ? "copacetic" : "grody")
               : (yummy ? "delicious" : palatable ?
-                 palatable_msgs[mnum % SIZE(palatable_msgs)] : "terrible"),
+                 &palat_msg[1] : "terrible"),
               (yummy || !palatable) ? '!' : '.');
     }