eating artifacts while poly'd
From the newsgroup: if polymorphed into a metallivore, you could eat artifacts that you couldn't touch with your hands. Now you can't eat ones which evade your grasp, and you take some damage from other touchy items on--actually, prior to--the first bite. (Those still "taste delicious" if you survive; I'm not sure whether this ought to be changed.)
This commit is contained in:
@@ -294,6 +294,7 @@ can't arm bear traps or land mines on Planes of Air or Water
|
|||||||
statues that "come to life" when trap activates shouldn't start out sleeping
|
statues that "come to life" when trap activates shouldn't start out sleeping
|
||||||
shopkeepers and priests wouldn't step on graves put in their rooms by bones
|
shopkeepers and priests wouldn't step on graves put in their rooms by bones
|
||||||
can't throw if poly'd into form which lacks hands
|
can't throw if poly'd into form which lacks hands
|
||||||
|
can't eat an artifact you're unable to touch
|
||||||
|
|
||||||
|
|
||||||
Platform- and/or Interface-Specific Fixes
|
Platform- and/or Interface-Specific Fixes
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
/* SCCS Id: @(#)eat.c 3.5 2006/12/07 */
|
/* SCCS Id: @(#)eat.c 3.5 2007/01/24 */
|
||||||
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
|
||||||
/* NetHack may be freely redistributed. See license for details. */
|
/* NetHack may be freely redistributed. See license for details. */
|
||||||
|
|
||||||
@@ -2256,7 +2256,9 @@ doeat() /* generic "eat" command funtion (see cmd.c) */
|
|||||||
* mails, players who polymorph back to human in the middle of their
|
* mails, players who polymorph back to human in the middle of their
|
||||||
* metallic meal, etc....
|
* metallic meal, etc....
|
||||||
*/
|
*/
|
||||||
if (!is_edible(otmp)) {
|
if (otmp->oartifact && !touch_artifact(otmp, &youmonst)) {
|
||||||
|
return 1;
|
||||||
|
} else if (!is_edible(otmp)) {
|
||||||
You("cannot eat that!");
|
You("cannot eat that!");
|
||||||
return 0;
|
return 0;
|
||||||
} else if ((otmp->owornmask & (W_ARMOR|W_TOOL|W_AMUL
|
} else if ((otmp->owornmask & (W_ARMOR|W_TOOL|W_AMUL
|
||||||
|
|||||||
Reference in New Issue
Block a user