Commit Graph

42 Commits

Author SHA1 Message Date
walkpan
a08cca9cc3 feat: 添加冰冻效果并移除调试组件
- 在 GameSet 中添加冰冻时间常量 FROST_TIME
- 在 HeroAttrsComp 中新增 toFrost 方法用于处理冰冻状态
- 在 HeroAtkSystem 中增加冰冻判定,命中时触发冰冻效果并显示冰冻特效
- 简化 HeroViewComp 中的冰冻特效方法,移除眩晕特效方法
- 删除调试用的 HSkillComp 组件及其 meta 文件
- 调整 HeroBuffSystem 的计时器间隔,使冰冻状态更平滑地递减
2026-03-19 19:08:50 +08:00
walkpan
1bb2d6072e refactor: 移除眩晕机制并简化buff系统
- 删除眩晕相关属性、状态检查及动画触发
- 移除BType枚举,简化BuffConf结构,所有buff改为固定值类型
- 清理未使用的导入和配置项,包括debuffs数组和多个英雄属性
- 简化暴击伤害计算,移除施法者暴击伤害加成
- 重构冰冻状态检查逻辑,添加frost_end_time字段
2026-03-19 18:43:02 +08:00
panw
b17ec3695e feat(英雄技能): 添加技能前摇与后摇动画支持
- 在 SCastSystem 中调用 playReady 播放技能前摇动画
- 在 HeroAtkSystem 中调用 playEnd 播放技能后摇动画
- 将 playSkillEffect 重构为 playSkillAnm 以播放角色攻击动画
- 修复 HeroViewComp 中 playReady 方法名拼写错误
2026-03-18 15:17:25 +08:00
panw
eff4154ba3 perf: 增加技能对象池最大容量并优化伤害日志
将技能对象池最大容量从64提升至128,以支持更多并发技能实例。
将技能6008的结束类型从动画结束改为碰撞检测,提高准确性。
移除伤害计算中不必要的施法者属性获取和击杀计数更新,简化日志输出。
2026-03-18 10:37:25 +08:00
walkpan
a634b33f6b refactor(技能系统): 移除未使用属性并优化目标选择逻辑
- 移除 Skill.ts 中未使用的 wfuny 属性赋值
- 将 SCastSystem 中的目标选择逻辑重构为统一方法
- 在施放技能前增加目标有效性检查,避免无效操作
- 移除 HeroAtkSystem 中未使用的导入和接口字段
- 调整 SkillSet 中技能 6008 的 ready 参数值
2026-03-16 19:33:24 +08:00
walkpan
6de3a105da refactor(英雄系统): 移除主角特殊逻辑和怪物死亡处理
- 删除 HeroAttrsComp 中的 is_master 字段
- 简化 Hero.load() 方法签名,移除 is_master 和 is_friend 参数
- 移除 MissionComp 中的怪物死亡事件监听和奖励计算逻辑
- 移除 HeroViewComp 中主角复活时恢复怪物行动的逻辑
- 修改 HeroAtkSystem 中复活逻辑,不再区分主角
- 将 MissionHeroComp 中的 CallFriend 事件改为 CallHero,并清理事件监听
- 移除英雄死亡时停止怪物刷新的逻辑,简化阵营判断

这些更改旨在简化英雄系统架构,消除主角与普通英雄之间的特殊处理差异,使系统更加统一和可维护。怪物死亡奖励计算等逻辑被移至其他系统处理。
2026-03-14 13:20:02 +08:00
walkpan
a544f65d73 refactor(战斗): 重构英雄与怪物属性系统,简化数据结构
- 移除 HeroSkillsComp 组件,将技能逻辑合并到 HeroAttrsComp
- 将属性从 Attrs 枚举映射改为 HeroAttrsComp 中的独立字段
- 为 HeroAttrsComp 添加攻击和技能冷却时间管理功能
- 统一英雄和怪物的属性初始化方式,简化配置数据
- 在 GameSet 中添加击退概率配置项
- 修复 SkillView 中属性名大小写错误
2026-03-11 23:13:21 +08:00
walkpan
9d6075be6e refactor(hero): 重构英雄属性与状态管理
- 将增益效果属性组移到武器进化属性后以优化结构
- 新增 in_stun 和 in_frost 状态标志替代 isStun/isFrost 方法
- 更新状态检查逻辑以使用新的状态标志
- 移除 HeroSkillsComp 依赖以简化移动系统
- 修改伤害计算直接使用 HeroAttrsComp 属性而非 Attrs 映射
- 简化暴击、击退等判定逻辑,移除闪避和抗性计算
- 优化 reset 方法,设置合理的默认值并重置新增状态标志
- 添加状态变化时的调试日志输出
2026-03-11 22:51:48 +08:00
panw
b48547b1f1 fix(战斗系统): 调整伤害计算公式并简化属性卡牌配置
- 在伤害计算中,将防御属性从百分比减免改为固定值减免,确保至少造成1点伤害
- 移除天赋免伤对防御属性的影响,使防御计算更清晰
- 简化一阶属性卡牌配置,移除不常用的特殊属性卡牌
2026-02-06 15:55:47 +08:00
walkpan
7812855ad3 chore: 调整调试日志开关状态
修复 HeroAttrsComp 与 HeroAtkSystem 中 debugMode 默认值的矛盾,统一将系统调试关闭而组件调试开启。同时在 Hero 创建日志中增加 is_master 字段输出,便于追踪主角创建逻辑。
2026-02-04 20:57:18 +08:00
panw
b42cc2e662 feat(战斗): 调整击退机制和技能配置
- 新增后退范围配置项,统一管理击退距离
- 提高英雄击退几率从20%到50%
- 调整"蓄力一击"技能冷却时间从1秒到3秒
- 优化击退逻辑,仅对怪物生效并应用配置的后退范围
- 启用调试模式以方便战斗系统调试
2026-02-04 16:42:46 +08:00
panw
3a8f015a78 refactor: 移除调试日志并统一使用日志工具
- 删除多个文件中的 console.log/console.warn/console.error 调试输出
- 将日志输出统一替换为 mLogger 工具,支持调试模式控制
- 清理注释掉的调试代码和空方法体
2026-02-03 16:49:24 +08:00
panw
63dd22fb88 refactor: 重命名Logger类并增加错误日志方法
- 将Logger类重命名为mLogger以符合命名规范
- 新增error方法用于统一错误输出
- 在多个组件中替换console.log/warn/error为mLogger的对应方法
- 为多个组件添加debugMode属性以控制模块级日志开关
- 新增HeroMasterComp组件框架
2026-02-03 14:40:02 +08:00
panw
859ab3bc2a feat: 引入集中式日志工具类并重构调试日志
- 新增 Logger 类提供统一的日志和警告输出,支持全局和模块级开关
- 重构 SkillView、HeroViewComp 和 HeroAtkSystem 中的调试日志方法,改用 Logger 类
- 在 HeroViewComp 中添加调试模式属性便于编辑器配置
- 统一日志格式为 [标签] + 内容,提高日志可读性和维护性
2026-02-03 10:45:17 +08:00
walkpan
b2c5ffa047 refactor(战斗系统): 修改防御属性为百分比类型并优化伤害计算
- 将物理防御属性从数值型改为百分比型
- 使用 add_hp 方法替代直接修改 hp 以触发 UI 更新
- 重构伤害计算公式,明确防御减免和易伤的计算逻辑
- 调整测试英雄配置,统一使用远程攻击技能
2026-01-17 14:38:22 +08:00
walkpan
974a6d26b2 refactor(伤害系统): 将caster从HeroViewComp改为使用casterEid
统一伤害系统中施法者的标识方式,从直接使用HeroViewComp改为使用实体ID(casterEid)
修复反伤逻辑中可能存在的空指针问题
2026-01-06 14:28:48 +08:00
walkpan
20be2ae135 feat(战斗系统): 添加击退概率和控制抗性属性并调整击退逻辑
为英雄和怪物添加BACK_CHANCE和CON_RES属性
修改击退判定逻辑,考虑攻击者的击退概率和被攻击者的控制抗性
移除直接调用targetView.back()的硬编码击退逻辑
2026-01-04 23:00:41 +08:00
walkpan
9e56aeda6f fix: 调整组件注册和调试模式设置
将TalComp组件注册参数改为true以启用组件
关闭HeroAtkSystem的调试模式
2026-01-04 18:19:47 +08:00
walkpan
063b882879 feat(英雄系统): 添加英雄复活机制并调整死亡处理逻辑
初始化英雄时添加复活次数属性
修改英雄死亡事件触发条件为复活次数耗尽
移除HeroViewComp中重复的死亡事件触发
2026-01-03 19:58:12 +08:00
walkpan
4a2768cb13 refactor(游戏逻辑): 统一使用is_master判断玩家角色并简化暂停逻辑
将多处使用FacSet.HERO判断玩家角色的代码改为使用is_master属性
将stop_mon_action控制逻辑简化为统一的pause状态管理
在MissionComp初始化时确保pause状态正确重置
2026-01-03 19:33:53 +08:00
walkpan
e343e26862 refactor(游戏逻辑): 拆分游戏暂停和播放状态的检查条件
将多处 `if(!smc.mission.play || smc.mission.pause)` 条件判断拆分为独立的if语句
在VictoryComp中正确设置pause状态
移除MissionComp中多余的pause状态重置
2026-01-03 19:04:41 +08:00
walkpan
08c153ee5d fix(战斗系统): 修复角色状态切换和击退效果的问题
- 在HeroMove和MonMove系统中增加攻击状态检查,避免攻击时被错误切换为待机状态
- 为HeroAtkSystem添加受击者击退效果
- 优化HeroViewComp的击退逻辑,包括英雄和怪物,并修复重复触发问题
- 修复怪物死亡后状态切换问题
2026-01-03 13:41:08 +08:00
walkpan
1cce4ce361 feat(英雄系统): 添加英雄复活机制并控制怪物行为
实现英雄复活功能,当英雄死亡且有复活次数时延迟复活
新增is_reviving状态标记复活中状态
英雄死亡或复活时通过stop_mon_action控制怪物停止刷新和移动
2026-01-03 11:17:04 +08:00
walkpan
0a7903f138 refactor(英雄系统): 优化技能距离计算和伤害处理逻辑
移除getMaxSkillDistance方法的MP参数,改为内部处理
在应用伤害后添加英雄数据更新到VM的操作
2026-01-02 23:53:19 +08:00
walkpan
5e9494e4f8 refactor(战斗系统): 简化属性系统并移除魔法相关属性
移除魔法攻击(MAP)、魔法防御(MDEF)、元素抗性等冗余属性
将伤害减免统一由DEF属性处理,重命名CRITICAL_RESIST为CRITICAL_RES
更新相关技能、天赋和怪物配置以适应新的属性系统
删除未使用的职业成长系数配置和基础属性映射逻辑
2026-01-01 22:08:26 +08:00
walkpan
7a6d04f6c9 fix(英雄攻击系统): 添加护盾状态脏标记以同步状态变化
在护盾完全或部分吸收伤害时,设置dirty_shield标记以确保状态同步
2026-01-01 13:37:25 +08:00
walkpan
0ec1dcfd0d feat(护盾系统): 完善护盾功能并添加吸收提示
- 在GameSet.ts中添加shield类型提示
- HeroViewComp新增shield_tip方法显示护盾吸收值
- 修改HeroAttrsComp移除护盾值上限限制
- TooltipCom添加shield类型提示处理
- 调整SACastSystem中治疗和护盾技能计算方式
- HeroAtkSystem优化护盾吸收逻辑并添加吸收提示
2025-12-31 23:36:55 +08:00
panw
509539760d refactor(hero): 优化调试日志输出并添加调试工具方法
添加条件日志方法 debugLog 和 debugWarn 来统一管理调试输出
将 HeroAtkSystem 中的 console.log 调用改为条件输出
启用 HeroViewComp 的调试模式以便开发时查看日志
2025-11-28 10:29:54 +08:00
panw
7a7a6fa02c fix(战斗系统): 修复伤害数值出错问题
- 修复在DamageEvent接口和DamageQueueComp缺少ext_dmg和dmg_ratio字段问题
- 修复HeroAtkSystem的伤害计算逻辑
- 优化HeroViewComp的hp_show和mp_show方法,直接使用model数据
- 默认显示血条并增加调试日志输出
- 移除冗余的debug日志,优化伤害计算流程
2025-11-28 09:59:01 +08:00
panw
40c430546c feat(英雄系统): 添加击杀计数并优化攻击系统变量命名
添加英雄击杀计数功能,用于统计英雄击杀敌人数量
优化HeroAtkSystem中变量命名,将attackerTAttrsComp改为更清晰的CAttrsComp
修复荆棘伤害可能导致英雄死亡时未触发死亡表现的问题
2025-11-27 16:31:22 +08:00
panw
b2cc25b32b feat(战斗系统): 添加反伤机制并优化属性变量命名
添加新的技能配置5000(反伤)和实现反伤逻辑
将targetAttrs统一重命名为TAttrsComp以提高代码一致性
2025-11-27 16:12:23 +08:00
panw
cdfcf1f8f1 refactor(HeroAtkSystem): 移除未使用的DamageQueueHelper导入 2025-11-27 10:49:26 +08:00
panw
dcf739d093 refactor(战斗系统): 重构伤害计算逻辑并统一属性命名
- 将DAMAGE_REDUCTION统一重命名为DMG_RED以提高一致性
- 优化暴击判定逻辑,加入暴击抗性计算
- 重构伤害计算公式,整合易伤和免伤效果
- 移除冗余的calculateDamage方法
- 为枚举值添加注释说明
2025-11-27 10:19:54 +08:00
panw
bbf8dbb8cb refactor(战斗系统): 统一伤害减免属性命名并优化伤害计算逻辑
- 将LDMG枚举值重命名为DAMAGE_REDUCTION以提高可读性
- 修改HeroAtkSystem中的dmgCount方法,直接接收HeroAttrsComp参数
- 在伤害计算中整合天赋系统的伤害减免效果
2025-11-26 16:35:44 +08:00
panw
03a8a41980 feat(战斗系统): 添加伤害比例属性并应用到伤害计算
在SDataCom中添加dmg_ratio属性用于调整伤害比例
修改HeroAtkSystem中的伤害计算公式,将dmg_ratio纳入计算
2025-11-24 16:58:13 +08:00
panw
91c18004eb feat(技能系统): 添加额外伤害和溅射伤害功能
在技能组件中新增ext_dmg和splash字段用于处理额外伤害和溅射伤害
修改技能创建和伤害计算逻辑以支持新功能
2025-11-24 16:58:04 +08:00
panw
4ed531e100 refactor(hero): 重命名天赋相关方法以区分计数型和数值型
将计数型天赋操作方法从addTalent/consumeTalent重命名为addCountTal/useCountTal
将数值型天赋操作方法从addTalBuff/clearTalBuff重命名为addValueTal/useValueTalByUuid
更新相关文档和调用代码以保持一致性
2025-11-24 10:27:38 +08:00
panw
aefe3d6d06 refactor(战斗系统): 重构伤害计算逻辑并完善注释
重构 HeroAtkSystem 中的伤害计算方法,将基础伤害计算升级为详细的伤害计算流程
新增 applyPR 方法的详细注释,说明其计算公式和使用场景
优化代码结构,添加计算步骤的注释说明
2025-11-21 10:36:54 +08:00
panw
2dc43b5b81 refactor(HeroAtkSystem): 重构伤害计算逻辑以提高可维护性
将原有的伤害计算逻辑拆分为更清晰的步骤,引入applyPR方法统一处理伤害加成和抗性计算
根据技能类型(DType)应用对应的元素伤害计算
使用防御和魔防的百分比减免公式替代原有的固定值减免
2025-11-21 10:28:14 +08:00
panw
df23e3787d feat(战斗系统): 完善伤害计算逻辑并添加元素伤害支持
修改 HeroAtkSystem 的 dmgCount 方法,增加目标属性参数并实现完整的伤害计算逻辑,包括物理/魔法伤害区分、防御减免和元素伤害计算。同时在 SkillSet 配置中新增 map 属性和元素伤害配置,支持冰/火/风三种元素伤害类型。
2025-11-21 10:23:35 +08:00
panw
8a0cfb78dd refactor(combat): 重构战斗系统伤害计算逻辑并完善文档
- 将getNeAttrs函数移动到更合理的位置
- 重构伤害计算逻辑,明确区分施法者和被攻击者属性使用
- 完善接口和核心方法的文档注释
- 修正暴击伤害计算错误,使用施法者暴击伤害属性
- 优化闪避判定公式,考虑施法者命中率
2025-11-21 09:18:49 +08:00
panw
1c49649c00 refactor(hero): 重构英雄攻击系统并重命名文件 2025-11-20 16:48:23 +08:00