/// <summary> /// 动态添加 /// </summary> public void AddResultValue(eBuffEffectType type, float value) { if (null == Owner) { return; } float tempValue = value; switch (type) { case eBuffEffectType.影响生命: Owner.ChangeHP((int)tempValue, Caster); if (tempValue < 0) { Owner.UpdateEnmityList(Caster.Id, (int)tempValue); Owner.SendFlutterInfo((int)eFlutterInfoType.BuffReduceHp, BuffId, Level, -1 * (int)tempValue, Caster); } else if (tempValue > 0) { Owner.SendFlutterInfo((int)eFlutterInfoType.BuffAddHp, BuffId, Level, -1 * (int)tempValue, Caster); } break; case eBuffEffectType.影响技能加成: float attackTotal = Caster.FinalRoleValue.Atk * tempValue; float defendTotal = Owner.FinalRoleValue.GetDef(Caster.ElemType); tempValue = AttackImpact.ComputeAttackImpact(attackTotal, defendTotal, eHitType.Hit, Caster, Owner); Owner.ChangeHP(-1 * (int)tempValue, Caster); Owner.SendFlutterInfo((int)eFlutterInfoType.BuffReduceHp, BuffId, Level, (int)tempValue, Caster); break; } }