From ecda85cc32362c93368e8b239be8c8fb0769b2e4 Mon Sep 17 00:00:00 2001 From: Michael Meyer Date: Fri, 17 Nov 2023 08:49:14 -0500 Subject: [PATCH] Don't merge stacks w/ different was_thrown/dropped Previously, if you threw a dagger into a pile of daggers, you'd pick up the entire pile with pickup_thrown on. Since pickup_thrown and dropped_nopick options are supposed to apply specifically to items you've handled, don't merge items with different values in those fields. --- src/invent.c | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/invent.c b/src/invent.c index af0322c96..33cbba494 100644 --- a/src/invent.c +++ b/src/invent.c @@ -4822,7 +4822,9 @@ mergable( if (obj->unpaid != otmp->unpaid || obj->spe != otmp->spe || obj->no_charge != otmp->no_charge || obj->obroken != otmp->obroken - || obj->otrapped != otmp->otrapped || obj->lamplit != otmp->lamplit) + || obj->otrapped != otmp->otrapped || obj->lamplit != otmp->lamplit + || obj->was_thrown != otmp->was_thrown + || obj->was_dropped != otmp->was_dropped) return FALSE; if (obj->oclass == FOOD_CLASS