shrinking globs vs shop bill
A shop-owned glob picked up by the hero was added to shop's bill and if that shrank to nothing it moved from the unpaid portion to used-up portion as intended. But once there it retained obj->owt of 0 and if 'sanity_check' was enabled, that triggered a warning every move until finally paid for. Both the 'Ix' list of used-up items and itemized shop billing revealed a weight of 0 aum if 'wizweight' was enabled. Keep track of the weight a glob had when it becomes unpaid, then reset from 0 to that amount if it becomes used-up. This overloads the obj->oextra->omid field which is an unsigned int previously only used for corpses. Now for globs it is pre-bill obj->owt which is also unsigned int. I didn't add new oextra access functions for it; it is only used in two places and existing omid ones suffice.
This commit is contained in:
@@ -900,6 +900,9 @@ misaligned potion colors due to lack of reset_glyphmap() following obj shuffle;
|
||||
closed doors were described as "horizontal closed door" or "vertical closed
|
||||
door" instead of just "closed door"
|
||||
glob shrinkage while hero was away from glob's level wasn't handled properly
|
||||
unpaid shop-owned glob that shrank to nothing had weight 0 which triggered
|
||||
onbill warnings when 'sanity_check' was On; for 'Ix' and itemized
|
||||
billing, the empty weight was shown to player if 'wizweight' was On
|
||||
|
||||
curses: 'msg_window' option wasn't functional for curses unless the binary
|
||||
also included tty support
|
||||
|
||||
Reference in New Issue
Block a user