Commit Graph

44 Commits

Author SHA1 Message Date
a15b79b29f feat: 商店系统实现 2026-10-12 19:17:06 +08:00
c1ebd25892 refactor: 怪物特殊属性适应新接口 2026-10-12 17:05:58 +08:00
751f206829 feat: 添加裸怪物临界计算 2026-10-10 18:45:29 +08:00
77a8adc05d feat: 特殊光环描述 2026-10-10 17:42:34 +08:00
1bcdcc3677 refactor: 特殊属性定义方式 2026-10-09 20:09:51 +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
d12790280a feat: 完成数据端数据类型的构建 2026-09-20 19:11:43 +08:00
ae5a956492 chore: 删除 IDirectionMapper,全换成 IFaceHandler 2026-09-18 08:26:57 +08:00
e9e9939bd8 refactor: 删除 data-state 中的 legacy 文件夹 2026-09-17 19:37:30 +08:00
e2e27d9ff2 refactor: 删除 data-fallback 2026-09-17 18:24:07 +08:00
10755475a4 refactor: 删除 legacy-plugin-data 2026-09-17 18:21:35 +08:00
b2626bd438 fix(07-09): keep hero attribute instance stable and clear generic variance
- HeroAttribute.loadState replaces its private base object; the HeroAttribute wrapper identity is preserved so equipment/combat references stay valid across load (#06-17-1/#06-17-2).

- Clone the incoming base attribute in the constructor so the shared HERO_DEFAULT_ATTRIBUTE is no longer mutated across CoreState instances.

- Use any for the hero position in combat handler/aura/enemy-view generics to clear the 45 new type errors introduced by HeroAttribute implementing ISaveableContent.
2026-09-16 19:35:54 +08:00
25e8c0662a test(06): normalize CRLF line endings for enemy comparer/special tests 2026-09-15 13:00:04 +08:00
136a9845d6 test(06): fix lint and type errors in data-layer test files 2026-09-14 14:03:25 +08:00
e72231d9fa test(06-02): close GuardAura converter and capability coverage gap
- add a normal case for GuardAuraConverter.convert (code 26 -> GuardAura)
- assert GuardAura priority/couldApplyBase/couldApplySpecial/range/applySpecial
- keeps D-30 per-public-method coverage symmetric with CommonAura
2026-09-14 13:35:51 +08:00
7b956705d3 test(06-02): cover map damage views, converter and reducer
- Zone/Repulse/Laser/Between/Ambush views: range params, damage info, guards
- MainMapDamageConverter: per-special view order and laser face lookup
- MainMapDamageReducer: sum, max-damage type and catch/repulse union
2026-09-14 09:06:59 +08:00
b36a4ee8a9 test(06-02): cover aura converters and special registration
- CommonAura/CommonAuraConverter: range selection, buff math, capabilities
- GuardAura/GuardAuraConverter: 3x3 range, guard locator registration, own-locator and missing-source no-ops
- registerSpecials: code 0-27 registered once, guard default, name/description generation
2026-09-14 09:05:34 +08:00
5b76cf4dc9 test(06-02): cover damage calculator, final effect and comparer
- MainDamageCalculator: base, defeat, all special branches, guard recursion/warn 137, negative-damage flag, critical limit
- MainEnemyFinalEffect: solid/mimic/unchanged branches and priority
- MainEnemyComparer: base attributes, special count/code/value deep equality
2026-09-14 09:04:23 +08:00
232df083f7 fix(03-05): complete data closure coverage and Node combat gate 2026-09-10 17:52:28 +08:00
a707be4856 feat(03-01): add Node-safe core state construction
- isolate legacy loading behind internal dependencies
- provide memory saves and remove singleton back-edges
2026-09-10 15:35:01 +08:00
566ffc586a chore: 战斗返回值调整 2026-06-17 20:24:28 +08:00
604c77f7c7 refactor: 怪物接口拓展自 IStateBaseExtended 2026-06-12 22:55:08 +08:00
370f285964 refactor: 删除污染严重的 TEnemy 和 THero,仅在战斗系统中包含 2026-05-17 23:56:40 +08:00
7428f41c93 refactor: 移除 data-utils 包 2026-05-17 22:03:22 +08:00
0f5b1f4d80 refactor: 删除旧 Range 接口 2026-05-17 21:50:49 +08:00
8f4c4b7df2 refactor: 将 Layer 0 单独放到一个包 2026-05-17 21:32:23 +08:00
9ada0796b3 refactor: Layer2 数据拆分至 data-system 2026-05-16 17:06:18 +08:00
93b5349248 refactor: 激光地图伤害换用新 IFaceManager 接口 2026-05-12 19:59:10 +08:00
fbdd609001 feat: 动态图层 2026-05-11 23:35:46 +08:00
c43bfa2ab0 refactor: 地图存档的加载适配 2026-04-26 15:31:27 +08:00
476f735adc refactor: manager 的复用方案 & fix: 类型错误
Co-authored-by: Copilot <copilot@github.com>
2026-04-24 23:12:18 +08:00
8c1becc9f1 refactor: 存档系统 & 勇士属性存档
Co-authored-by: Copilot <copilot@github.com>
2026-04-24 17:29:13 +08:00
1a569804d8 refactor: getFlag
Some checks failed
CodeQL / Analyze (javascript) (push) Has been cancelled
2026-04-21 15:46:59 +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
4c0960fff7 refactor: Range 接口重构 2026-04-15 15:07:17 +08:00
a24911400f refactor: 怪物基本属性改为泛型 2026-04-15 14:49:36 +08:00
057d5ab813 feat: 怪物及地图伤害系统 2026-04-14 18:10:21 +08:00
bea2725d6a feat: 将 HumanBreak 新内容移植入该样板 2026-02-28 22:56:59 +08:00
6bf32174d8 init: 2.B 2026-02-28 20:23:34 +08:00