From 7e197babfbb68d7f7d1866d6a0ca47cf17d3af23 Mon Sep 17 00:00:00 2001 From: "Somhairle H. Marisol" Date: Sun, 20 Sep 2026 14:20:54 +0800 Subject: feat(m5): 增加可交互对话、需求观察与编年史 MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit [变更性质] - 本提交新增 M5 用户能力,不是缺陷修复。 [新增功能] - 增加玩家六意图对话、需求面板、可见 NPC 观察、编年史与因果谣言冒烟验收。 [实现方案] - 在 Kernel 中扩展 Avatar Mind、对话结果、观察数据、Annals 和确定性谣言链。 - 在 Desktop 中加入键盘交互、像素文本面板和运行时状态展示,并补充 Headless 与测试覆盖。 [影响范围] - 覆盖 Kernel、Headless、Desktop 及测试工程;保留既有 M3/M4 确定性与交易、关系、谣言行为。 --- src/LivingVillage.Kernel.Tests/TradeTests.fs | 19 +++++++++++++++---- 1 file changed, 15 insertions(+), 4 deletions(-) (limited to 'src/LivingVillage.Kernel.Tests/TradeTests.fs') diff --git a/src/LivingVillage.Kernel.Tests/TradeTests.fs b/src/LivingVillage.Kernel.Tests/TradeTests.fs index 5a0e724..77e5658 100644 --- a/src/LivingVillage.Kernel.Tests/TradeTests.fs +++ b/src/LivingVillage.Kernel.Tests/TradeTests.fs @@ -39,13 +39,24 @@ module private TradeHarness = { Tick = 10L Time = 0.0 Rng = Rng.ofSeed 7UL - Avatar = { Pos = { X = 0.0f; Y = 0.0f } } + Avatar = + { Pos = { X = 0.0f; Y = 0.0f } + Mind = + { Needs = needs 50.0f 100.0f + Personality = personality + Action = Wander + Target = actionTarget Wander + ActionAge = 0L + EffectDone = false + HungerFlagged = false + Memory = [] } } NoHost = { Reserved = 0UL } Npcs = - [| npc 0 buyerMoney buyerHunger buyerFood [] None - npc 1 sellerMoney sellerHunger sellerFood sellerMemory None |] + [| npc 0 buyerMoney buyerHunger buyerFood [] None + npc 1 sellerMoney sellerHunger sellerFood sellerMemory None |] Events = [] - Rumors = [] } + Rumors = [] + Annals = [] } let request quantity = { Buyer = NpcId 0 -- cgit v1.2.3