Files
ZYZ/shared/consts/abilityConst.ts

104 lines
1.9 KiB
TypeScript

/**
* 属性 id
*/
import { JOB_TYPE } from "./consts";
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_MAX,
}
export enum SEID_TYPE {
/**属性固定值加成(数值) */
TYPE101 = 101,
/**属性固定值加成(百分比) */
TYPE102 = 102,
}
export enum ABI_STAGE {
START = 0,
HP = 1,
ATK = 2,
DEF = 3,
MDEF = 4,
AGI = 5,
LUK = 6,
END = 6
}
export const HEROTARIN = {
"1": "hp",
"2": "atk",
"3": "def",
"4": "mdef",
"5": "agi",
"6": "luk"
};
export const CE_RATIO = {
"hp" : 1,
"atk" : 2,
"matk" :2,
"def": 2,
"mdef": 2,
"agi": 2,
"luk": 0,
"hit": 0,
"cri": 0,
"flee": 0,
"antCri": 0,
"damageIncrease": 0,
"damageDecrease": 0,
"defIngnore": 0,
"bloodSuck": 0,
};
export const ABI_TYPE_TO_STAGE = new Map<number, number | ((jobType: number) => number)>([
[ABI_STAGE.HP, ABI_TYPE.ABI_HP],
[ABI_STAGE.ATK, (jobType:number) => { return jobType == JOB_TYPE.PHYSIC?ABI_TYPE.ABI_ATK: ABI_TYPE.ABI_MATK}],
[ABI_STAGE.DEF, ABI_TYPE.ABI_DEF],
[ABI_STAGE.MDEF, ABI_TYPE.ABI_MDEF],
[ABI_STAGE.AGI, ABI_TYPE.ABI_AGI],
[ABI_STAGE.LUK, ABI_TYPE.ABI_LUK]
]);