J'étudie Godot Engine et GDscript et j'ai cherché sur Internet sur les événements de clavier, mais je n'ai pas uderstad. Y a-t-il à Godot quelque chose comme: ?Événements Godot Keyboard
2
A
Répondre
3
Vous pouvez utiliser InputEvent pour rechercher des clés spécifiques.
Vérifiez la documentation: http://docs.godotengine.org/en/stable/learning/features/inputs/inputevent.html
1
Il n'y a pas d'option de OnKeyUp officielle, mais vous pouvez utiliser la fonction _input(event)
pour recevoir une entrée lorsqu'une action est pressé/libéré:
func _input(event):
if event.is_action_pressed("my_action"):
# Your code here
elif event.is_action_released("my_action):
# Your code here
Actions sont définies dans le projet Paramètres> Carte d'entrée.
Bien sûr, vous ne voulez pas toujours utiliser _input
, mais plutôt obtenir des entrées dans les mises à jour fixes. Vous pouvez utiliser Input.is_key_pressed()
mais il n'y a pas is_key_released()
. Dans ce cas, vous pouvez le faire:
var was_pressed = 0
func _fixed_process(delta):
if !Input.is_key_pressed() && was_pressed = 1:
# Your key is NOT pressed but WAS pressed 1 frame before
# Code to be executed
# The rest is just checking whether your key is just pressed
if Input.is_key_pressed():
was_pressed = 1
elif !Input.is_key_pressed():
was_pressed = 0
C'est ce que j'ai utilisé. N'hésitez pas à m'informer s'il y a une meilleure façon de faire OnKeyUp
à Godot.
Merci beaucoup. – user193464
Y at-il quelque chose de spécifique pour la touche enfoncée, la touche enfoncée et la touche juste? – user193464