仅在Unity中检测特定的键盘组合

问题描述 投票:0回答:1

在我的游戏中,我需要检查特定的键盘组合,比如说左Shift + B。如果我正常用if(Input.GetKey(KeyCode.LeftShift) && Input.GetKey(KeyCode.B)) { Debug.Log("correct"); }

只要它具有这两个控件,它就会接受所有内容,因此Left Shift + B,Left Shift + C + B,Left Shift +诚实的任何键盘按钮+ B也将返回true。

[我的问题是,如果我能以某种方式仅检测到这两个键是否被按下,我已经尝试过在KeyCode中查找foreach字符,并检测该Input是否是我的B,然后将bool设置为正确或错误,但这实际上是行不通的。有什么想法吗?

c# unity3d
1个回答
0
投票

您可以将Input.inputString与正则表达式一起使用以检查其他键,然后在给定的帧中移动:

返回在此帧输入的键盘输入。 (只读)

inputString中仅包含ASCII字符。

该字符串可以包含应处理的两个特殊字符:字符“ \ b”表示退格。字符“ \ n”代表返回或输入。

© www.soinside.com 2019 - 2024. All rights reserved.