public void StartRecordInvokeEntry(int instancedAbilityID, int instancedModifierID, uint targetRuntimeID, int localID, out RecordInvokeEntryContext entry) { entry = new RecordInvokeEntryContext(); entry.instancedAbilityID = (byte)instancedAbilityID; entry.instanceModifierID = (byte)instancedModifierID; entry.targetID = (targetRuntimeID != base._owner.runtimeID) ? targetRuntimeID : 0; entry.localID = (byte)localID; entry.builder = this._invokeTableBuilder; entry.outOffsetLs = this._invokeTableOffsets; }
public void ApplyLevelBuff_AuthorityHandler(ConfigAbilityAction actionConfig, ActorAbility instancedAbility, ActorModifier instancedModifier, BaseAbilityActor target, BaseEvent evt, ref RecordInvokeEntryContext context) { LevelBuffSide overrideCurSide; ApplyLevelBuff config = (ApplyLevelBuff)actionConfig; float duration = base._Internal_CalculateApplyLevelBuffDuration(config, instancedAbility, evt); uint runtimeID = instancedAbility.caster.runtimeID; if (config.UseOverrideCurSide) { overrideCurSide = config.OverrideCurSide; } else { overrideCurSide = base.CalculateLevelBuffSide(instancedAbility.caster.runtimeID); } MPSendPacketContainer pc = Singleton <MPManager> .Instance.CreateSendPacket <Packet_Level_RequestLevelBuff>(); Packet_Level_RequestLevelBuff.StartPacket_Level_RequestLevelBuff(pc.builder); Packet_Level_RequestLevelBuff.AddLevelBuffType(pc.builder, (byte)config.LevelBuff); Packet_Level_RequestLevelBuff.AddEnteringSlow(pc.builder, config.EnteringTimeSlow); Packet_Level_RequestLevelBuff.AddAllowRefresh(pc.builder, config.LevelBuffAllowRefresh); Packet_Level_RequestLevelBuff.AddSide(pc.builder, (byte)overrideCurSide); Packet_Level_RequestLevelBuff.AddOwnerRuntimeID(pc.builder, runtimeID); Packet_Level_RequestLevelBuff.AddNotStartEffect(pc.builder, config.NotStartEffect); Packet_Level_RequestLevelBuff.AddDuration(pc.builder, duration); Packet_Level_RequestLevelBuff.AddInstancedAbilityID(pc.builder, (byte)instancedAbility.instancedAbilityID); Packet_Level_RequestLevelBuff.AddActionLocalID(pc.builder, (byte)config.localID); pc.Finish <Packet_Level_RequestLevelBuff>(Packet_Level_RequestLevelBuff.EndPacket_Level_RequestLevelBuff(pc.builder)); Singleton <MPManager> .Instance.SendReliableToPeer(0x21800001, 1, pc); Singleton <MPLevelManager> .Instance.levelActor.GetPlugin <MPLevelAbilityHelperPlugin>().AttachPendingModifiersToNextLevelBuff(config, base._owner.runtimeID, instancedAbility.instancedAbilityID, (target != null) ? target.runtimeID : 0); }
public void TriggerAbility_AuthorityHandler(ConfigAbilityAction actionConfig, ActorAbility instancedAbility, ActorModifier instancedModifier, BaseAbilityActor target, BaseEvent evt, ref RecordInvokeEntryContext context) { base.TriggerAbilityHandler(actionConfig, instancedAbility, instancedModifier, target, evt); context.Finish(true); }
public static void STUB_AuthorityMute(ConfigAbilityAction actionConfig, ActorAbility instancedAbility, ActorModifier instancedModifier, BaseAbilityActor target, BaseEvent evt, ref RecordInvokeEntryContext context) { context.Finish(false); }
public void RemoveModifier_AuthorityHandler(ConfigAbilityAction actionConfig, ActorAbility instancedAbility, ActorModifier instancedModifier, BaseAbilityActor target, BaseEvent evt, ref RecordInvokeEntryContext context) { MoleMole.Config.RemoveModifier modifier = (MoleMole.Config.RemoveModifier)actionConfig; if (target == base._owner) { base._owner.abilityPlugin.TryRemoveModifier(instancedAbility, modifier.ModifierName); } else if (Singleton <MPEventManager> .Instance.IsIdentityAuthority(target.runtimeID)) { target.abilityPlugin.TryRemoveModifier(instancedAbility, modifier.ModifierName); } else { context.Finish(true); } }
public void Predicated_AuthorityHandler(ConfigAbilityAction actionConfig, ActorAbility instancedAbility, ActorModifier instancedModifier, BaseAbilityActor target, BaseEvent evt, ref RecordInvokeEntryContext context) { base.PredicatedHandler(actionConfig, instancedAbility, instancedModifier, target, evt); }
public void HealSP_AuthorityHandler(ConfigAbilityAction actionConfig, ActorAbility instancedAbility, ActorModifier instancedModifier, BaseAbilityActor target, BaseEvent evt, ref RecordInvokeEntryContext context) { this.HealSP_Common((HealSP)actionConfig, instancedAbility, target); context.Finish(true); }
public void DamageByAttackValue_AuthorityHandler(ConfigAbilityAction actionConfig, ActorAbility instancedAbility, ActorModifier instancedModifier, BaseAbilityActor target, BaseEvent evt, ref RecordInvokeEntryContext context) { base.DamageByAttackValueHandler(actionConfig, instancedAbility, instancedModifier, target, evt); }
protected void StartRecordMixinInvokeEntry(out RecordInvokeEntryContext context, uint targetID = 0) { this.actor.mpAbilityPlugin.StartRecordInvokeEntry(this.instancedAbility.instancedAbilityID, (this.instancedModifier == null) ? 0 : this.instancedModifier.instancedModifierID, (targetID != 0) ? targetID : this.actor.runtimeID, this.mixinLocalID, out context); }