private void RemoveHook(On.HeroController.orig_HeroDash orig, HeroController self) { orig(self); On.HeroController.CanDash -= True; On.HeroController.HeroDash -= RemoveHook; ModHooks.Instance.TakeDamageHook -= remove; }
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; }
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); } }