From 8d409c6b3b911746df45aed2d88db1b37232bbff Mon Sep 17 00:00:00 2001 From: "Eric S. Raymond" Date: Tue, 7 Mar 2023 07:56:04 -0500 Subject: [PATCH] Add a comment to the code that fixes the inventory-count bug. --- misc.c | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/misc.c b/misc.c index b2ad688..d047602 100644 --- a/misc.c +++ b/misc.c @@ -617,6 +617,13 @@ void carry(obj_t object, loc_t where) return; game.place[object] = CARRIED; + /* + * Without this conditional your inventory is overcounted + * when you pick up the bird while it's caged. This fixes + * a cosmetic bug in the original. + * + * Possibly this check should be skipped whwn oldstyle is on. + */ if (object != BIRD) ++game.holdng; } @@ -641,7 +648,7 @@ void drop(obj_t object, loc_t where) if (game.place[object] == CARRIED) if (object != BIRD) /* The bird has to be weightless. This ugly hack (and the - * corresponding code in the drop function) brought to you + * corresponding code in the carry function) brought to you * by the fact that when the bird is caged, we need to be able * to either 'take bird' or 'take cage' and have the right thing * happen. -- 2.31.1