feat(skill): 支持技能参数自定义覆盖
本次修改实现同技能不同角色的差异化技能效果: 1. 新增SkillOverrides接口与mergeSkillParams工具函数,用于合并基础技能配置和角色覆盖参数 2. 更新英雄配置、属性组件、触发辅助系统与施法系统以适配该机制 3. 为盾骑士、医师添加示例差异化配置,验证功能可行性 4. 整理技能配置,删除冗余重复的旧技能条目 5. 新增技能重构设计计划文档,替换旧的迁移计划文档
This commit is contained in:
@@ -158,6 +158,31 @@ export interface SkillConfig {
|
||||
info:string, // 技能描述
|
||||
}
|
||||
|
||||
export interface SkillOverrides {
|
||||
TGroup?: TGroup;
|
||||
ap?: number;
|
||||
hit_count?: number;
|
||||
hitcd?: number;
|
||||
crt?: number;
|
||||
frz?: number;
|
||||
bck?: number;
|
||||
buffs?: BuffConf[];
|
||||
}
|
||||
|
||||
/**
|
||||
* 将覆盖参数合并到基础技能配置中
|
||||
* @param config 基础技能配置
|
||||
* @param overrides 技能覆盖参数
|
||||
* @returns 合并后的新技能配置
|
||||
*/
|
||||
export function mergeSkillParams(config: SkillConfig, overrides?: SkillOverrides): SkillConfig {
|
||||
if (!overrides) return config;
|
||||
return {
|
||||
...config,
|
||||
...overrides
|
||||
};
|
||||
}
|
||||
|
||||
export const SkillUpList = {
|
||||
1001:{ap:0,hit_count:0,buff_ap:0,buff_hp:0,bck:0,frz:0,crt:0,num:0}
|
||||
}
|
||||
@@ -264,27 +289,12 @@ export const SkillSet: Record<number, SkillConfig> = {
|
||||
6301:{
|
||||
uuid:6301,name:"护盾",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Self,readyAnm:"up_blue",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Shield,ap:3,hit_count:1,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[],info:"为自己添加护盾,可抵挡3次伤害",
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[],info:"为伙伴/自己添加护盾,可抵挡3次伤害",
|
||||
},
|
||||
6302: {
|
||||
uuid:6302,name:"群体治疗",sp_name:"buff_wind",icon:"1292",TGroup:TGroup.Team,readyAnm:"up_green",endAnm:"",act:"atk",
|
||||
uuid:6302,name:"治疗",sp_name:"buff_wind",icon:"1292",TGroup:TGroup.Team,readyAnm:"up_green",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Heal,ap:300,hit_count:1,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[],info:"为全体友方恢复攻击力300%的生命值",
|
||||
},
|
||||
6303:{
|
||||
uuid:6303,name:"强化护盾",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Self,readyAnm:"up_blue",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Shield,ap:3,hit_count:1,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[],info:"为自己添加强化护盾,可抵挡3次伤害",
|
||||
},
|
||||
6304: {
|
||||
uuid:6304,name:"持续恢复",sp_name:"buff_wind",icon:"1292",TGroup:TGroup.Team,readyAnm:"up_green",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Heal,ap:200,hit_count:3,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[],info:"为全体友方持续恢复,共3次,每次恢复攻击力200%的生命值",
|
||||
},
|
||||
6305:{
|
||||
uuid:6305,name:"团队护盾",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Team,readyAnm:"up_blue",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Shield,ap:2,hit_count:3,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[],info:"为全体友方添加护盾,每人可抵挡2次伤害,持续3次",
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[],info:"治疗伙伴/自己",
|
||||
},
|
||||
//==========================buff 技能=====================
|
||||
6401:{
|
||||
@@ -298,25 +308,10 @@ export const SkillSet: Record<number, SkillConfig> = {
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[{buff:Attrs.hp_max,value:20}],info:"全体友方最大生命值提升20点,持续1次",
|
||||
},
|
||||
6403:{
|
||||
uuid:6403,name:"全面强化",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Team,readyAnm:"up_hp",endAnm:"",act:"atk",
|
||||
uuid:6403,name:"超能强化",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Team,readyAnm:"up_hp",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Support,ap:0,hit_count:1,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[{buff:Attrs.ap,value:5},{buff:Attrs.hp_max,value:20}],info:"全体友方攻击力提升5点,最大生命值提升20点,持续1次",
|
||||
},
|
||||
6404:{
|
||||
uuid:6404,name:"持续攻击强化",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Team,readyAnm:"up_ap",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Support,ap:0,hit_count:3,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[{buff:Attrs.ap,value:2}],info:"全体友方攻击力提升2点,持续3次",
|
||||
},
|
||||
6405:{
|
||||
uuid:6405,name:"持续生命强化",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Team,readyAnm:"up_hp",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Support,ap:0,hit_count:3,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[{buff:Attrs.hp_max,value:10}],info:"全体友方最大生命值提升10点,持续3次",
|
||||
},
|
||||
6406:{
|
||||
uuid:6406,name:"持续全面强化",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Team,readyAnm:"up_ap",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Support,ap:0,hit_count:3,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
RType:RType.fixed,EType:EType.animationEnd,buffs:[{buff:Attrs.ap,value:2},{buff:Attrs.hp_max,value:10}],info:"全体友方攻击力提升2点,最大生命值提升10点,持续3次",
|
||||
},
|
||||
6501:{
|
||||
uuid:6501,name:"复活",sp_name:"buff_wind",icon:"1255",TGroup:TGroup.Self,readyAnm:"up_ap",endAnm:"",act:"atk",
|
||||
DTType:DTType.single,kind:SkillKind.Support,ap:50,hit_count:3,hitcd:0.2,speed:720,with:0,ready:0.2,EAnm:0,DAnm:"",IType:IType.support,
|
||||
|
||||
Reference in New Issue
Block a user