- 将HeroAttrs中的KNOCKBACK和CHAIN_CHANCE重命名为BACK_CHANCE和SILENCE_CHANCE以保持命名一致性 - 简化TalSet.ts中的天赋配置接口,移除冗余字段并优化结构 - 添加新的天赋配置示例
97 lines
3.1 KiB
TypeScript
97 lines
3.1 KiB
TypeScript
import { count } from "console";
|
||
import { Attrs } from "./HeroAttrs";
|
||
|
||
/**
|
||
* 天赋类型枚举,也是触发条件
|
||
*/
|
||
export enum TalType {
|
||
LUP_1 = 1, // 等级升级1级触发
|
||
LUP_5 = 2, // 等级升级5级触发
|
||
LUP_10 = 3, // 等级升级10级触发
|
||
ATK_1 = 4, //普通攻击1次触发
|
||
ATK_3 = 5, // 普通攻击3次触发
|
||
ATK_5 = 6, // 普通攻击5次触发
|
||
DMG_1 = 7, // 受伤1次触发
|
||
DMG_3 = 8, // 受伤3次触发
|
||
DMG_5 = 9, // 受伤5次触发
|
||
SKILL_1 = 10, // 技能1次触发
|
||
SKILL_3 = 11, // 技能3次触发
|
||
SKILL_5 = 12, // 技能5次触发
|
||
LHP_50 = 13, // 失去生命值50%触发
|
||
LHP_30 = 14, // 失去生命值30%触发
|
||
AHP_100 = 15, // 获得生命值100%触发
|
||
AHP_200 = 16, // 获得生命值200%触发
|
||
|
||
INIT = 17, // 初始触发,如:多1个技能
|
||
DEAD = 18 // 基于死亡触发
|
||
}
|
||
|
||
/**
|
||
* 触发效果
|
||
*/
|
||
export enum TalETag {
|
||
Wfuny = 1, // 风怒
|
||
}
|
||
|
||
export enum TalEffet {
|
||
DMG=1, // 伤害
|
||
ATTR=2, // 属性hp,mp数值,持久添加
|
||
BUFF = 3, // 暴击率,闪避率等,可叠加的触发后清零
|
||
STATS=3, // 状态
|
||
N_ATK = 4, // 下n次普通攻击 需要特殊处理
|
||
N_SKILL=5, // 下n次技能攻击 需要特殊处理
|
||
}
|
||
|
||
export enum TalTarget {
|
||
SELF = 1, // 自己触发
|
||
ENEMY = 2, // 敌人触发
|
||
}
|
||
|
||
export enum TalAttrs {
|
||
FREEZE_CHANCE=Attrs.FREEZE_CHANCE, // 冰冻概率
|
||
STUN_CHANCE=Attrs.STUN_CHANCE, // 冰冻概率
|
||
BACK_CHANCE=Attrs.BACK_CHANCE, // 击退概率
|
||
SILENCE_CHANCE=Attrs.SILENCE_CHANCE, // 沉默概率
|
||
CRITICAL=Attrs.CRITICAL, // 暴击率
|
||
}
|
||
/**
|
||
* 天赋配置接口
|
||
* 定义一个完整的天赋效果
|
||
*/
|
||
|
||
export interface ItalConf {
|
||
uuid: number; // 天赋ID
|
||
name: string; // 天赋名称
|
||
type: TalType;
|
||
target: TalTarget;
|
||
effet: TalEffet;
|
||
value: number; // 触发的效果值(如增加10%攻击力, 触发的技能uuid,增加1个技能uuid)
|
||
attrs:TalAttrs //触发的
|
||
Trigger:number //触发值
|
||
desc: string; // 天赋描述(说明触发条件和效果)
|
||
}
|
||
|
||
// ========== 天赋配置表 ==========
|
||
|
||
/**
|
||
* 天赋配置表 - 2行紧凑格式
|
||
* 每个天赋配置压缩为2行:注释行 + 配置对象行
|
||
*
|
||
* 格式说明:
|
||
* 第1行:// 天赋名称 - 英雄专属/通用 | 触发条件 | 效果描述
|
||
* 第2行:{uuid, name, desc, type, triggerType, chance, t_value, e_value, e_name, e_type, e_scaling, e_count, stackable, maxStack}
|
||
*
|
||
* 使用说明:
|
||
* 1. 等级类天赋:当英雄升级到指定等级时,每次都会触发效果
|
||
* 2. 行为计数类:当特定行为累计达到阈值时触发,支持是否重置计数
|
||
* 3. 受伤计数类:当受伤累计达到阈值时触发,支持是否重置计数
|
||
* 4. 技能触发类:当特定条件满足时自动触发指定技能
|
||
*/
|
||
export const talConf: Record<number, ItalConf> = {
|
||
7001:{uuid:7001,name:"风怒",type:TalType.ATK_3,target:TalTarget.ENEMY,effet:TalEffet.DMG,value:150,Trigger:3,desc:"普通攻击3次后, 给于目标150%的伤害"},
|
||
|
||
};
|
||
|
||
// ========== 工具函数 ==========
|
||
|