Commit Graph

31 Commits

Author SHA1 Message Date
77a8adc05d feat: 特殊光环描述 2026-10-10 17:42:34 +08:00
1bcdcc3677 refactor: 特殊属性定义方式 2026-10-09 20:09:51 +08:00
8fb16a103d refactor: 删除 setAttributeDefaults 接口 2026-10-08 19:17:54 +08:00
d4cbc514f7 style(08-11): apply prettier formatting to four test files
- manager.test.ts / saveLoad.test.ts / follower.test.ts / location.test.ts

- formatting-only (eslint --fix); whitespace-stripped tokens identical, no assertion/it changes

- four packages eslint now 0 errors (6 pre-existing no-console warnings remain)
2026-10-08 16:29:05 +08:00
1bfe7080d5 test(08-03): align data-base enemy and flag tests to shipped interfaces
EnemyManager tests use a real TileStore with registered id<->num tiles; drop legacy bridge and *ById helpers (getPrefab/createEnemy take number|string); reusePrefab 2-arg; addPrefab dedupes by code only. Widen IEnemyManager.getPrefab signature to number|string (doc+impl). Flag tests align to loadState rebuilding field instances (d74cc35). Focused: 60/60 green.
2026-10-04 22:17:00 +08:00
36d8b4fb3c test(08-01): migrate data-layer tests into __test__ dirs
Move 65 *.test.ts + 6 *.perf.ts across data-{common,base,system,state} into sibling __test__/ (data-state/test -> data-state/__test__), incl. fixtures/floors.json and non-test helpers; rewrite Rule A relative specifiers (+1 depth), keep Rule B unchanged; sync script/test-data-node.ts require paths. Gates: test:ci=66 files, test:perf=6 files, eslint clean, zero config/production changes.
2026-10-04 17:34:09 +08:00
47e71b52ae refactor: EnemyManager 2026-09-24 14:40:38 +08:00
b70ccbd5f6 fix(07-02): #06-03-1 resolve the reuse mapping in enemy creation
- createEnemy/createEnemyById now resolve prefabs through internalGetPrefab,
  matching getPrefab/deletePrefab/modifyPrefabAttribute behaviour
- add a Chinese invariant comment above createEnemyById covering all
  code/id prefab entry points
- un-skip the two correct-expectation reuse mapping cases in manager.test.ts
  (assertions unchanged) and sync their Chinese comments
2026-09-15 17:16:44 +08:00
e2c163899d test(06-12): register blocked four-facing prefab reuse expectation (G-06-03-A)
- add correct-expectation it.skip for four facing codes reusing one prefab
- append 06-12 coverage-gap section to 06-COVERAGE-MAP.md
2026-09-15 10:43:03 +08:00
3e29548bfa test(06-09): cover enemy and hero save/load round trips
- add enemy/saveLoad.test.ts: Enemy/special/EnemyManager same-instance round trips across 3 compressions, codes 119/120
- add hero/saveLoad.test.ts: modifier/location/rendering/equipment/equipStore/items/follower/state round trips, codes 58/59
- add 06-SAVE-EXCLUSIONS.md: per-class excluded fields and rationale (D-42)
2026-09-14 18:57:42 +08:00
7012aa49fc test(06-03): cover EnemyManager registry, prefab, reuse and dirty (stage 3)
- registry/attribute defaults incl. error 53 for non-serializable values
- prefab add/get/create/delete/change and reuse mapping reads
- modifyPrefabAttribute callback and index rebuild
- comparer lifecycle: warn 117 on repeat compareWith, warn 118 without comparer
- skip #06-03-1 (createEnemy does not resolve reuse mapping) per D-05
2026-09-14 14:39:41 +08:00
ff752713b9 test(06-03): cover Enemy special CRUD and clone/copyFrom (stage 2)
- enemy.test.ts: addSpecial/get/has/iterate, duplicate warn 96, delete by object/code, clone/copyFrom independence
- special.test.ts: clone value independence and deepEqualsTo code/value rules, NonePropertySpecial clone
2026-09-14 14:35:24 +08:00
965868c219 test(06-03): add Enemy attribute and special unit tests (stage 1)
- enemy.test.ts: attribute get/set/add independence and cloneAttributes deep copy
- special.test.ts: CommonSerializableSpecial value/name/description and NonePropertySpecial units
- fixtures inline, legacy and save/load excluded per D-30/D-32
2026-09-14 14:32:40 +08:00
370f285964 refactor: 删除污染严重的 TEnemy 和 THero,仅在战斗系统中包含 2026-05-17 23:56:40 +08:00
8f4c4b7df2 refactor: 将 Layer 0 单独放到一个包 2026-05-17 21:32:23 +08:00
43ad3fd83e feat: IEnemyHandler 引入 IStateBase 成员 2026-05-12 17:26:57 +08:00
0da19e1697 refactor: 战斗系统文件结构 2026-05-12 17:11:33 +08:00
70a58ef4dc refactor: 地图存储
Co-authored-by: Copilot <copilot@github.com>
2026-04-26 13:33:49 +08:00
476f735adc refactor: manager 的复用方案 & fix: 类型错误
Co-authored-by: Copilot <copilot@github.com>
2026-04-24 23:12:18 +08:00
2ce50bf23e refactor: 怪物管理器存档
Co-authored-by: Copilot <copilot@github.com>
2026-04-24 22:17:01 +08:00
1a569804d8 refactor: getFlag
Some checks failed
CodeQL / Analyze (javascript) (push) Has been cancelled
2026-04-21 15:46:59 +08:00
ebfe59b4f5 chore: 注释调整与接口微调 2026-04-18 16:22:58 +08:00
79d06c31df refactor: 伤害计算 2026-04-17 17:49:24 +08:00
eaa725553b refactor: 怪物系统与勇士属性系统联动 2026-04-17 15:34:44 +08:00
89936416e1 chore: 添加必要注释 2026-04-16 13:30:52 +08:00
39e91b241f refactor: 将旧样板怪物移植单独提取出来 2026-04-15 23:12:28 +08:00
6c1acb990e reafactor: 目录结构修改 2026-04-15 22:32:07 +08:00
63e1a01fab feat: 内置最终效果 2026-04-15 18:48:59 +08:00
0517da5000 feat: 伤害计算系统 2026-04-15 18:26:25 +08:00
a24911400f refactor: 怪物基本属性改为泛型 2026-04-15 14:49:36 +08:00
057d5ab813 feat: 怪物及地图伤害系统 2026-04-14 18:10:21 +08:00