2017-09-04 12 views
2

私はGodot EngineとGDscriptを勉強していて、インターネットでキーボードイベントを検索しましたが、私はうんざりしませんでした。 Godotのようなものがありますか:on_key_down("keycode")Godotキーボードイベント

答えて

1

そこには、公式OnKeyUpをオプションでませんが、あなたはアクションが押されたときに/解放の入力を受け取るために_input(event)機能を使用することができます。

func _input(event): 

     if event.is_action_pressed("my_action"): 
      # Your code here 
     elif event.is_action_released("my_action): 
      # Your code here 

アクションは、プロジェクトに設定されています設定>入力マップ。

もちろん、必ず_inputを使用するとは限りませんが、固定アップデート内の入力が得られます。 Input.is_key_pressed()を使用できますが、is_key_released()はありません。その場合は次のようにしてください:

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 

これは私が使っていることです。 GodotでOnKeyUpを実行するより良い方法がある場合は、私に知らせてください。

関連する問題