feat(handel): NPC-Registry, Dialog, Laden und Stapelregel

Vierzehnte Registry: NPCs sind keine Wesen — kein Kampfzustand, keine
Initiative, keine Attribute. Ihre Antwortliste ist flach; was erst nach
einer Antwort erscheint, ist eine Option mit einer Bedingung.

- open_shop als elfte Aktion (game/ setzt eine Absicht, die UI schiebt)
- Talk/Choose/Buy/Sell, Talk wirkt auf das eigene Feld wie PickUp
- Preisspanne statt Goldkonto beim Haendler, Charisma in der Preisfunktion
- Warenkorb einmal bei der Etagenerzeugung gezogen
- Stapelregel aus Ticket 07 endlich gebaut: 50-120 Gold war 120 Eintraege
- Dialog- und Shop-Screen, NPC-Symbol im Grid
This commit is contained in:
2026-08-12 20:31:35 +02:00
parent 197f62ce33
commit 7ed15afaf9
22 changed files with 818 additions and 26 deletions

View File

@@ -86,3 +86,18 @@ entries = [
{ item = "core:gold", weight = 10, count = "50-120" },
{ item = "core:health_potion", weight = 6, count = "2-4" },
]
# --- Laden ----------------------------------------------------------------
# Der Warenkorb wird EINMAL bei der Erzeugung der Etage gezogen. Kein Gold in
# der Tabelle: Der Haendler verkauft Waren, er verschenkt keine Waehrung.
[[loot_tables]]
id = "blacksmith_stock"
rolls = "2-4"
entries = [
{ item = "core:health_potion", guaranteed = true, count = "3-5" },
{ item = "core:iron_sword", weight = 5, affixes = "core:weapon_affixes" },
{ item = "core:leather_cap", weight = 5, affixes = "core:armor_affixes" },
{ item = "core:thorn_mail", weight = 2, affixes = "core:armor_affixes" },
{ item = "core:bone_blade", weight = 1, affixes = "core:weapon_affixes" },
]