簡體   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