feat: v0.13.0 Workbench multi-panel via panel v0.2.0

D.2-revisit closes the Workbench Gate-2 walkthrough: right-click
on Workbench now opens workbench_crafting (left-half layout-slot)
+ workbench_inv (right-half) simultaneously, replacing the v0.12.0
auto-switch workaround. Both panels visible at the same time.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
This commit is contained in:
Axel Meyer
2026-06-15 02:01:39 +02:00
parent 5cd42caaa7
commit 1fa0628c83
3 changed files with 41 additions and 26 deletions

View File

@@ -8,9 +8,9 @@ callback, foot-body-orientation ("tactical twist"), scale-deformation walk
cycle, and inheritance-decoupled foot sprites. End-to-end inventory pickup/drop
demo: pick up a rock into a backpack container, drop it back into the world.
**Version:** 0.12.0
**Version:** 0.13.0
**Module-ID:** vagrant-skeleton
**Requires:** lib-core.input >=0.4.0, lib-core.camera >=0.3.0, lib-core.render >=0.1.0, lib-core.maps >=0.1.2, lib-core.puppet >=0.4.4, lib-core.interaction >=0.1.0, lib-core.composition >=0.3.0, lib-core.actor >=0.1.0, lib-core.inventory-list >=0.1.0, lib-core.panel >=0.1.0, lib-core.inventory-list-display >=0.1.0, lib-core.notify >=0.1.0, lib-core.notify-display >=0.1.0, lib-core.world-overlay >=0.1.0, lib-core.crafting >=0.2.0, lib-core.crafting-display >=0.2.0, lib-asset.prototype-subterrain >=0.1.0
**Requires:** lib-core.input >=0.4.0, lib-core.camera >=0.3.0, lib-core.render >=0.1.0, lib-core.maps >=0.1.2, lib-core.puppet >=0.4.4, lib-core.interaction >=0.1.0, lib-core.composition >=0.3.0, lib-core.actor >=0.1.0, lib-core.inventory-list >=0.1.0, lib-core.panel >=0.2.0, lib-core.inventory-list-display >=0.1.0, lib-core.notify >=0.1.0, lib-core.notify-display >=0.1.0, lib-core.world-overlay >=0.1.0, lib-core.crafting >=0.2.0, lib-core.crafting-display >=0.2.0, lib-asset.prototype-subterrain >=0.1.0
**Tags:** test-chamber, puppet, walking-sim, interaction
## Topology
@@ -27,7 +27,7 @@ demo: pick up a rock into a backpack container, drop it back into the world.
- **Q** — quick-drop (LIFO): places the most-recently-added backpack item at player position (+30px right)
- **Tab** — toggle inventory panel (Backpack contents)
- **C** — toggle Backpack-Crafting panel (lists known recipes; availability dimmed by inventory)
- **Right-Click on Workbench** (within range) — opens Workbench-Crafting + Workbench-Inventory panels (Phase D v0.2)
- **Right-Click on Workbench** (within range) — opens Workbench-Crafting (left-half) + Workbench-Inventory (right-half) panels side-by-side (panel v0.2.0 multi-active)
- **Right-Click on item row** (inventory panel): context menu with **Drop** / **Inspect** (Backpack) or **Take** / **Inspect** (Workbench)
- **Right-Click on recipe row** (crafting panel): context menu with **Craft** / **Inspect**
- **L** — toggle game-log (chronological list of all events)
@@ -72,17 +72,18 @@ The world contains five notable entities at startup:
**Multiple pickups:** Each E → Q → E cycle moves the same rock in and out.
Only one rock is spawned per session.
**Workbench flow (Phase D v0.2):**
**Workbench flow (Phase D v0.2 + v0.13.0 multi-panel):**
- Pick up rock + stick into the backpack (E on each).
- Walk to the Workbench (just above the Backpack at (350, 380)) and
right-click within 40px range.
- Two panels open simultaneously (Workbench-Crafting + Workbench-Inventory).
Because `lib-core.panel` v0.1 is single-active, only one panel is visible
at a time — closing it (X) reveals the other.
- Both panels open simultaneously, side-by-side: Workbench-Crafting in
the **left-half** layout-slot, Workbench-Inventory in the **right-half**
slot (panel v0.2.0 multi-active + layout-slots).
- Right-click on a recipe row (e.g. **Stone Pick**) → context menu with
**Craft** + **Inspect**. Click **Craft** → crafted item lands in
**Workbench-Inventory** (NOT Backpack).
- Open Workbench-Inventory, right-click on the crafted item → **Take** moves
**Workbench-Inventory** (NOT Backpack); it appears in the right-half
panel immediately.
- Right-click on the crafted item in Workbench-Inventory → **Take** moves
it to the Backpack; a "Took <item>" toast appears.
- Crafting inputs are aggregated from `{backpack, workbench}` (drain order:
backpack first, then workbench).
@@ -141,6 +142,17 @@ Only one rock is spawned per session.
## CHANGELOG
### v0.13.0 — Workbench Multi-Panel via lib-core.panel v0.2.0
- Right-click on Workbench now opens BOTH panels simultaneously:
`workbench_crafting` (layout="left-half") + `workbench_inv`
(layout="right-half").
- Replaces the v0.12.0 auto-switch workaround that was forced by
panel v0.1.1's single-active limitation. The Workbench Gate-2
walkthrough per `2026-06-14-phase-D-workbench-design.md` §7 now
runs cleanly.
- Deps: lib-core.panel 0.1.1 → 0.2.0 (multi-active + layout-slots).
### v0.12.0 — Workbench
- **New: Workbench entity** in the world at (350, 380) — `composition.define_template`
@@ -165,7 +177,8 @@ Only one rock is spawned per session.
enforces one active widget. Opening both Workbench panels means only
the second (`workbench_inv`) is visible until the player closes it (X);
closing it reveals `workbench_crafting`. Proper side-by-side stacking
is a future panel-lib slice.
is a future panel-lib slice. **Resolved in v0.13.0** via panel v0.2.0
multi-active + layout-slots.
- **Deps**: crafting 0.1.0 → 0.2.0, crafting-display 0.1.0 → 0.2.0.
- **Notify events-Channel**: filter um `"transfer"` erweitert, damit
Take-Action-Toasts im events-channel landen.