aboutsummaryrefslogtreecommitdiff
path: root/building_guide/bank.md
diff options
context:
space:
mode:
Diffstat (limited to 'building_guide/bank.md')
-rw-r--r--building_guide/bank.md23
1 files changed, 4 insertions, 19 deletions
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).