]> granicus.if.org Git - nethack/commitdiff
eating an amulet of unchanging
authorcohrs <cohrs>
Sat, 11 Oct 2003 18:54:48 +0000 (18:54 +0000)
committercohrs <cohrs>
Sat, 11 Oct 2003 18:54:48 +0000 (18:54 +0000)
Prompted by a suggestion on the newsgroup and from <Someone>, allow eating an
amulet of unchanging to remove intrinsic polymorph.

doc/fixes34.3
src/eat.c

index af4b54a28d5bce3642e4dad34ec5db27322818c3..8fc0a33b09a429f99e138ef279c65d09266c650a 100644 (file)
@@ -46,6 +46,7 @@ be more consistent with sounds when dropping into water
 surface() returns "bottom" when Underwater
 bill for all discarded, opened tins
 monsters that cannot pick things up cannot throw things either
+eating an amulet of unchanging removes intrinsic polymorph
 
 
 Platform- and/or Interface-Specific Fixes
index e597f847a873bd1c2b10942ab0c2ff3be8294e10..243144344c35b783bfddda11e5da8059a676b0ed 100644 (file)
--- a/src/eat.c
+++ b/src/eat.c
@@ -1542,6 +1542,13 @@ struct obj *otmp;
                    flags.female ? "feminine" : "masculine");
                context.botl = 1;
                break;
+           case AMULET_OF_UNCHANGING:
+               /* remove intrinsic polymorph only */
+               if (HPolymorph & INTRINSIC) {
+                   HPolymorph &= ~INTRINSIC;
+                   accessory_has_effect(otmp);
+               }
+               break;
            case AMULET_OF_STRANGULATION: /* bad idea! */
                /* no message--this gives no permanent effect */
                choke(otmp);
@@ -1552,7 +1559,6 @@ struct obj *otmp;
                HSleeping = FROMOUTSIDE | rnd(100);
                break;
            case RIN_SUSTAIN_ABILITY:
-           case AMULET_OF_UNCHANGING:
            case AMULET_OF_LIFE_SAVING:
            case AMULET_OF_REFLECTION: /* nice try */
            /* can't eat Amulet of Yendor or fakes,