Files
ZYZ/shared/consts/constModules/abilityConst.ts
2021-09-24 17:48:27 +08:00

188 lines
4.9 KiB
TypeScript
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
/**
* 属性 id
*/
export enum ABI_TYPE {
/**生命 */
ABI_HP = 1,
/**物攻 */
ABI_ATK = 2,
/**策攻(弃用) */
ABI_MATK = 3,
/**物防 */
ABI_DEF = 4,
/**策防 */
ABI_MDEF = 5,
/**敏捷(弃用) */
ABI_AGI = 6,
/**幸运(弃用) */
ABI_LUK = 7,
/**移动 */
ABI_SPEED = 8,
//主属性 end
/**命中 */
ABI_HIT = 9,
/**暴击等级 */
ABI_CRI = 10,
/**格挡等级 */
ABI_FLEE = 11,
/**抗暴等级 */
ABI_ANT_CRI = 12,
/**伤害加深等级(弃用) */
ABI_DAMAGE_INCREASE = 13,
/**伤害减免等级 (弃用)*/
ABI_DAMAGE_DECREASE = 14,
/**忽视防御等级 */
ABI_DEF_IGNORE = 15,
/**吸血等级 */
ABI_BLOOD_SUCK = 16,
/**怒气恢复效果 */
ABI_AP = 17,
/**暴击伤害 */
ABI_CRI_DAMAGE = 18,
/**物理伤害加深等级 */
ABI_PHYSICAL_DAMAGE_INCREASE = 19,
/**物理伤害减免等级 */
ABI_PHYSICAL_DAMAGE_DECREASE = 20,
/**策略伤害加深等级 */
ABI_MAGIC_DAMAGE_INCREASE = 21,
/**策略伤害减免等级 */
ABI_MAGIC_DAMAGE_DECREASE = 22,
/** 治疗加成 */
ABI_TREATMENT_INCREASE = 23,
/** 治疗降低 */
ABI_TREATMENT_DECREASE = 24,
/** 受治疗加成 */
ABI_ACCEPT_TREATMENT_INCREASE = 25,
/** 受治疗降低 */
ABI_ACCEPT_TREATMENT_DECREASE = 26,
/** 反弹 */
ABI_BLOOD_REBOUND = 27,
/** 反击伤害 */
ABI_STRIKE_BACK = 28,
ABI_MAX,
}
// 主属性
export const ABI_TYPE_MAIN = [
ABI_TYPE.ABI_HP,
ABI_TYPE.ABI_ATK,
ABI_TYPE.ABI_DEF,
ABI_TYPE.ABI_MDEF
];
// 次级属性
export const ABI_TYPE_SUB = [
ABI_TYPE.ABI_HIT,
ABI_TYPE.ABI_CRI,
ABI_TYPE.ABI_FLEE,
ABI_TYPE.ABI_ANT_CRI,
ABI_TYPE.ABI_DAMAGE_INCREASE,
ABI_TYPE.ABI_DAMAGE_DECREASE,
ABI_TYPE.ABI_DEF_IGNORE,
ABI_TYPE.ABI_BLOOD_SUCK,
ABI_TYPE.ABI_AP,
ABI_TYPE.ABI_CRI_DAMAGE,
ABI_TYPE.ABI_PHYSICAL_DAMAGE_INCREASE,
ABI_TYPE.ABI_PHYSICAL_DAMAGE_DECREASE,
ABI_TYPE.ABI_MAGIC_DAMAGE_INCREASE,
ABI_TYPE.ABI_MAGIC_DAMAGE_DECREASE,
ABI_TYPE.ABI_TREATMENT_INCREASE,
ABI_TYPE.ABI_ACCEPT_TREATMENT_INCREASE,
ABI_TYPE.ABI_ACCEPT_TREATMENT_DECREASE,
ABI_TYPE.ABI_BLOOD_REBOUND,
ABI_TYPE.ABI_STRIKE_BACK,
];
export enum SEID_TYPE {
/**属性固定值加成(数值) */
TYPE101 = 101,
/**属性固定值加成(百分比) */
TYPE102 = 102,
/**基础属性加百分比除以1000以后加到ratioUp */
TYPE103 = 103,
/**次级属性的百分比加成乘以100后加到fixUp */
TYPE104 = 104,
/**复合属性 */
TYPE999 = 999,
}
export enum ABI_STAGE {
START = 0,
HP = 1,
ATK = 2,
DEF = 3,
MDEF = 4,
END = 4
}
export enum ABI_JOB_STAGE {
START = 1,
END = 6
}
export const ATTR = {}
export const HERO_ATTR = {
1: "hp", // 生命
2: "atk", // 物攻
3: "matk", // 策攻
4: "def", // 物防
5: "mdef", // 测防
6: "agi", // 敏捷
7: "luk", // 幸运
8: "speed", // 移动
9: "hit", // 命中等级
10: "cri", // 暴击等级
11: "flee", // 格挡等级
12: "antCri", // 抗暴等级
13: "damageIncrease", // 伤害加深等级
14: "damageDecrease", // 伤害减免等级
15: "defIngnore", // 忽视防御等级
16: "bloodSuck", // 吸血等级
17: "ap", // 怒气
18: "damageCri", // 暴击伤害
19: "physicaldamageInc", // 物伤加深
20: "physicaldamageDec", // 物伤减免
21: "magicdamageInc", // 法伤加深
22: "magicdamageDec", // 法伤减免
23: "treatmentInc", // 治疗加成
24: "treatmentDec", // 治疗降低
25: "acceptTreatmentInc", // 受治疗加成
26: "acceptTreatmentDec", // 受治疗降低
27: "bloodRebound", // 反弹
28: "strikeBack", // 反击伤害
};
const abilityTypeWithStage = [
{ type: ABI_TYPE.ABI_HP, stage: ABI_STAGE.HP },
{ type: ABI_TYPE.ABI_ATK, stage: ABI_STAGE.ATK },
{ type: ABI_TYPE.ABI_DEF, stage: ABI_STAGE.DEF },
{ type: ABI_TYPE.ABI_MDEF, stage: ABI_STAGE.MDEF },
];
export const ABI_TYPE_TO_STAGE = new Map<number, number>();
export const ABI_STAGE_TO_TYPE = new Map<number, number>();
for(let {type, stage} of abilityTypeWithStage) {
ABI_TYPE_TO_STAGE.set(type, stage);
ABI_STAGE_TO_TYPE.set(stage, type);
}
export function getAtrrNameById(attrId: number):string {
return HERO_ATTR[attrId];
};
export enum CE_CONST {
FLEE_VALUE = 0.3, // 格挡价值
PUT_HIT = 50000, // 投放总命中
HIT_RATE_BASE = 0.75, // 命中率基础
HIT_RATE_MAX = 1, // 命中率上限
HIT_RATE_MIN = 0, // 命中率下限
PUT_ANT_CRI = 50000, // 投放总抗暴
CRI_RATE_BASE = 0.05, // 暴击率基础
CRI_RATE_MAX = 0.75, // 暴击率上限
CRI_RATE_MIN = 0.05, // 暴击率下限
CRI_VALUE_BASE = 1.5, // 暴击价值基础
}