gpt4 book ai didi

mobile - 如何使用 Godot 同时检测多个移动输入?

转载 作者:行者123 更新时间:2023-12-04 09:02:46 25 4
gpt4 key购买 nike

在我目前制作的游戏中,玩家经常需要同时按下两个按钮,例如“跳跃”和“向左”。目前我在屏幕左侧有两个按钮用于左右,一个在右侧用于跳跃。问题是,如果玩家按下其中任何一个,它会有效地锁定其他按钮,使您无法按下它们。
有什么办法,也许使用 InputEventScreenTouch ,我可以在每一帧检测用户当前的触摸屏输入,并检查他们是否按下了一个或多个按钮?
编辑以获取更多信息:
目前每个按钮发送它的 button_down()button_up()向 HUD 场景根中的相同函数发出信号,我有简单的函数来处理:

func setLeft(val):
# This is the variable that the player
# checks each frame to see if it should move
self.get_parent().get_parent().goingLeft = val
所以当玩家开始按下左键时,它会设置 goingLefttrue ,当他们释放它时,它会设置 goingLeftfalse .
这应该可以正常工作,但我发现如果玩家在其他任何地方触摸屏幕,按钮不会注册输入。例如,如果我按下左键,玩家开始向左移动,然后当我按住它时,我开始按下跳跃。跳转按钮没有注册,因为我的手指已经按下了屏幕上的其他地方(左边的那个)。
它是否是我按下的按钮似乎并不重要,只是 Godot 只会在只有一个输入时检查按钮。
有没有办法解决这个问题?

最佳答案

我找到了解决方案,感谢评论中的一些人!
我将按钮类型更改为 TouchScreenButton节点,并且它们启用了多点触控,因此我可以在移动设备上一次按下多个!

关于mobile - 如何使用 Godot 同时检测多个移动输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63527891/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com