12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576 |
- using CommonAI.Data;
- using CommonAI.Zone.Formula;
- using XmdsCommon.Plugin;
- using XmdsCommonServer.Plugin;
- using XmdsCommonServer.Plugin.XmdsSkillTemplate.DamageCalculator;
- using XmdsCommonServer.XLS.Data;
- using XmdsCommonSkill.Plugin.Skills;
- namespace XmdsCommonSkill.Plugin.PassiveSkills.Hunter
- {
-
-
-
- public abstract class Hunter_401050_Passive : XmdsPassiveSkillBase
- {
-
-
-
- public static int ID = 401050;
- private int mUUID_1 = 0;
- private int mUUID_2 = 0;
- private GameSkill skillInfo;
- public static XmdsSkillValue mThreatValueReduce;
- public static XmdsSkillValue mCritValueAdd;
- public override int SkillID
- {
- get { return ID; }
- }
- protected override void OnInit(GameSkill skillInfo, XmdsVirtual owner)
- {
- this.skillInfo = skillInfo;
- mUUID_1 = owner.RegistOnHitOther(OnHandleOnHitDamage, skillInfo, true);
- mUUID_2 = owner.RegistCalThreatValue(OnHandleCalThreatValue, skillInfo, true);
- }
- private float OnHandleOnHitDamage(float damage, XmdsVirtual hitter, XmdsVirtual attacker, AttackSource source,
- ref XmdsVirtual.AtkResult result, DamageType damageType, GameSkill skill, ref bool isEndDispatch)
- {
-
- if (source.OutClientState == (int)XmdsVirtual.UnitHitEventState.Crit)
- {
- float v = this.GetTargetFormulaValue(this.skillInfo.SkillLevel, mCritValueAdd);
- v = v / XmdsDamageCalculator.PERER;
-
- damage = damage * (1 + v);
- }
- return damage;
- }
- private void OnHandleCalThreatValue(XmdsVirtual attacker, XmdsVirtual hitter, AttackSource source, GameSkill gs, ref XmdsVirtual.AtkResult result)
- {
-
- result.ThreatValueChangePer = -this.GetTargetFormulaValue(gs.SkillLevel, mThreatValueReduce);
- }
- protected override void OnDispose(XmdsVirtual owner)
- {
- owner.UnRegistOnHitDamage(mUUID_1);
- owner.UnRegistCalThreatValue(mUUID_2);
- }
- protected override void OnInitSkillParam()
- {
- XmdsSkillData data = XmdsDataMgr.GetInstance().GetXmdsSkillData(ID);
- InitData(data, out mThreatValueReduce, XmdsSkillData.XmdsSkillDataKey.ValueSet);
- InitData(data, out mCritValueAdd, XmdsSkillData.XmdsSkillDataKey.ValueSet2);
- }
- }
- }
|