private static int OnEffectApplied(void *pEffectListHandler, void *pObject, void *pEffect, int bLoadingGame) { CNWSObject gameObject = CNWSObject.FromPointer(pObject); CGameEffect gameEffect = CGameEffect.FromPointer(pEffect); if (gameObject == null || gameEffect == null) { return(Hook.CallOriginal(pEffectListHandler, pObject, pEffect, bLoadingGame)); } EffectDurationType durationType = (EffectDurationType)gameEffect.GetDurationType(); if (durationType != EffectDurationType.Temporary && durationType != EffectDurationType.Permanent) { return(Hook.CallOriginal(pEffectListHandler, pObject, pEffect, bLoadingGame)); } OnEffectApply eventData = ProcessEvent(new OnEffectApply { Object = gameObject.ToNwObject() !, Effect = gameEffect.ToEffect(false) !, });
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(ApplyEffect, 0, AuraType.ObsModHealth, AuraEffectHandleModes.Real)); OnEffectRemove.Add(new EffectApplyHandler(RemoveEffect, 0, AuraType.ObsModHealth, AuraEffectHandleModes.Real)); OnEffectPeriodic.Add(new EffectPeriodicHandler(OnPeriodic, 0, AuraType.ObsModHealth)); }
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(HandleTeleport, 0, AuraType.MechanicImmunity, AuraEffectHandleModes.Real)); }
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(OnApply, 1, AuraType.Dummy, AuraEffectHandleModes.Real)); }
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(OnApply, 0, AuraType.ForceReaction, AuraEffectHandleModes.Real)); }
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(OnApply, 0, AuraType.ControlVehicle, AuraEffectHandleModes.Real)); AfterEffectRemove.Add(new EffectApplyHandler(AfterRemove, 0, AuraType.ControlVehicle, AuraEffectHandleModes.Real)); }
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(HandleOnApply, 0, AuraType.Dummy, AuraEffectHandleModes.Real)); OnEffectRemove.Add(new EffectApplyHandler(HandleOnRemove, 0, AuraType.Dummy, AuraEffectHandleModes.Real)); }
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(OnApply, 0, AuraType.OverrideActionbarSpells, AuraEffectHandleModes.Real)); AfterEffectRemove.Add(new EffectApplyHandler(AfterRemove, 0, AuraType.OverrideActionbarSpells, AuraEffectHandleModes.Real)); }
public override void Register() { OnEffectApply.Add(new EffectApplyHandler(OnApply, 2, AuraType.Linked, AuraEffectHandleModes.Real)); OnEffectRemove.Add(new EffectApplyHandler(OnRemove, 2, AuraType.Linked, AuraEffectHandleModes.Real)); }
public override void Register() { OnEffectPeriodic.Add(new EffectPeriodicHandler(HandleEffectPeriodic, 0, AuraType.ProcTriggerSpell)); OnEffectApply.Add(new EffectApplyHandler(Apply, 0, AuraType.ProcTriggerSpell, AuraEffectHandleModes.RealOrReapplyMask)); }