aboutsummaryrefslogtreecommitdiff
path: root/internal/game/cmd_wear.go
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-09-18 17:48:26 -0400
committerhistoria <[not public]>2026-09-18 17:48:26 -0400
commit8fe9e3c3fef0049df82281a62afe35dda516dfe2 (patch)
treedd269f2c0710f334e19f00a191260ebc46284a90 /internal/game/cmd_wear.go
parent194164a77eb4f2479b94c19e6f0e1278ab608781 (diff)
downloadthehouseoficarus-8fe9e3c3fef0049df82281a62afe35dda516dfe2.tar.gz
fix: close combat ghost, admin traversal, login throttle, journal double-pay, and quality/economy gaps
Diffstat (limited to 'internal/game/cmd_wear.go')
-rw-r--r--internal/game/cmd_wear.go7
1 files changed, 7 insertions, 0 deletions
diff --git a/internal/game/cmd_wear.go b/internal/game/cmd_wear.go
index 5a293de..e459386 100644
--- a/internal/game/cmd_wear.go
+++ b/internal/game/cmd_wear.go
@@ -141,6 +141,13 @@ func (g *Game) displacedEquipSlot(p *player.Player, itemID string) *player.Inven
slot.MaxQuality = def.MaxQuality
}
delete(p.EquipQuality, itemID)
+ return slot
+ }
+ // No charge record: keep a max_quality item quality-bearing but empty so
+ // consumeFireTool refuses it instead of treating it as an infinite
+ // firesteel. Stamping full quality here would refill the item.
+ if def, _ := g.ItemStore.Load(itemID); def != nil && def.MaxQuality > 0 {
+ slot.MaxQuality = def.MaxQuality
}
return slot
}