繁体   English   中英

检测鼠标在Unity新输入系统中发布

[英]Detect mouse released in Unity new input system

我正在使用新的输入系统,但似乎无法让鼠标点击正常运行。

我正在尝试使用鼠标左键进行攻击。 我创建了动作并且它正在触发,但值永远不会变回 false。

        public void OnSprint(InputValue value)
        {
            SprintInput(value.isPressed);
        }

        public void OnAttack(InputValue value)
        {
            AttackInput(value.isPressed);
        }

为什么 sprint 正常工作,当按下它时它变为真,而当它释放时它会触发一个新事件说该值为假。

然而,鼠标攻击只返回 true,然后永远不会返回 false。 当我释放鼠标左键时没有触发任何事件。

在此处输入图像描述

尝试将其更改为 AttackInput(value.isReleased),并将其更改为在 false 时触发。

与旧的输入 class 不同,新的输入系统是事件驱动/聚焦的。

挂钩输入的canceled事件。

inputs.Attack.canceled += (ctx) => StopAttacking();

我将Action TypeButton更改为Pass Through ,现在它在按下鼠标时触发 true,在释放时触发 false。

动作类型穿越

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM