Commit Graph

85 Commits

Author SHA1 Message Date
panFD
10ab03b871 feat(audio): add new audio assets and replace old wav files
1. add new mp3 format audio files and their meta configuration files
2. delete old unused wav format audio files and their meta files
3. add flash effect audio playback logic in skill casting system
2026-06-13 16:35:56 +08:00
panFD
092d0e4371 feat(hero&skill): 新增击晕控制相关技能与属性支持
1. 新增击晕率属性计算与驻场加成逻辑
2. 重构冰冻相关英雄为击晕控制英雄
3. 完善技能描述显示与配置参数
4. 更新UI预制体 sprite 配置(仅为资源变更)
2026-06-12 22:12:35 +08:00
panFD
44ce6cd30c feat: 添加击晕状态相关功能
1. 新增击晕概率、抗性属性配置与组件字段
2. 实现击晕判定逻辑与视图特效播放
3. 增加击晕时技能CD暂停清零的处理
4. 配置默认击晕持续时间为2秒
2026-06-12 21:34:39 +08:00
pan
0c9818ca27 fix(cast&skill): 修复技能预制体加载问题,重构代码并添加调试日志
为SCastSystem添加多处调试日志,便于排查技能施法相关问题
重构Skill类的load方法,将同步预制体获取改为异步加载逻辑
封装重复的技能节点初始化逻辑为内部函数,提升代码可读性
修复预制体未预加载时无法创建技能实体的问题
2026-06-04 15:25:43 +08:00
pan
efe6cc0dd7 refactor(skill): 重构技能盒子管理为ECS实体架构
新增SBox ECS实体,统一管理技能盒子的创建、挂载与销毁
重构MissSkillsComp,改用SBox实体替代直接实例化技能节点
更新SkillBoxComp,新增实体引用以通过ECS生命周期销毁节点
临时调整SCastSystem的索敌范围为全屏级,方便测试
2026-06-04 14:41:27 +08:00
pan
c5d521136d 修复(卡牌&施法系统): 修正卡牌消耗与施法目标选择逻辑
调整“持续天降火球”技能卡牌的法力消耗从5改为0,修复错误配置;优化敌方技能的施法目标选择逻辑,通过索敌范围获取真实敌人位置,替代原有的固定偏移位置,提升技能释放准确性
2026-06-04 14:14:02 +08:00
pan
1855bcec4c feat(card skill): add skill parameter override support
1. 新增卡牌技能参数覆写配置项,支持自定义伤害、buff数值等
2. 调整UI布局的上下边框参数,适配技能框显示
3. 完整打通技能覆写参数从配置到技能释放的全链路
2026-06-04 10:43:53 +08:00
walkpan
fd60191324 refactor(skill): 调整技能触发枚举的存放位置与使用方式
将SkillTriggerType枚举从GameEvent.ts迁移到heroSet.ts,统一管理技能触发相关配置,同时更新所有引用该枚举的文件路径,优化代码结构与维护性
2026-05-24 23:38:09 +08:00
walkpan
0b59f601d8 feat(penetration): 将穿刺机制从固定次数改为概率触发模式
统一重命名所有穿刺相关属性为 `puncture_chance` 以规范代码命名,新增FightSet.PUNCTURE_DOWN配置项控制每次穿透后的概率衰减值。调整6408号穿刺强化技能,将提升穿刺次数效果改为提升20%穿透概率并修正AP消耗。在技能命中逻辑中添加穿透概率判定逻辑,实现概率穿透效果,同时更新所有引用原属性的代码位置确保功能正常。
2026-05-23 14:08:45 +08:00
walkpan
9eccca7e2a refactor(skill/hero): 重构技能buff系统,优化属性处理与技能加成逻辑
- 新增HeroAttrsComp的add_special_attr方法,实现动态累加任意数字类型的英雄属性
- 废弃旧的BuffConf数组配置格式,改用单一buff_type字段简化技能buff配置
- 修复金币类技能加成未随技能等级提升的问题,调整计算逻辑为baseGold + sUp.ap * skillLv
- 重构applyActualFriendlyEffect方法,添加技能等级参数,按buff类型匹配对应升级加成
- 更新所有内置技能配置为新的格式规范
2026-05-23 13:26:11 +08:00
walkpan
fce7646de6 feat(技能系统): 新增获取金币技能功能
新增金币类型技能枚举与配置字段,添加6303号获取金币技能配置;新增通用的技能结束动画播放逻辑,当技能配置了endAnm时自动播放;完善施法系统的金币技能处理逻辑,计算并添加对应金币;新增对应的技能prefab资源文件。
2026-05-23 12:29:26 +08:00
walkpan
88d7bdae47 feat(skill): 支持技能参数自定义覆盖
本次修改实现同技能不同角色的差异化技能效果:
1. 新增SkillOverrides接口与mergeSkillParams工具函数,用于合并基础技能配置和角色覆盖参数
2. 更新英雄配置、属性组件、触发辅助系统与施法系统以适配该机制
3. 为盾骑士、医师添加示例差异化配置,验证功能可行性
4. 整理技能配置,删除冗余重复的旧技能条目
5. 新增技能重构设计计划文档,替换旧的迁移计划文档
2026-05-23 12:11:00 +08:00
panw
7c54f58be1 refactor(missionMon): 扩展为6路刷怪并优化中路判定逻辑
1.  将原3路刷怪扩展为6路,调整刷怪线Y轴偏移配置
2.  优化怪物中路判定,使用常量BoxSet.GAME_LINE替代硬编码30阈值
3.  改进均衡选路逻辑,支持多候选路随机选择
4.  为怪物出生位置增加Y轴随机偏移实现多路线进军
2026-05-21 16:58:29 +08:00
panw
fc3f4d7375 refactor(skill): 重构技能触发逻辑,提取统一工具类
将分散在Hero、Mon、HeroAtkSystem、SCastSystem、MissionComp中的技能触发代码统一封装,集中处理触发次数加成、实体合法性校验与技能事件派发,同时新增SkillTriggerType枚举统一管理技能触发类型,简化业务调用并消除重复模板代码。
2026-05-21 11:10:27 +08:00
panw
b01a3d2b84 feat(skill): 重做普攻弹道逻辑,优化攻击命中表现
1. 新增atk_ci普攻预制体,替换原有的atk_light预制体配置
2. 调整普攻预制体的位置、缩放属性,更新技能配置的sp名
3. 重构施法目标坐标计算,修正Y轴高度偏移以命中目标中心
4. 优化线性弹道移动逻辑,统一处理弹道延长和旋转计算
5. 更新攻击动画的帧时长和精灵贴图资源
2026-05-18 10:53:21 +08:00
walkpan
3e84566f94 refactor(hero&monster): 统一使用dis字段获取攻击距离
移除HeroDisVal映射表,改为直接从实体组件读取配置的dis属性作为攻击距离,同时补全所有英雄和怪物配置中的dis字段
2026-05-18 09:29:22 +08:00
walkpan
048595887e fix(hero cast): 调整敌我单位的目标选择逻辑
重构了SCastSystem中的目标查找逻辑,区分英雄和怪物的目标选择规则:英雄仅按X轴距离选择最近目标,怪物优先选择中路目标后再比较距离,同时更新了对应注释说明。
2026-05-17 21:36:58 +08:00
panw
9b35482b3c refactor(hero): 统一英雄攻击射程配置并优化射程判断
1.  将MoveSystem和MonMoveSystem中的硬编码射程常量替换为HeroDisVal统一配置
2.  调整近战英雄默认攻击射程为120,修正原硬编码数值不一致问题
3.  优化施法射程计算逻辑,复用HeroDisVal配置
4.  为敌人查找逻辑添加同路优先筛选逻辑
5.  修正部分英雄技能的弹道类型为贝塞尔曲线
6.  移除冗余的射程常量定义,统一配置管理
2026-05-12 16:32:38 +08:00
walkpan
b588fd06a0 feat(评分系统): 实现多维度游戏评分统计与结算
- 扩展 GameScoreStats 数据结构,新增战绩、输出、防御、构建和效率五个维度的统计字段
- 在战斗、治疗、购卡、刷新等关键节点实时采集评分数据
- 实现评分数据重置机制,确保每局数据独立
- 重构总分计算逻辑,采用五维加权评分模型
- 新增初始金币收入统计,完善资源利用效率评估
2026-04-25 21:52:59 +08:00
walkpan
033fd44560 feat(ui): 增加卡牌点击放大功能并调整动画速度
- 点击卡牌可切换放大/缩小状态,放大时显示详细信息并调整位置层级
- 调整技能准备动画的播放速度和时长以优化视觉效果
- 修复技能触发逻辑,为未处理的类型添加默认动画播放
- 在MissionCardComp中记录卡牌原始定位点用于布局管理
2026-04-20 23:36:38 +08:00
walkpan
e3c6aad172 refactor(hero): 将触发技能配置从 HeroInfo 移至 HeroAttrsComp
重构英雄和怪物实体的创建逻辑,将 call、dead、fstart、fend、atking、atked 等触发技能配置从静态 HeroInfo 表复制到 HeroAttrsComp 组件实例中。
修改 SCastSystem、HeroAtkSystem、MissionComp 和 HeroViewComp 中的技能触发逻辑,改为直接读取组件内的配置。
这消除了对全局静态配置的依赖,使技能触发逻辑与实体数据更紧密地绑定,提高了代码的内聚性和可维护性。
2026-04-15 22:27:38 +08:00
panw
dff9983e38 refactor(SCastSystem): 移除友方技能施放特效逻辑以简化代码
移除playFriendlyCastEffect和doPlayFriendlyCastEffect方法及相关特效播放逻辑,直接调用applyActualFriendlyEffect应用效果。这些特效逻辑与核心功能无关且增加了代码复杂度。
2026-04-15 17:22:21 +08:00
panw
bf799a84fe refactor: 移除英雄击退相关属性和逻辑
移除 HeroAttrsComp 中的 back_chance 属性及相关配置,清理 SCastSystem、Skill 和 HeroAtkSystem 中击退概率的计算与判定逻辑,简化攻击效果处理流程。
2026-04-15 16:20:19 +08:00
panw
52fe4358ea feat(技能提示): 在技能名称后显示施放次数
当技能有多次施放时,在技能名称后添加"*N"标识
2026-04-15 14:41:23 +08:00
panw
4995097606 feat(英雄): 添加普通攻击后触发技能机制
在 HeroInfo 接口中添加 atking 字段,用于配置普攻后触发的技能。
在 SCastSystem 的 castSkill 方法中,当释放的技能为普通技能时,增加攻击计数并检查是否满足触发条件。
新增 checkAndTriggerAtkingSkills 方法,根据配置的触发次数,通过消息系统触发对应技能。
2026-04-15 10:47:35 +08:00
walkpan
5520473e71 fix: 调整友方技能特效位置和动画轨迹
- 修正buff.prefab的缩放和透明度,提升视觉效果
- 调整sbox.prefab中多个UI元素的位置和对齐方式
- 简化友方技能特效动画为直线运动,移除贝塞尔曲线计算
- 为技能特效添加高度偏移,避免与角色模型重叠
2026-04-06 23:13:40 +08:00
walkpan
197ecefe80 feat(技能): 为友方技能添加飞行特效并优化目标选择逻辑
- 新增友方技能释放时的飞行特效,包括抛物线动画和缩放旋转效果
- 重构 applyFriendlySkillEffects 方法,将特效播放与实际效果应用分离
- 调整 buff.prefab 的缩放比例从 0.2 增大到 0.5 以适配新特效
- 优化友方技能目标选择逻辑,确保特效从施法位置正确飞向目标
2026-04-06 15:35:11 +08:00
walkpan
ee380ff668 feat(英雄): 动态计算技能卡牌的虚拟攻击力
- 根据卡牌等级给予基础成长,使用与英雄升级相同的公式
- 获取场上最高攻击力英雄的数值,确保后期治疗和增益效果足够
- 移除固定的基准攻击力,使技能数值更适应实际战斗场景
2026-04-06 10:05:10 +08:00
walkpan
dc9c6cc94a feat: 实现技能卡牌系统并添加相关配置
- 在 GameSet 中新增技能卡牌释放起始坐标常量
- 卡牌使用组件增加技能卡释放事件分发
- 任务英雄组件监听技能卡事件并转发给技能施放系统
- 卡牌组件支持技能卡牌的显示和等级星级
- 卡牌配置中添加技能卡牌池和对应的配置信息
- 技能施放系统扩展以支持卡牌技能的直接触发
2026-04-05 23:07:18 +08:00
walkpan
5d188bb5aa fix(英雄动画): 修正死亡状态播放动画的位置基准
将死亡状态动画的播放从 playReady 改为 playOther,并确保动画以英雄当前位置为基准挂载到父节点,避免英雄节点销毁时动画被中断。
2026-04-05 22:55:26 +08:00
walkpan
c054209025 feat: 为召唤和死亡触发技能添加动画效果
- 在 Hero、Monster 和 HeroAtkSystem 中分发技能触发事件时,增加 triggerType 参数以区分召唤和死亡
- 修改 SCastSystem 的 forceCastTriggerSkill 方法,根据 triggerType 播放对应的准备动画(黄色表示召唤,死亡动画表示死亡)
- 调整 hnode.prefab 中按钮的布局和样式,移除特定精灵帧以使用默认样式
2026-04-05 22:49:01 +08:00
walkpan
8b4ccfd484 fix(assets): 优化精灵图集布局并修复技能系统内存泄漏
- 重构精灵图集(aui.plist)布局,调整纹理坐标与旋转状态,提升图集空间利用率
- 在SCastSystem中添加onDestroy方法,注销全局事件监听,防止内存泄漏
2026-04-05 22:25:14 +08:00
walkpan
95f4209201 fix(技能系统): 调整强制释放技能的战斗状态检查逻辑
将无条件检查是否在战斗中改为仅对敌方目标技能进行战斗状态检查。友方增益和护盾技能现在可以在非战斗状态下释放,提高游戏体验的流畅性。
2026-04-05 22:10:25 +08:00
walkpan
ef07982645 feat(技能): 新增触发技能机制并调整死亡特效颜色
- 在 GameEvent 枚举中添加 TriggerSkill 事件用于技能触发
- 为 Hero 和 Monster 实体添加召唤入场时的 call 技能触发
- 在 HeroAtkSystem 中实现死亡时的 dead 技能触发
- 扩展 SCastSystem 支持强制触发技能(忽略CD和动画前摇)
- 将死亡技能特效颜色从灰色调整为白色以提升视觉效果
2026-04-05 22:09:16 +08:00
walkpan
a14115fb6a feat(技能): 优化治疗技能的目标选择逻辑
将治疗技能的目标选择从随机选择后按血量排序改为优先选择缺失生命值最多的目标,提升治疗效率
2026-04-04 08:54:19 +08:00
panw
5889423db0 fix: 调整战斗边界并修复英雄出界时仍能施法的问题
- 缩小地图左右边界从±420到±360,优化战斗区域
- 增加英雄位置边界检查,出界时禁止施法技能
- 微调任务卡牌界面英雄信息项间距从10减至5
- 修复卡牌预制体缩放值错误(x从1改为-1)
2026-03-31 17:18:30 +08:00
panw
3d97da8271 fix(技能): 调整贝塞尔曲线起始高度并修复范围技能目标位置
当技能类型为贝塞尔曲线时,直接使用最近敌人的位置作为目标位置,避免范围技能目标位置计算错误。同时将贝塞尔曲线的起始高度从18调整为25,以优化技能表现。
2026-03-30 16:48:30 +08:00
walkpan
9a7bafed2f refactor(config): 合并游戏常量配置并整理代码结构
- 删除 GameConst.ts 文件,将其中的战斗常量迁移至 GameSet.ts
- 在 GameSet.ts 中重新组织 FightSet、IndexSet 和 TooltipTypes 枚举,提升可读性
- 更新 SCastSystem.ts 中技能施放延迟的引用,从 GameConst 改为 FightSet
- 在 CardSet.ts 中添加空行以改善代码格式
2026-03-29 12:06:03 +08:00
panw
cd0004e37c feat(护盾): 将护盾机制从数值吸收改为次数免疫
- 护盾技能配置的 `ap` 字段现在表示免疫次数而非攻击力百分比
- 修改护盾计算逻辑,每次受到攻击消耗1点护盾值
- 更新日志和注释以反映新的护盾行为
2026-03-27 15:22:16 +08:00
panw
a42d34b003 fix(战斗逻辑): 修复非战斗状态下技能释放和状态同步问题
- 在 SCastSystem 中增加战斗状态检查,防止非战斗时误触发技能
- 同步 mission.in_fight 状态到 vmdata.mission_data.in_fight 以保持数据一致性
- 调整 MissionCardComp 在波次开始时正确布局卡牌槽位并分发卡牌
- 优化游戏地平线位置和 UI 布局参数
2026-03-27 09:31:40 +08:00
panw
e018451524 fix: 修正护盾值计算公式中遗漏的百分比除数
护盾值计算原为直接使用攻击力乘以系数,实际应为攻击力乘以系数再除以100以符合设计文档中的百分比定义。
2026-03-24 16:16:12 +08:00
panw
c3badecd71 fix: 修正技能AP百分比计算错误
修复技能AP百分比计算逻辑,移除重复除以100的操作。在Skill.ts中移除多余注释,在SCastSystem.ts中正确计算治疗量,确保技能AP作为百分比值正确处理。
2026-03-24 10:39:47 +08:00
panw
b51a68bc8f fix(技能): 修正友方技能效果中AP计算错误的问题
将AP加成除以100以匹配正确的数值比例,避免技能效果过强
2026-03-24 10:31:07 +08:00
walkpan
6c1b182314 fix: 修正技能升级数据空值检查逻辑
将空值合并运算符(??)替换为三元条件运算符,确保当SkillUpList[s_uuid]为0或false时也能正确使用默认值SkillUpList[1001]。同时移除未使用的sNum变量计算。
2026-03-22 22:07:49 +08:00
walkpan
9f824a2b17 feat(技能系统): 为重复施放技能添加偏移目标与起始位置
当技能重复施放时,根据施放序号调整目标位置和起始位置,使多次施放的效果在垂直方向上产生偏移,避免完全重叠。
2026-03-22 21:56:54 +08:00
walkpan
0a66ef1035 fix(技能施放): 修复技能升级次数计算并支持多次施放
- 将 cNum 计算修正为 Math.min(2, Math.max(0, Math.floor(sUp.num ?? 0))),防止无效值
- 根据 cNum 增加技能施放循环,支持多次施放效果
- 为属性增益 buff 添加注释说明动画意图
2026-03-22 21:52:12 +08:00
walkpan
ab11b2b2d3 fix(skill): 修复技能升级配置查找和友方技能目标选择逻辑
修复SkillUpList中默认配置键值错误,从6001改为1001
修复技能升级属性计算中的空值保护,避免undefined导致的NaN
重构友方技能目标选择逻辑,添加随机选取和按血量排序功能
调整辅助技能数值从基于最大生命值百分比改为基于攻击力百分比
2026-03-22 21:46:32 +08:00
walkpan
9962a725d1 fix(技能): 修复技能升级配置和属性计算错误
- 将 SkillUpList 中的 buff_max 字段更正为 buff_hp
- 移除 add_hp 和 add_shield 方法的 isValue 参数,改为直接使用数值
- 在 SCastSystem 中应用技能升级加成计算 AP、命中次数和 buff 值
- 为 HeroAttrsComp 添加 add_hp_max 和 add_ap 方法,替换原有的通用 buff 处理逻辑
- 简化伤害和技能效果应用逻辑,确保属性计算正确
2026-03-22 21:30:27 +08:00
walkpan
61261b97c3 refactor(hero): 重构技能施放系统,分离敌友方效果处理
- 将 applyPrimaryEffect 拆分为 applyEnemySkillEffects 和 applyFriendlySkillEffects,明确职责边界
- 友方技能现在统一在 applyFriendlySkillEffects 中处理治疗、护盾和 buff 效果
- 移除冗余的 applyExtraEffects 方法,简化逻辑流程
- 为关键方法添加详细注释,提升代码可读性
2026-03-22 21:26:55 +08:00
walkpan
c75c58d13c feat(技能): 引入技能升级配置并调整伤害计算
- 新增 SkillUpList 配置表,支持技能升级时属性成长
- 修改 Skill.ts 中的伤害计算逻辑,将基础属性与升级加成结合
- 移除 SkillSet.ts 中冗余的注释行,保持代码整洁
2026-03-22 19:38:59 +08:00