Commit Graph

195 Commits

Author SHA1 Message Date
pan
f00b9496e2 refactor: 替换天赋系统为驻场英雄技能系统
1.  删除已废弃的TalentSet天赋配置文件
2.  重构英雄属性计算逻辑,改为使用驻场技能加成
3.  更新卡牌购买、刷新费用和出售收益的加成逻辑
4.  统一技能配置格式,修复代码格式问题
5.  新增驻场技能类型与配置,兼容原有天赋效果
2026-06-03 10:19:52 +08:00
pan
612bcee5a1 chore: 移除游戏内天赋系统相关代码
1.  删除所有TalentType相关导入和天赋数据存储逻辑
2.  移除英雄属性天赋加成计算逻辑
3.  移除卡牌购买、刷新、售卖的天赋优惠逻辑
4.  将getTalentValue方法降级为空实现
5.  清理多余的空行代码格式
2026-06-03 10:01:34 +08:00
walkpan
62a92ab9b6 feat(hero): 新增英雄等级进化配置与属性技能变更逻辑
实现了英雄从2级开始的等级进化系统,支持替换普攻技能、覆盖各类触发技能、添加额外属性加成,同时在英雄配置中添加了进化配置的类型定义与示例配置
2026-05-28 22:27:38 +08:00
panw
9ddf5b99c5 refactor: 调整卡牌等级逻辑,新增基础池等级字段
1. 新增base_pool_lv字段存储英雄初始池等级
2. 替换多处直接使用pool_lv的逻辑,优先使用base_pool_lv
3. 移除预制体中废弃的pool_lv_node节点
2026-05-28 10:04:39 +08:00
walkpan
fd60191324 refactor(skill): 调整技能触发枚举的存放位置与使用方式
将SkillTriggerType枚举从GameEvent.ts迁移到heroSet.ts,统一管理技能触发相关配置,同时更新所有引用该枚举的文件路径,优化代码结构与维护性
2026-05-24 23:38:09 +08:00
walkpan
518a9a1ce9 feat: 新增英雄基础属性存档与UI属性加成显示
1.  新增base_ap和base_hp属性存储英雄原始基础攻防属性
2.  实现属性加成差值显示,展示当前属性与基础属性的差异
3.  重构英雄信息UI,新增名字、关闭按钮等节点绑定
4.  调整英雄预制体布局,适配新的UI展示需求
5.  补充战斗触发类型注释文档
2026-05-24 23:21:35 +08:00
walkpan
dfaa55b864 feat(map): 新增英雄出售事件并更新场上英雄数量UI
- 新增GameEvent.HeroSell事件枚举,在英雄出售时派发通知
- 在HInfoComp中添加事件派发代码,在MissionCardComp中注册监听更新UI
- 调整英雄统计逻辑与事件派发逻辑,简化最大英雄数量获取函数
- 为多款英雄预制体添加影子显示组件
2026-05-24 22:34:20 +08:00
walkpan
1b26a9079d refactor(hero-ui): 重构英雄信息面板为点击弹窗形式
本次修改完成以下核心调整:
1.  在GameUIConfig中注册HInfo弹窗的UIID与预制体路径
2.  为场上英雄节点添加点击交互,点击时打开对应英雄的信息弹窗
3.  清理MissionCardComp中常驻英雄信息面板的旧逻辑代码
4.  重构HInfoComp适配弹窗模式,支持按实体ID绑定英雄数据并实时刷新显示
5.  调整CardComp中英雄图标缩放,优化界面显示效果
2026-05-24 16:16:40 +08:00
panw
fc3f4d7375 refactor(skill): 重构技能触发逻辑,提取统一工具类
将分散在Hero、Mon、HeroAtkSystem、SCastSystem、MissionComp中的技能触发代码统一封装,集中处理触发次数加成、实体合法性校验与技能事件派发,同时新增SkillTriggerType枚举统一管理技能触发类型,简化业务调用并消除重复模板代码。
2026-05-21 11:10:27 +08:00
panw
3bfdf1639b fix: 恢复怪物和英雄的召唤技能配置复制逻辑
修复了heroSet.ts中注释掉的call字段注释,同时恢复了Hero和Monster类中对call技能配置的复制代码,让召唤技能触发逻辑正常生效
2026-05-21 10:41:33 +08:00
panw
7d4cf1f097 fix: 优化属性默认值处理,注释多余赋值逻辑
1. 将heroInfo接口的dis和speed字段改为可选
2. 在实例化时使用??运算符设置默认值
3. 注释掉冗余的call字段赋值代码
4. 移除英雄配置中重复的固定属性值
2026-05-19 22:43:15 +08:00
walkpan
3e84566f94 refactor(hero&monster): 统一使用dis字段获取攻击距离
移除HeroDisVal映射表,改为直接从实体组件读取配置的dis属性作为攻击距离,同时补全所有英雄和怪物配置中的dis字段
2026-05-18 09:29:22 +08:00
walkpan
39316cf266 fix(hero): 调整英雄升级特效播放逻辑
修正了英雄等级对应的特效播放映射,注释了暂未使用的9级特效代码
2026-05-17 23:25:57 +08:00
panw
1a45c87e70 feat(hero): 为英雄系统添加天赋加成支持
- 在 HeroAttrsComp 中添加 getTalentValue 静态方法,用于获取指定天赋的加成数值
- 定义 TalentType 枚举,明确各类天赋类型
- 调整部分天赋配置,如亡语强化和召唤强化的数值与消耗
- 在 Hero 实体初始化时,根据英雄阵营应用攻击、生命、暴击等天赋加成
- 在召唤技能触发逻辑中,增加召唤强化天赋的额外触发次数
2026-04-28 15:26:47 +08:00
panw
b9f7a66fae feat(英雄): 重构复活机制为动态配置
将固定的复活次数属性改为从英雄配置中动态计算。移除 `revive_count` 静态属性,新增 `revive` 数组用于存储复活配置(包含基础次数和等级成长),并添加 `revived_count` 记录已复活次数。在 `Hero` 和 `Monster` 的初始化中同步此属性,并在战斗系统中根据配置和英雄等级计算最大可复活次数。
2026-04-23 09:41:50 +08:00
walkpan
100a520df1 feat(技能): 新增驻场技能系统并集成到游戏机制中
- 在英雄配置中增加驻场技能字段,支持八种全局加成类型
- 实现驻场技能数值计算,影响召唤/死亡/战斗开始结束技能触发次数
- 集成驻场技能到金币收益系统,提升每回合和卖出英雄的金币获取
- 为战斗结束治疗添加驻场技能加成,增强队伍恢复效果
2026-04-22 23:14:07 +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
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
0508dec313 feat(技能): 支持英雄技能的多重触发
修改 Hero、Monster 和 HeroAtkSystem 中的技能触发逻辑,将 call、dead 等技能字段从单个 uuid 改为 uuid 数组,支持同时触发多个技能。同时更新 heroSet.ts 中的类型定义和英雄配置以匹配此变更。
2026-04-15 10:23:13 +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
walkpan
c054209025 feat: 为召唤和死亡触发技能添加动画效果
- 在 Hero、Monster 和 HeroAtkSystem 中分发技能触发事件时,增加 triggerType 参数以区分召唤和死亡
- 修改 SCastSystem 的 forceCastTriggerSkill 方法,根据 triggerType 播放对应的准备动画(黄色表示召唤,死亡动画表示死亡)
- 调整 hnode.prefab 中按钮的布局和样式,移除特定精灵帧以使用默认样式
2026-04-05 22:49:01 +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
walkpan
c40fbfe4e4 fix: 修正拼写错误并添加升级动画播放逻辑
- 将 `palayBuff` 方法名更正为 `playBuff`
- 在英雄升级时调用 `playAllTime` 方法播放"plus"动画
- 确保动画播放方法在参数为空时安全返回
2026-04-04 09:23:49 +08:00
walkpan
07b8d47760 feat: 调整英雄和技能视觉效果与平衡性
- 调整多个英雄预制体的嵌套结构,移除冗余节点以优化性能
- 统一英雄基础尺寸为1.3,移除等级成长缩放机制
- 调整技能特效的位置、缩放和灰度显示效果
- 将英雄和怪物的移动速度从360提升至480,增强游戏节奏感
2026-04-03 21:03:29 +08:00
panw
52ed41bec1 refactor: 统一英雄属性中卡牌等级字段名称为pool_lv
将HeroAttrsComp中的card_lv字段重命名为pool_lv,以更准确地反映其表示英雄池等级的含义。同时更新所有相关引用点,包括HInfoComp的显示逻辑、Hero的加载方法以及MissionHeroCompComp的召唤队列和合成逻辑,确保数据一致性。
2026-04-02 17:36:00 +08:00
panw
781e88e2d7 feat: 新增卡牌等级系统并调整英雄合成规则
- 在 HeroAttrsComp 中添加 card_lv 属性,用于独立记录卡牌等级
- 修改 Hero 加载逻辑,支持传入 card_lv 参数
- 更新 HInfoComp 的 UI 刷新逻辑,根据英雄等级和卡牌等级显示不同的边框和等级图标
- 调整 MissionHeroComp 的合成规则:所需合成数量从 2 改为 3,最高合成等级从 3 改为 2
- 在召唤队列和合成流程中传递并处理 card_lv 数据,确保卡牌等级在合成过程中得以保留
2026-04-02 16:40:23 +08:00
walkpan
a638f473a0 feat: 新增英雄出售功能并优化UI交互
- 在 Hero 类中添加 removeByEid 静态方法,用于安全移除英雄实体
- 在 HInfoComp 中集成出售按钮逻辑,点击可移除对应英雄并关闭信息面板
- 为 card.prefab 和 hnode.prefab 添加召唤/出售按钮及相关UI组件
- 调整 role_controller.prefab 面板高度并禁用部分组件
- 移除未使用的 hit-flash-white 场景资源文件
- 暂时注释 CardComp 中的触摸事件绑定以进行调试
2026-03-28 12:04:41 +08:00
panw
ccccf025c5 feat: 新增英雄合并配置并优化出生时物理组件禁用逻辑
- 在 MissionHeroComp 中添加 merge_need_count 和 merge_max_lv 配置项,用于控制英雄合并所需数量和最大等级
- 修改英雄合并逻辑,根据配置动态判断合并条件和所需数量
- 优化 Hero 实体出生时的组件禁用逻辑,增加对 RigidBody2D 组件的禁用
2026-03-27 14:57:07 +08:00
panw
6fe91e0104 feat(hero): 添加英雄合并时的移动动画效果
实现英雄合并时的平滑移动动画,避免直接销毁的突兀感。为 Hero 类新增 mergeToBirthAndDestroy 方法,使英雄在销毁前移动到生成点。在 MissionHeroComp 中,合并逻辑改为异步等待动画完成,并添加防重复合并标志。
2026-03-27 14:33:00 +08:00
walkpan
afe11291f1 refactor(英雄管理): 将英雄与金币数据迁移至全局任务数据
- 移除 Hero.ts 中手动维护的 hero_num 计数逻辑
- 在 SingletonModuleComp 的 mission_data 中添加 hero_max_num、hero_extend_max_num 字段
- 重构 MissionCardComp,使其通过 smc.vmdata.mission_data 读写英雄数量、金币等状态
- 新增辅助方法统一数据访问与同步,避免状态分散管理
2026-03-25 23:32:55 +08:00
walkpan
8a151a3922 feat(关卡): 添加英雄数量上限机制
- 在 MissionCardComp 中添加英雄数量显示与上限控制逻辑
- 当英雄数量达到上限时禁止使用英雄卡牌
- 英雄死亡时减少当前英雄计数并刷新显示
- 添加英雄数量变化的动画反馈效果
- 移除 SingletonModuleComp 中未使用的 unlockCoin 字段
2026-03-25 23:04:12 +08:00
panw
de90dadaed feat(ui): 添加战场英雄信息面板并增强主角召唤事件
扩展主角召唤事件,传递更多实体信息供UI系统使用。新增HInfoComp组件作为英雄信息面板基础,并在MissionCardComp中动态生成和管理英雄信息面板,实时显示英雄属性。同时调整相关预制体引用和布局配置。
2026-03-25 17:23:22 +08:00
walkpan
d6a4cfe07e fix: 修复实体视图状态初始化问题并调整关卡参数
- 为 Monster 和 Hero 实体添加 idle 状态初始化,确保视图组件正确显示
- 调用 Hero 视图组件的 init 方法以完成初始化流程
- 调整关卡配置参数:关闭内存面板显示,减少怪物上限和恢复阈值以优化性能
2026-03-24 19:41:39 +08:00
panw
90bf8f7f7c refactor: 合并英雄与怪物的生命周期系统为统一系统
移除 MonLifecycleSystem,将其功能整合至 HeroLifecycleSystem 并重命名为 BattleEntityLifecycleSystem。新系统根据实体的 fac 属性区分英雄与怪物,输出相应的调试日志,消除了重复代码并提高了维护性。
2026-03-24 14:42:40 +08:00
panw
1fa2be19f7 refactor(hero): 优化英雄与怪物实体加载与注释
- 统一英雄与怪物实体加载流程,增强代码可读性与维护性
- 为 Hero.ts 与 Mon.ts 添加详细方法级注释,说明组件职责与关键逻辑
- 在配置文件中将攻击速度(as)注释更新为技能冷却(skills[0].cd),使配置项含义更清晰
- 修复怪物技能等级未随怪物等级提升的问题,使其与英雄逻辑保持一致
- 优化对象池管理,增加容量统计与调试信息
2026-03-24 14:40:04 +08:00
panw
33e549d22c fix: 修复技能冷却时间初始化和治疗特效调用错误
- 将技能初始化时的冷却时间设为0,避免首次使用时需要等待完整冷却
- 修正HeroViewComp中health方法错误调用heathed属性而非方法的问题
2026-03-24 14:29:54 +08:00
panw
382f6d2b32 fix(技能): 修复技能等级计算错误,默认等级从1改为0
将技能相关计算的默认等级从1统一修正为0,确保等级计算逻辑的一致性。具体包括:
- HeroAttrsComp.getSkillLevel() 方法在无效技能ID时返回0
- Hero实体构建技能模型时使用Math.max确保最低等级为0
- SDataCom组件初始化skill_lv为0
- Skill实体加载时skill_lv参数默认值改为0,计算时使用Math.max(0, skill_lv)
2026-03-24 10:25:12 +08:00
walkpan
849a8aeaef feat(英雄/怪物): 添加受击倒地特效
- 新增 down.prefab 和 down.anim 资源文件
- 在 Hero 和 Monster 的落地逻辑中调用 playEnd("down") 播放特效
- 优化 HeroViewComp 中特效生成逻辑,移除冗余的组件销毁操作
2026-03-23 20:23:37 +08:00
walkpan
a590c34fb6 feat(技能): 根据英雄等级计算技能等级并移除技能释放次数字段
在 Hero.ts 中为技能模型增加等级计算,技能最终等级为初始等级加上英雄等级减2(因两者均从1开始计数)。同时从 SkillSet.ts 的 SkillConfig 接口及所有技能配置中移除已不再使用的 `num` 字段。
2026-03-22 19:43:03 +08:00
walkpan
0f56591376 refactor(skill): 重构技能数据结构并支持技能等级
- 将 HeroAttrsComp 中的技能数组和独立 CD 映射重构为统一的 HSkillInfo 对象记录
- 在 SDataCom 中新增 skill_lv 字段,并在 Skill 加载时传入技能等级
- 更新 Hero 和 Monster 初始化逻辑以适配新的技能数据结构
- 修改 SCastSystem 以传递技能等级并影响技能效果
- 更新 heroSet 配置,将 skills 字段类型改为 Record<number, HSkillInfo>
2026-03-22 16:25:46 +08:00
walkpan
be4884d28a refactor(英雄技能): 重构技能系统以支持多技能和独立冷却
- 将 HeroAttrsComp 中的单一攻击/技能ID重构为技能数组,支持多个技能
- 为每个技能添加独立的冷却计时和最大冷却时间
- 修改 SCastSystem 以支持多技能选择和冷却检查
- 更新 HeroViewComp 显示当前展示技能的冷却进度
- 统一英雄和怪物初始化技能的方式,使用 setSkills 方法
- 移除 heroSet 配置中的 as/ss 字段,改为 cds 数组
- 修改 Skill 实体加载,传递 HeroAttrsComp 用于技能伤害计算
2026-03-22 13:35:25 +08:00
panw
8d059a28d4 fix(hero): 限制英雄等级并调整尺寸随等级变化
将英雄等级上限限制为3级,避免超出预期范围。
同时调整英雄尺寸随等级线性增长,每级增加10%大小。
2026-03-20 15:44:40 +08:00
panw
35af88d570 feat: 重构英雄与怪物系统并添加等级机制
- 调整怪物配置映射,将兽人系列怪物ID从5xxx改为6xxx
- 为英雄系统添加等级支持,英雄属性随等级线性增长
- 重构卡牌系统,区分英雄卡和功能卡显示逻辑
- 重新组织英雄配置数据,按职业分类并添加等级字段
- 扩展技能配置,为各等级添加对应技能变体
- 简化特殊卡配置结构,添加名称和描述字段
2026-03-20 10:54:29 +08:00
walkpan
b241be0314 refactor(hero): 移除英雄等级、简化配置并删除HInfoComp组件
- 删除 HInfoComp.ts 及其 meta 文件,移除英雄信息界面组件
- 从 Hero 和 Monster 类中移除 back_chance 属性设置
- 将 Hero 类中的等级初始化为固定值 1,移除从配置读取的逻辑
- 简化 heroSet.ts 配置:移除 AttrSet、getHeroList、getMonList、MonSet、HeroConf、JobUpConf 等配置项
- 优化 heroInfo 接口:将 icon、kind、lv 字段设为可选,移除已删除的配置引用
- 扩展英雄列表,新增 5008-5015 共8个英雄配置
- 移除与 smc 模块的耦合,简化英雄选择逻辑
2026-03-19 23:59:16 +08:00
panw
1522e93585 feat: 为英雄和怪物添加下落入场动画
- 在 MissionHeroComp 和 MissionMonComp 中定义下落高度常量
- 修改英雄和怪物的加载方法,接受目标落地高度参数
- 使用 Tween 实现平滑下落动画,下落距离越大持续时间越长
- 下落期间禁用移动和碰撞器,落地后恢复
- 为怪物添加随机下落高度偏移,减轻重叠感
2026-03-19 09:11:11 +08:00
panw
95edd6fd6d refactor: 简化攻击距离与职业类型系统
- 移除 SkillRange 枚举和 SkillDisVal 常量,统一使用 HType 表示攻击距离
- 删除 heroInfo 中的 rangeType 字段,直接使用 type 字段
- 更新英雄配置,将职业类型简化为近战、中程、远程三类
- 移除怪物属性中的 mp 和 def 字段,简化属性计算
- 更新移动和技能距离计算逻辑,直接使用 HType 判断
2026-03-16 15:54:49 +08:00
panw
11e6f49479 refactor(战斗): 重构英雄阵型位置计算逻辑
- 将阵型位置计算提取到公共配置模块,定义 FormationPointX 映射
- 新增 resolveRangeTypeByHeroType 函数根据英雄类型解析默认攻击范围
- 新增 resolveFormationTargetX 函数统一计算英雄阵型目标X坐标
- 在 Hero 和 MoveSystem 中复用新的阵型计算函数,消除重复逻辑
- 优化远程英雄战斗逻辑,使其能根据阵型位置和攻击范围动态调整站位
2026-03-16 15:46:28 +08:00