give more specific messages when dropping weapons due to slippery fingers
various helmet messages changed to distinguish between "helm" and "hat"
helmets don't protect against cockatrice eggs thrown straight up
+breaking container contents in a shop didn't always charge for them
+some types of shop theft of a stack of items only charged for a single one
Platform- and/or Interface-Specific Fixes
-/* SCCS Id: @(#)shk.c 3.4 2004/06/23 */
+/* SCCS Id: @(#)shk.c 3.4 2004/11/17 */
/* Copyright (c) Stichting Mathematisch Centrum, Amsterdam, 1985. */
/* NetHack may be freely redistributed. See license for details. */
value += stolen_container(obj, shkp, value, ininv);
if(!ininv) gvalue += contained_gold(obj);
- } else if (!obj->no_charge && saleable(shkp, obj)) {
- value += get_cost(obj, shkp);
+ } else if (!obj->no_charge) {
+ /* treat items inside containers as "saleable" */
+ if ((saleable(shkp, obj) || obj->where == OBJ_CONTAINED) &&
+ (obj->oclass != FOOD_CLASS || !obj->oeaten))
+ value += obj->quan * get_cost(obj, shkp);
}
if(gvalue + value == 0L) return(0L);