/** @format */ import {EntityIndex} from '../lib/Const' import {IBuffConfig} from '../../config/BuffConfig' import {IEntryConfig} from '../../config/EntryConfig' import {ENTRY} from '../../enums/Enum' import {idNum} from '../../proto/typedef' import {IBaseAttr} from '../../interface/GlobalInterface' import {IZumabuffConfig} from '../../config/ZumabuffConfig' /** @format */ //攻击效果 export interface IAttackEffect { //是否暴击 isCrit: boolean //是否是背刺 isBack: boolean // 溅射伤害 sputter?: number } //TODO 战斗信息对象重构成继承式 export interface FightInfo { //造成伤害的敌人 enemy: EntityIndex //掉血量 reduceHp: number //造成暴击 isCritical: boolean //加血的友军 friend: EntityIndex //加血量 addHp: number } export interface IBuff { readonly buffCfg: IBuffConfig //倒计时 countDown: number //正计时 处理一些每秒触发加血,扣血buff countUp: number // buff 修改的attr数值 curAttrChangeNum: number[] //buff伤害帧完成 hurtFrameCompleted: boolean //buff伤害帧次数 hurtTimes: number //buff免疫某个技能次数 immuneTimes: number //施放这个buff的对象的基础值 createBaseAttr: IBaseAttr //buff特效数组 aniEntityArr: EntityIndex[] } //攻击数值对象 export interface IFightData extends IBaseAttr { //临时值 nowHP?: number shieldHP?: number attackNum?: number //攻击次数 killNum?: number //杀人次数 curSkillHurtRate?: number //技能的增减伤比例 //角色对象 roleEntity?: EntityIndex //词条 entryMap: Map buffs: IBuff[] } export interface EntryObj { type: ENTRY profession: number[] num: number numArr: number[][] }