summaryrefslogtreecommitdiff
path: root/src/LivingVillage.Kernel/Occupation.fs
diff options
context:
space:
mode:
Diffstat (limited to 'src/LivingVillage.Kernel/Occupation.fs')
-rw-r--r--src/LivingVillage.Kernel/Occupation.fs20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/LivingVillage.Kernel/Occupation.fs b/src/LivingVillage.Kernel/Occupation.fs
index e0507ae..a3c37bd 100644
--- a/src/LivingVillage.Kernel/Occupation.fs
+++ b/src/LivingVillage.Kernel/Occupation.fs
@@ -43,15 +43,6 @@ module Occupation =
| Peddler -> { Kind = Peddler; InitialMoney = 90; InitialEnergy = 100.0f; InitialInventory = [ Sim.Food, 6; Sim.Spice, 4 ] }
| Scholar -> { Kind = Scholar; InitialMoney = 70; InitialEnergy = 100.0f; InitialInventory = [ Sim.Food, 10; Sim.Scroll, 2 ] }
- /// Placeholder carried in save v3 until the task-system slice lands (design §3).
- type State =
- { Profile: Profile
- TaskToken: int
- StoryStage: int }
-
- let stateOf (kind: Kind) : State =
- { Profile = profileOf kind; TaskToken = 0; StoryStage = 0 }
-
// ---- 每日任务(design §3):Kernel 侧纯函数片,不进 Sim.step 数值路径 ----
type TaskState =
@@ -169,3 +160,14 @@ module Occupation =
OfferedTick = offered
DueTick = offered + Sim.ticksPerDay - 1L
State = Offered }
+
+ /// 挂在玩家侧的职业状态,随存档 v3 保存(design §2)。
+ /// Today = 当日任务(§3);TaskToken 保留为 v3 前缀占位扩展位(恒 0,暂未启用)。
+ type State =
+ { Profile: Profile
+ TaskToken: int
+ Today: DailyTask option
+ StoryStage: int }
+
+ let stateOf (kind: Kind) : State =
+ { Profile = profileOf kind; TaskToken = 0; Today = None; StoryStage = 0 }