diff options
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) |
