follow-up for #name permanent inventory update
Using extended #name for an object on the floor (for example) wasn't updating the permanent inventory to reflect the updated object type name if there was also one in inventory.
This commit is contained in:
@@ -671,7 +671,7 @@ docall(struct obj *obj)
|
||||
*uname_p = dupstr(buf);
|
||||
discover_object(obj->otyp, FALSE, TRUE, TRUE); /* possibly add to disco[] */
|
||||
}
|
||||
if (obj->where == OBJ_INVENT)
|
||||
if (obj->where == OBJ_INVENT || hero_has_one_of_these(obj->otyp))
|
||||
update_inventory();
|
||||
}
|
||||
|
||||
|
||||
12
src/invent.c
12
src/invent.c
@@ -2779,6 +2779,18 @@ learn_unseen_invent(void)
|
||||
update_inventory();
|
||||
}
|
||||
|
||||
boolean
|
||||
hero_has_one_of_these(short otyp)
|
||||
{
|
||||
struct obj *otmp;
|
||||
|
||||
for (otmp = gi.invent; otmp; otmp = otmp->nobj) {
|
||||
if (otmp->otyp == otyp)
|
||||
return TRUE;
|
||||
}
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
/* persistent inventory window is maintained by interface code;
|
||||
'update_inventory' used to be a macro for
|
||||
(*windowprocs.win_update_inventory) but the restore hackery to suppress
|
||||
|
||||
Reference in New Issue
Block a user