Godot密钥绑定教程

Godot密钥绑定教程

接下来,我们为每个要使用的动作添加一个HboxContainer 。 在我们的示例中,我们将使用三个动作: JUMPCROUCHKISS 。 因此,我们添加了第一个HboxContainer ,并为其添加了一个Label和一个Button 。 另外,让我们使按钮可切换。

接下来,让我们将这些动作添加到“输入映射”中。 转到项目>项目设置>输入地图,然后将JUMPCROUCHKISS添加为动作。 然后单击加号并添加密钥 。 使用任何您喜欢的键盘键。

您应该以某种方式对齐“控制”节点中的不同节点,以便可以看到所有内容。 另外,将文本Jump,Crouch和Kiss添加到HBoxContainers内的Labels中

最后一些代码!

现在,我们打开附加到“控制”节点的脚本,并添加以下几行:

接下来,我们向每个按钮添加一个信号,以触发事件。 如果您想了解更多有关信号的信息,请点击此处。 我们有三个按钮,因此我们添加了三个pressed()信号以及以下代码:

每当按下按钮时,我们都会调用_mark_button()并将其动作名称作为字符串发送给他们。 我们的_mark_button方法如下所示:

更改按键

因此,我们希望可以更改键并将要更改的键的字符串分配给action_string 。 如果我们之前选择了一个,则将所有其他按钮设置为false。 接下来,我们添加一个输入事件,以获取新的输入。

如果can_change_key为true,我们只想调用_change_key 。 在调用_change_key之后,我们再次将can_changekey设置为false。 我们的_change_key如下所示。

首先,我们检查是否已经分配了密钥。 在这种情况下,它将删除密钥。 然后,我们检查此密钥是否已分配到其他位置,如果是,还将删除此密钥。 最后,我们添加一个新键,该键包含来自输​​入的事件,并将其添加到操作中,该操作仍然是我们的action_string 。 如果现在运行场景,则应该能够单击一个按钮,然后单击一个键。 然后应将按键分配给按钮。

在Godot自定义键绑定教程中添加第二个场景

到目前为止,一切都很好。 现在,我们必须检查它是否真正起作用。 让我们为此创建第二个场景。 在其中,我们仅创建一个空节点并向其中添加脚本。 在脚本中,我们编写以下内容:

我们还向场景添加一个按钮,创建一个信号,然后在其中导航回到场景1

然后回到场景1,在底部添加一个按钮,创建一个信号,然后在其中导航到场景2

我们已经准备好进行测试。 您可以为场景1中的动作分配不同的键,然后转到场景2并对其进行测试。 每次按或单击分配的键时,它都应在控制台上打印正确的键。

如果您觉得这有用,请在下面的评论中告诉我。 也可以随时查看其他Godot教程和主题。


最初在 www.gotut.net上 发布