/// <summary>Invokes all the listeners to the specified <see cref="T:TaleWorlds.CampaignSystem.MbEvent`3}" />.</summary> /// <typeparam name="T1">The type of the first event argument.</typeparam> /// <typeparam name="T2">The type of the second event argument.</typeparam> /// <typeparam name="T3">The type of the third event argument.</typeparam> /// <param name="instance">An instance of <see cref="T:TaleWorlds.CampaignSystem.MbEvent`3}" /> to call "Invoke" against.</param> /// <param name="arg1">Fist argument of the event.</param> /// <param name="arg2">Second argument of the event.</param> /// <param name="arg3">Third argument of the event.</param> /// <remarks> /// This is accomplished by calling a delegate on the private method called "Invoke" of the <see cref="T:TaleWorlds.CampaignSystem.MbEvent`3}" />, /// which guarantees fast and native execution. /// </remarks> public static void Invoke <T1, T2, T3>(this MbEvent <T1, T2, T3> instance, T1 arg1, T2 arg2, T3 arg3) { MbEvent3InvokeHandler <T1, T2, T3> .Invoke(instance, arg1, arg2, arg3); }
internal void OnRelationShift(Hero baseHero, Hero otherHero, SegmentalFractionalScore fractionalScore) { MbEvent3InvokeHandler <Hero, Hero, SegmentalFractionalScore> .deInvoke(Instance._relationShift, baseHero, otherHero, fractionalScore); }