v0.7: CrystalOrb Canvas 粒子系统升级 + 角色属性系统(四维)

CrystalOrb 升级(P0 视觉震撼):
- 从 CSS 动画重写为 Canvas 2D 粒子系统
- 环绕能量粒子(3层32个,emerald/fuchsia/rose,带拖尾)
- 环境星尘(40个,闪烁漂移)
- 点击爆发粒子 + 冲击波环(连击解锁更多层)
- 晶核辉光呼吸 + 3层六边形纹理 + 鼠标视差
- VLM 视觉评分 8/10

角色属性系统(P1 RPG 深度):
- 新增 attributes.ts 逻辑层 + AttributesPanel UI
- 四维属性:探索力/智慧/勇气/灵感(emerald/fuchsia/amber/rose)
- 两区加成公式(0-50线性,50-100递减)
- 飞升获得属性点(ascensions×2+1),手动分配
- 完成活动获得属性经验,自动升级
- 接入 pulse/clickNode/resolveCurrentNode/grantCruiseReward/tickTide
- 旧存档兼容(migrateAttributes)
- 新增 2 项成就 + 第 8 个标签页「角色」
- VLM 视觉评分 7-8/10

lint 零错误;HTTP 200
This commit is contained in:
2026-06-23 21:00:42 +00:00
parent 8474f4caa7
commit 4545fe380b
11 changed files with 1812 additions and 159 deletions
+14
View File
@@ -45,6 +45,20 @@ export const INITIAL_STATE = {
starTidesEncountered: [] as string[],
crystalsDecoded: 0,
},
// v0.7 角色属性系统
attributes: {
exploration: 0,
wisdom: 0,
courage: 0,
inspiration: 0,
} as import("./attributes").CharacterAttributes,
attributeProgress: {
exploration: { exp: 0, level: 0 },
wisdom: { exp: 0, level: 0 },
courage: { exp: 0, level: 0 },
inspiration: { exp: 0, level: 0 },
} as import("./attributes").AttributeProgress,
pendingAttrPoints: 0,
theme: "dark" as const,
soundOn: true,
};