使用ursina进行左键点击检测
Left click detection with ursina
我正在使用 ursina 制作游戏,我想检测左键单击以便我可以射击。所以,这是我的代码:
def update(self):
if held_keys['t']:
print("it works !")
每当我按下 't' 时,它会打印 'it works !',如果我按住它,只要按住它,就会打印消息。伟大的 !但是现在,如果我尝试使用 'left mouse down' 作为我的密钥,它就不再起作用了!
我的代码将是:
def update(self):
if held_keys['left mouse down']:
print("it works !")
所以,这里的问题显然是 'left mouse down' 参数。但我确定这是正确的语法:
- 根据文档 (https://www.ursinaengine.org/cheat_sheet.html#Keys)
- 根据我用它做的另一项测试,它在哪里工作(在另一种情况下)
所以,我的参数语法是正确的,我的代码是正确的。那么错误在哪里呢?有没有一种特定的方式来处理鼠标,而不是键盘?我真的不这么认为,这就是为什么我在这里有点困惑。
调试它的方法是打印 held_keys 字典以查看它包含的内容。正确的名称是 'left mouse'
。之所以如此,是因为鼠标按钮的名称与其他键的名称不同,并且主要用于简化代码更改。鼠标按键毕竟不是按键
但是,您可以改为检查 mouse.left
。
我正在使用 ursina 制作游戏,我想检测左键单击以便我可以射击。所以,这是我的代码:
def update(self):
if held_keys['t']:
print("it works !")
每当我按下 't' 时,它会打印 'it works !',如果我按住它,只要按住它,就会打印消息。伟大的 !但是现在,如果我尝试使用 'left mouse down' 作为我的密钥,它就不再起作用了! 我的代码将是:
def update(self):
if held_keys['left mouse down']:
print("it works !")
所以,这里的问题显然是 'left mouse down' 参数。但我确定这是正确的语法:
- 根据文档 (https://www.ursinaengine.org/cheat_sheet.html#Keys)
- 根据我用它做的另一项测试,它在哪里工作(在另一种情况下)
所以,我的参数语法是正确的,我的代码是正确的。那么错误在哪里呢?有没有一种特定的方式来处理鼠标,而不是键盘?我真的不这么认为,这就是为什么我在这里有点困惑。
调试它的方法是打印 held_keys 字典以查看它包含的内容。正确的名称是 'left mouse'
。之所以如此,是因为鼠标按钮的名称与其他键的名称不同,并且主要用于简化代码更改。鼠标按键毕竟不是按键
但是,您可以改为检查 mouse.left
。