button_downとbutton_upとpressedシグナルの違い
GodotのBaseButtonのシグナルに
button_down
button_up
pressed
がある。雰囲気でbutton_down
シグナルを使っていたんだけど、pressed
って何だ?と思ったので調査。
pressed
はActionMode
の値によって投げられるタイミングが変わって
ACTION_MODE_BUTTON_PRESS
なら押したときACTION_MODE_BUTTON_RELEASE
なら離したとき
デフォルトはACTION_MODE_BUTTON_RELEASE
なので、pressed
とbutton_up
は同じタイミングで発せられる。ACTION_MODE_BUTTON_PRESS
に変えるとbutton_down
と同じになる。同じゲーム内で判定基準が異なるのは混乱の元なので、統一されてればいいんじゃねっていう雑な感想もありつつ、離したときに「押した」と判定されるものが世の中に多いように感じるので、pressed
かbutton_up
を使おうと思う。