コントローラの全ボタン状態をまとめて取得する。
- 1個のボタンの状態だけ取得したい場合は、もう一つのBUTTON関数のヘルプを参照。
書式
BUTTON(コントローラーID[,-1[,機能ID]])
引き数
コントローラーID
調べたいコントローラーのID
0 | デフォルトコントローラー |
1~4 | 通常コントローラー |
- コントローラーIDの詳細はCONTROLLER関数のヘルプを参照。
-1
ボタンIDに-1を設定すると、全ボタン状態をまとめて取得するようになる
- コントローラーIDだけ指定した場合も-1を指定した事になる。
機能ID
知りたい状態の種類(省略時は0)
0 | ボタンが押されている |
1 | ボタンを押した瞬間(BREPEAT対応あり) |
2 | ボタンを押した瞬間(BREPEAT対応なし) |
3 | ボタンを離した瞬間 |
戻り値
指定したコントローラーのボタン状態がビット毎にセットされて返ってくる。
ボタンが押されているか調べるには、下記サンプルのようなプログラムを書けば良い。
サンプル・参考動画
'ボタンに対応するビットをONにした値を作るには、1をボタンIDだけ左シフト(<<)すれば良い
'たとえば#B_RLEFTが押されているか調べたい場合
BTNBIT_RLEFT = 1 << #B_RLEFT
'ビット値を作ったら、BUTTON関数の結果とANDを求めて、結果が0以外なら押されている
IF (BUTTON(0) AND BTNBIT_RLEFT) != 0 THEN PRINT ""ひだりボタン""
コメント