コード例 #1
0
 private void RemoveHook(On.HeroController.orig_HeroDash orig, HeroController self)
 {
     orig(self);
     On.HeroController.CanDash        -= True;
     On.HeroController.HeroDash       -= RemoveHook;
     ModHooks.Instance.TakeDamageHook -= remove;
 }
コード例 #2
0
        private static void KillDiagonals(On.HeroController.orig_HeroDash orig, HeroController self)
        {
            InputHandler input = ReflectionHelper.GetAttr <HeroController, InputHandler>(HeroController.instance, "inputHandler");

            if (input.inputActions.left.IsPressed || input.inputActions.right.IsPressed)
            {
                ref bool downEnabled = ref Mirror.GetFieldRef <OneAxisInputControl, bool>(input.inputActions.down, "Enabled");

                bool origEnabled = downEnabled;

                downEnabled = false;

                orig(self);

                downEnabled = origEnabled;
            }
コード例 #3
0
        private static void KillDiagonals(On.HeroController.orig_HeroDash orig, HeroController self)
        {
            InputHandler input = ReflectionHelper.GetAttr <HeroController, InputHandler>(HeroController.instance, "inputHandler");

            if (input.inputActions.left.IsPressed || input.inputActions.right.IsPressed)
            {
                bool downEnabled = ReflectionHelper.GetAttr <OneAxisInputControl, bool>(input.inputActions.down, "Enabled");

                ReflectionHelper.SetAttr(input.inputActions.down, "Enabled", false);

                orig(self);

                ReflectionHelper.SetAttr(input.inputActions.down, "Enabled", downEnabled);
            }
            else
            {
                orig(self);
            }
        }