Пример #1
0
        private static bool Prefix(MicroHID __instance, ref float value)
        {
            // NetworkEnergy is set each frame, so this is to prevent calling the method each frame.
            if (__instance.NetworkEnergy == value)
            {
                return(true);
            }

            var ev = new UsingMicroHIDEnergyEventArgs(Player.Get(__instance.gameObject), __instance, __instance.CurrentHidState, __instance.Energy, value);

            Handlers.Player.OnUsingMicroHIDEnergy(ev);

            if (!ev.IsAllowed)
            {
                return(false);
            }

            value = ev.NewValue;

            return(true);
        }
Пример #2
0
 /// <summary>
 /// Called before a player's MicroHID energy is changed.
 /// </summary>
 /// <param name="ev">The <see cref="UsingMicroHIDEnergyEventArgs"/> instance.</param>
 public static void OnUsingMicroHIDEnergy(UsingMicroHIDEnergyEventArgs ev) => UsingMicroHIDEnergy.InvokeSafely(ev);