Commit Graph

757 Commits

Author SHA1 Message Date
panw
70c827c24f 修复(英雄移动系统): 完善移动到位判断与位置更新逻辑
修复仅检测X轴到达目标就切换待机状态的问题,新增Y轴位置校验,确保XY轴均到达目标点后才切换为待机状态;修复平滑移动时强制重置Y轴位置的问题,改为仅更新X轴坐标并保留当前Y轴位置;在边界检测和微小位移判断逻辑中加入Y轴状态校验,避免移动中途错误切换状态。
2026-05-12 19:55:42 +08:00
panw
46a62e298c feat(hero movement): 优化编队站位逻辑并添加平滑换路功能
重构英雄编队站位计算逻辑,支持多线路部署;新增平滑换路移动逻辑并控制换路速度;新增换路时触发移动动画的逻辑;移除过时方法,引入BoxSet统一配置游戏线路坐标。
2026-05-12 19:31:15 +08:00
panw
e98ea80a6d chore(game): 调整英雄前向锚点与每路前排容量参数 2026-05-12 18:09:14 +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
panw
20e9b1d484 refactor(monster&hero): 重构三路分层逻辑与渲染排序
1. 移除飞行怪特殊判定,统一按Y轴高度处理三路渲染
2. 重命名飞行层相关变量为更准确的路次命名
3. 新增英雄自动分路均衡分配逻辑
4. 调整渲染排序规则,按Y轴高度决定上下层显示顺序
5. 修复怪物入场动画与刷怪分路逻辑
2026-05-12 16:32:25 +08:00
walkpan
e7075004fe feat(monster&spawn): 新增飞行怪物支持,重构怪物移动与刷怪系统
抽离MonMoveComp拆分怪物移动逻辑,让MoveComp仅负责英雄移动
新增Fly和FlyBoss怪物类型,配置三层飞行轨道支持空中怪物
重写波次刷怪逻辑,移除固定5槽限制,按轨道自由排布怪物
将怪物生成上限与恢复阈值从5/3调整为50/30
优化渲染排序逻辑,为飞行怪添加持续浮动动画
移除跨波怪物属性继承,波次切换时自动清理残留怪物
2026-05-12 12:23:37 +08:00
walkpan
2eaf85c6f5 feat(英雄属性): 新增暴击伤害属性并支持驻场技能加成
- 在 HeroAttrs 枚举中添加 critical_damage 属性
- 修改 HeroAtkSystem 的暴击伤害计算逻辑,支持基础暴伤和英雄额外暴伤叠加
- 在 Skill 类中设置技能属性时,使用 HeroAttrsComp 的运行时属性获取方法
- 为 FieldSkillSet 添加 HeroFrost、HeroCrit、HeroCritDamage 和 HeroSpeed 驻场技能配置
- 在 HeroAttrsComp 中新增 crit_damage 字段和相关运行时属性计算方法
- 实现驻场技能百分比值统一换算逻辑,支持 0.2 和 20 两种配置写法
- 添加攻速加成机制,通过缩短技能 CD 实现攻击速度提升
2026-05-02 23:50:23 +08:00
walkpan
e8df6e6e9c fix: 统一英雄攻击距离并移除冗余最小距离逻辑
将不同英雄类型的攻击距离统一调整为720,简化距离计算逻辑。
移除HeroAttrsComp中根据英雄类型动态计算最小攻击距离的代码,因为所有英雄的最小攻击距离现在均为0。
同时更新MoveSystem中的攻击范围判断逻辑,将远程英雄的最大攻击范围从360调整为720以保持一致性。
2026-05-01 21:40:33 +08:00
walkpan
38ea7b6d57 fix(英雄): 调整英雄出生位置和移动间距参数
- 将英雄出生X坐标从-280调整为-320,避免英雄重叠
- 调整英雄/怪物前锚点X坐标,优化战斗站位
- 分离英雄和怪物的同阵营间距参数,分别设置为100和75
- 修复Boss单位间距计算逻辑,确保正确使用阵营基础间距
2026-05-01 21:36:47 +08:00
panw
95ea36651e feat(天赋系统): 实现天赋效果并应用至相关游戏系统
- 在 MissionCardComp 中应用 RefreshDiscount 天赋以减少刷新消耗
- 在 CardComp 中应用 BuyDiscount 天赋以减少英雄购买消耗
- 在 HInfoComp 中应用 SellBonus 天赋以增加英雄出售收益
- 统一 TalentType 枚举类型,增强类型安全性
- 更新 SingletonModuleComp 中 talents 数据结构以支持类型化
- 修改 HeroAttrsComp.getTalentValue 方法参数类型为 TalentType
2026-04-28 15:34:58 +08:00
panw
1a45c87e70 feat(hero): 为英雄系统添加天赋加成支持
- 在 HeroAttrsComp 中添加 getTalentValue 静态方法,用于获取指定天赋的加成数值
- 定义 TalentType 枚举,明确各类天赋类型
- 调整部分天赋配置,如亡语强化和召唤强化的数值与消耗
- 在 Hero 实体初始化时,根据英雄阵营应用攻击、生命、暴击等天赋加成
- 在召唤技能触发逻辑中,增加召唤强化天赋的额外触发次数
2026-04-28 15:26:47 +08:00
walkpan
b588fd06a0 feat(评分系统): 实现多维度游戏评分统计与结算
- 扩展 GameScoreStats 数据结构,新增战绩、输出、防御、构建和效率五个维度的统计字段
- 在战斗、治疗、购卡、刷新等关键节点实时采集评分数据
- 实现评分数据重置机制,确保每局数据独立
- 重构总分计算逻辑,采用五维加权评分模型
- 新增初始金币收入统计,完善资源利用效率评估
2026-04-25 21:52:59 +08:00
panw
062ce6eb5c fix(英雄): 修复复活配置类型错误并优化复活流程
将 HeroAttrsComp 和 heroSet 中的 revive 字段从数组类型改为单一对象类型,因为每个英雄只能配置一个复活技能。同时优化 HeroAtkSystem 中的复活逻辑,将技能配置提取到变量中复用,并延迟 0.5 秒执行 alive() 方法以确保复活动画能够完整播放。
2026-04-23 15:02:39 +08:00
panw
bca97070d4 fix(技能): 修复复活技能动画顺序和buff动画配置
调整复活技能逻辑,确保目标先标记为存活再播放准备动画
修正技能6401、6404、6406、6501的readyAnm配置为正确的"up_ap"
将up_ap动画的采样率从30降低到15,使动画时长加倍
2026-04-23 15:01:53 +08:00
panw
76772a1102 fix(hero): 修复复活后碰撞体和UI未恢复的问题
- 在 HeroViewComp.alive() 中恢复碰撞体启用状态和顶部UI节点
- 在 HeroAtkSystem 中先触发死亡技能再检查复活,确保亡语效果正确触发
- 重构死亡处理逻辑,将死亡技能触发分离到独立方法
2026-04-23 10:07:45 +08:00
panw
5ae4c8fcd0 fix(hero): 修复复活后治疗未重置复活计数的问题并支持配置复活恢复百分比
- 在MissionComp中,英雄被治疗后重置复活计数,防止下回合无法复活
- 在HeroAtkSystem中,从技能配置读取复活恢复生命值百分比,替代硬编码的50%
2026-04-23 09:49:38 +08:00
panw
b9f7a66fae feat(英雄): 重构复活机制为动态配置
将固定的复活次数属性改为从英雄配置中动态计算。移除 `revive_count` 静态属性,新增 `revive` 数组用于存储复活配置(包含基础次数和等级成长),并添加 `revived_count` 记录已复活次数。在 `Hero` 和 `Monster` 的初始化中同步此属性,并在战斗系统中根据配置和英雄等级计算最大可复活次数。
2026-04-23 09:41:50 +08:00
panw
0676412a5a refactor(英雄): 移除复活时间相关逻辑
- 从 HeroAttrs 枚举中删除 revive_time 属性
- 移除 HeroAtkSystem 中的 scheduleRevive 调用
- 清理 HeroAttrsComp 中与复活时间相关的字段和重置逻辑
- 简化 HeroViewComp 的 alive 方法并删除 scheduleRevive 方法
2026-04-23 09:40:36 +08:00
panw
8ab0cc3971 feat(hero): 为英雄系统添加复活机制
- 在 HeroAttrsComp 中增加 `is_revived` 字段以追踪已复活次数
- 修改 HeroViewComp 的 `scheduleRevive` 方法,使其能播放复活技能的准备动画并立即触发复活
- 在 heroInfo 接口中新增 `revive` 配置项,用于定义英雄的复活技能
- 在 SkillSet 中添加新的复活技能配置(uuid: 6501)
- 新增 hero-roster.md 的元数据配置文件
2026-04-23 09:09:49 +08:00
walkpan
100a520df1 feat(技能): 新增驻场技能系统并集成到游戏机制中
- 在英雄配置中增加驻场技能字段,支持八种全局加成类型
- 实现驻场技能数值计算,影响召唤/死亡/战斗开始结束技能触发次数
- 集成驻场技能到金币收益系统,提升每回合和卖出英雄的金币获取
- 为战斗结束治疗添加驻场技能加成,增强队伍恢复效果
2026-04-22 23:14:07 +08:00
panw
5f6f6f0bfb fix(战斗): 修正英雄复活与战斗结束时的生命值恢复逻辑
移除英雄复活时直接设置固定生命值的硬编码,改为在战斗结束阶段统一恢复所有英雄(包括墓地英雄)70%最大生命值。这确保了生命值恢复机制的一致性和可维护性,并避免了状态同步问题。
2026-04-22 20:56:44 +08:00
panw
a65a26b0bc feat: 实现战斗准备阶段英雄复活与入场动画
在准备阶段开始时,通过 PhasePrepareStart 事件触发英雄状态重置:
- 死亡英雄复活并恢复满血,播放下落入场动画
- 英雄实体在死亡时移至墓地并禁用碰撞,避免战斗逻辑干扰
- 更新英雄数量UI以反映复活后的状态
2026-04-22 17:05:34 +08:00
walkpan
c86d102091 fix(英雄/UI): 修正英雄升级动画与卡牌等级显示的匹配逻辑
- 英雄升级时根据具体等级播放对应的动画(plus2 到 plus5),而非之前所有大于1级都播放"plus"
- 卡牌等级显示改为显示小于等于当前等级的所有节点,而非仅精确匹配当前等级
2026-04-21 23:10:45 +08:00
walkpan
9363f8f1d7 refactor(游戏配置): 调整英雄配置和游戏平衡参数
- 更新英雄配置文档,完善战士技能描述
- 修改英雄升级和合并相关参数
- 移除后退相关逻辑和配置
- 重构卡牌显示逻辑,优化UI组件管理
2026-04-21 21:05:05 +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
walkpan
ba3e416ab0 fix(技能触发): 将call技能触发时机从入场时改为落地后
确保英雄和怪物在完全落地并设置好碰撞组后再触发call技能,避免潜在的时序问题
2026-04-15 20:48:07 +08:00
panw
dff9983e38 refactor(SCastSystem): 移除友方技能施放特效逻辑以简化代码
移除playFriendlyCastEffect和doPlayFriendlyCastEffect方法及相关特效播放逻辑,直接调用applyActualFriendlyEffect应用效果。这些特效逻辑与核心功能无关且增加了代码复杂度。
2026-04-15 17:22:21 +08:00
panw
53523d8ccb fix(英雄属性组件): 冰冻状态下暂停技能冷却时间刷新
修复英雄处于冰冻状态时技能冷却时间仍然减少的问题。在 updateCD 方法开始时检查冰冻状态,若为冰冻则直接返回,确保技能 CD 暂停刷新。
2026-04-15 16:39:44 +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
9148c830c2 feat(英雄): 添加受击触发技能机制
- 在 HeroInfo 接口中添加 atked 字段,用于配置受击后触发的技能
- 在 HeroAtkSystem 中实现 checkAndTriggerAtkedSkills 方法,检查受击次数并触发对应技能
- 在伤害计算逻辑中增加受击计数并调用触发检查
2026-04-15 10:55:51 +08:00
panw
4995097606 feat(英雄): 添加普通攻击后触发技能机制
在 HeroInfo 接口中添加 atking 字段,用于配置普攻后触发的技能。
在 SCastSystem 的 castSkill 方法中,当释放的技能为普通技能时,增加攻击计数并检查是否满足触发条件。
新增 checkAndTriggerAtkingSkills 方法,根据配置的触发次数,通过消息系统触发对应技能。
2026-04-15 10:47:35 +08:00
panw
0508dec313 feat(技能): 支持英雄技能的多重触发
修改 Hero、Monster 和 HeroAtkSystem 中的技能触发逻辑,将 call、dead 等技能字段从单个 uuid 改为 uuid 数组,支持同时触发多个技能。同时更新 heroSet.ts 中的类型定义和英雄配置以匹配此变更。
2026-04-15 10:23:13 +08:00
walkpan
c275a0ee94 refactor(护盾): 移除 shield_max 属性并简化护盾逻辑
护盾系统不再需要维护最大护盾值,因为护盾层数已有明确上限(FightSet.SHIELD_MAX)。
移除 HeroAttrs 枚举、HeroAttrsComp 组件、HeroAtkSystem 和 HeroViewComp 中所有对 shield_max 的引用和操作。
现在护盾层数直接受 SHIELD_MAX 限制,视图层仅需当前护盾值即可显示。
2026-04-12 23:03:03 +08:00
panw
18d8d20056 refactor: 调整怪物波次配置与优化同阵营间距计算
- 调整第一波怪物配置,将原近战Boss与近战小怪替换为近战Boss与远程小怪
- 增加怪物槽位及同阵营单位的横向间距,提升视觉清晰度
- 优化同阵营单位间距计算逻辑,为Boss单位提供更大的间隔空间
2026-04-08 10:38:40 +08:00
panw
4a6f19ae8b fix(怪物): 修复对象池复用导致怪物无限放大的问题
记录预制体初始缩放值,避免重复乘算
2026-04-08 10:05:56 +08:00
panw
9dd0861df1 fix: 调整英雄与怪物的位置锚点及出生点X坐标
将英雄前方锚点从-30改为-50,怪物前方锚点从30改为50,使战斗站位更合理。
同时将怪物出生槽位起始X坐标从30调整为50,以匹配新的锚点位置。
2026-04-08 09:45:55 +08:00
panw
af78a3e02b fix: 统一英雄与怪物的基础尺寸为1.15
调整Hero.ts和Mon.ts中的size变量,将英雄尺寸从1.3下调,怪物尺寸从1.0上调,使两者基础尺寸统一为1.15,以平衡游戏中的视觉比例和碰撞体验。
2026-04-08 09:12:34 +08:00
panw
c7e46fc591 feat(hero): 为boss单位调整头顶UI位置并添加标识图标
调整HeroViewComp中boss单位的top_node位置,从y=80提升至y=105以更好显示
为mo6、mud4、mud5三个boss预制体添加ItemIcon_Skull_Boss_Red标识图标
更新预制体结构,包括组件引用、材质和颜色属性覆盖
2026-04-07 16:23:08 +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
8d9c9a6348 feat: 调整英雄合成与属性成长规则
- 将英雄最大等级提升至3级,升级所需英雄数设为3
- 英雄属性改为指数成长(3倍/级),替换原线性成长
- 调整近战英雄攻击距离从260减少至200
- 重置初始二级英雄概率为0,并提高每级概率增量至0.02
- 将合成相关配置集中至GameSet枚举,提高可维护性
2026-04-04 13:29:14 +08:00