我正在使用新的輸入系統,但我似乎無法讓滑鼠點擊行為正確。
我試圖用滑鼠左鍵實施攻擊。我創建了動作并且它正在觸發,但該值永遠不會變回 false。
public void OnSprint(InputValue value)
{
SprintInput(value.isPressed);
}
public void OnAttack(InputValue value)
{
AttackInput(value.isPressed);
}
為什么 sprint 作業正常,按下時變為真,釋放時會觸發一個新事件,表示值為假。
然而,滑鼠攻擊只回傳真,然后永遠不會回傳假。當我釋放滑鼠左鍵時沒有觸發事件。

uj5u.com熱心網友回復:
嘗試將其更改為 AttackInput(value.isReleased),并將其更改為在 false 時觸發。
uj5u.com熱心網友回復:
與舊的 Input 類不同,新的輸入系統是事件驅動/聚焦的。
掛鉤canceled輸入事件。
inputs.Attack.canceled = (ctx) => StopAttacking();
uj5u.com熱心網友回復:
我將Action Typefrom更改Button為Pass Through,現在它在按下滑鼠時觸發 true,在釋放時觸發 false。

轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/512424.html
標籤:C#unity3dio
上一篇:查找兩點之間的路徑范圍
