From 1082f3336085c15992ca83d5553c0ba52208d70a Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Thu, 1 Oct 2026 14:38:08 -0400 Subject: feat: pai gow poker added to the casino --- building_guide/bank.md | 23 ++++------------------- 1 file changed, 4 insertions(+), 19 deletions(-) (limited to 'building_guide/bank.md') diff --git a/building_guide/bank.md b/building_guide/bank.md index acf9954..a6eb97f 100644 --- a/building_guide/bank.md +++ b/building_guide/bank.md @@ -39,25 +39,7 @@ objects: | `browse` / `list` | Show bank contents | | `leave` | Exit bank interface | -## Implementation - -### Session State - -`StateBank` (defined in `internal/net/server.go`) is the session state for the bank interface. Input is routed through `handleBankInput` in `internal/game/cmd_bank.go`. - -### Player Storage - -Bank items are stored in the `Player.Bank` field (`map[int]*InventorySlot`), saved in character YAML. Bank slots are sequential and reuse freed slots. There is no slot limit. - -### Command Dispatch - -- `bank` is classified as `ClassActive` in `classifyCommand()` -- `bank` case in `executeCommand()` calls `doBank(sess)` -- `doUse()` checks for `"bank"` or `"bank booth"` targets and routes to `doBank()` -- `doBank()` checks for a `bank_booth` object in the current room -- `handleBankInput()` dispatches deposit/withdraw/browse/leave commands - -### Data Files +## Data files | File | Purpose | |------|---------| @@ -65,3 +47,6 @@ Bank items are stored in the `Player.Bank` field (`map[int]*InventorySlot`), sav | `data/help/bank.yaml` | Help topic for the bank system | Default bank booth locations: Town Square (room 1), Forge (room 12). + +Engine internals (session state, storage layout, command dispatch) are +documented in [../dev_guide/bank.md](../dev_guide/bank.md). -- cgit v1.2.3