From aa3baa953ea5c4f99f5f23cb3eef9400338b61ec Mon Sep 17 00:00:00 2001 From: "Somhairle H. Marisol" Date: Mon, 28 Sep 2026 22:38:52 +0800 Subject: p51: 职业系统实现首切片——开局钱/体力/背包侧车 + 当日任务/跨日刷新 + StartNewGameWith 读回(design §2.4-1) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/LivingVillage.Desktop/WorldBootstrap.fs | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'src/LivingVillage.Desktop/WorldBootstrap.fs') diff --git a/src/LivingVillage.Desktop/WorldBootstrap.fs b/src/LivingVillage.Desktop/WorldBootstrap.fs index bf0ef65..7be24a7 100644 --- a/src/LivingVillage.Desktop/WorldBootstrap.fs +++ b/src/LivingVillage.Desktop/WorldBootstrap.fs @@ -35,6 +35,15 @@ module WorldBootstrap = nowTick state.Today } + /// 开局身份年鉴(design §3):带职业建世界后写入一条 `StoryAnnal`「以…为生」, + /// 形成个人传记线。Game 与测试共用同一口径。 + let appendIdentityAnnal (state: Occupation.State) (world: World) : World = + Sim.appendAnnal + { Tick = world.Tick + Kind = Sim.StoryAnnal + Summary = Occupation.Story.identitySummaryOf state.Profile.Kind } + world + /// 以显式站位建世界:avatarTile 为玩家出生瓦片,npcTiles 为 NPC 出生瓦片序列。 /// 64x48 旧档与世界走 `avatarSpawnPosition` + `npcSpawnTiles` 的等价调用,字节口径不变。 let initialWorldWithPlacement -- cgit v1.2.3