diff options
| author | historia <[not public]> | 2026-09-16 19:57:45 -0400 |
|---|---|---|
| committer | historia <[not public]> | 2026-09-16 19:57:45 -0400 |
| commit | 6ef40a5739f1723ec26cc32dfc48fe764f776dca (patch) | |
| tree | e215a4dc96ea639bcea07bb589aae3e31c3609bb /internal/game/cmd_bank.go | |
| parent | 1dad15698845d370e998f7cc5feb8aece3fab58f (diff) | |
| download | thehouseoficarus-6ef40a5739f1723ec26cc32dfc48fe764f776dca.tar.gz | |
fix: durable payouts survive journal failure, cap bank withdrawals, hash passwords off the owner loop.
Diffstat (limited to 'internal/game/cmd_bank.go')
| -rw-r--r-- | internal/game/cmd_bank.go | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/internal/game/cmd_bank.go b/internal/game/cmd_bank.go index 8da6e89..264bab2 100644 --- a/internal/game/cmd_bank.go +++ b/internal/game/cmd_bank.go @@ -390,6 +390,12 @@ func (g *Game) doBankWithdrawCredits(sess *net.Session, parts []string) { sess.WriteLine("You don't have that many banked credits.") return } + // The withdrawal must respect the shared economy cap: banked credits + // are not part of the on-hand balance, so the sum can exceed it. + if _, capErr := addCreditsChecked(p.Credits, amount); capErr != nil { + sess.WriteLine("Your wallet cannot hold that many credits.") + return + } p.BankedCredits -= amount p.Credits += amount g.saveCharacter(p) |
