From fabc9033aa029f146c5755147177ce52a9a73d25 Mon Sep 17 00:00:00 2001 From: PatR Date: Mon, 22 Jan 2024 13:25:32 -0800 Subject: [PATCH] loadstone bit If your inventory is full and you aren't already carrying a loadstone, you can pick one up into the overflow slot. But if you are already carrying one and the one you're trying to pick up won't merge with it (only criterium that matters would be BUC state, I think), you can't pick it up and get a message saying so. If loadstone isn't known yet, the message always referred to it as "gray stone" rather than "stone called ". --- doc/fixes3-7-0.txt | 3 +++ src/pickup.c | 7 +++++-- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/doc/fixes3-7-0.txt b/doc/fixes3-7-0.txt index 95eead967..06ead54eb 100644 --- a/doc/fixes3-7-0.txt +++ b/doc/fixes3-7-0.txt @@ -1352,6 +1352,9 @@ some uses of mons[obj->corpsenm] weren't excluding obj->corpsenm==NON_PM (-1) if a covetous monster tried to teleport next to the hero but the level was completely full, it would be booted off the level (set to migrate back if the hero left and returned) instead of just staying put +if loadstone was unIDed but had been assigned a type name and you failed to + pick one up, the message referred to it as "gray stone" rather than + "stone called " Fixes to 3.7.0-x General Problems Exposed Via git Repository diff --git a/src/pickup.c b/src/pickup.c index af460e876..33af16001 100644 --- a/src/pickup.c +++ b/src/pickup.c @@ -1702,9 +1702,12 @@ lift_object( || merge_choice(gi.invent, obj)) return 1; /* lift regardless of current situation */ /* if we reach here, we're out of slots and already have at least - one of these, so treat this one more like a normal item */ + one of these, so treat this one more like a normal item + [this was using simpleonames(obj) for shortest description, but + that's suboptimal for loadstones because it omits user-assigned + type name which is something of interest for gray stones] */ You("are carrying too much stuff to pick up %s %s.", - (obj->quan == 1L) ? "another" : "more", simpleonames(obj)); + (obj->quan == 1L) ? "another" : "more", xname(obj)); return -1; }