CONTROLLER

プチコン3号(3.5.0) プチコンBIG 

コントローラーの情報取得

CONTROLLER [trm] OUT var var = CONTROLLER([trm])

パラメーター

trmコントローラーID(WiiU) 0:Gamepad 1~4:Wii互換コントローラ

戻り値

verボタン状況(数値)

解説

接続されているコントローラーの種類の情報を取得します。
trm:コントローラID
3DS:「0」のみ指定可能(「1」を返す)。0以外を指定した場合は必ず「1」を返します。
WiiU:0~5を指定(0:Gamepad 1~4:Wii互換コントローラ)
戻り値
戻り値は、各ハードが接続されているかが各bitで表された数値です。
bit10進数ボタン
01Gamepad/
3DS
12Wiiリモコン
24左プロコン
38右ジャイロ/
リモコンプラス
416ヌンチャク
532クラコン/
クラコンPRO
<例>Wiiリモコンにヌンチャクが装着されいる場合
ボタン543210
bitGamepad
/3DS
Wiiリモコンプロコンジャイロ/
リモコンプラス
ヌンチャククラコン/
クラコンPRO
戻り値010010
この場合、&B010010、つまり「18」を返します。

これらをANDなどの論理演算子で、それぞれが存在するかを取得します。

サンプルコード

接続されている機器情報を画面に表示
@MAINLOOP
C=CONTROLLER()  '接続機器の情報を取得
IF C AND 1 THEN ?"GamePad or 3DS
IF C AND 2 THEN ?"Wiiリモコン"
IF C AND 4 THEN ?"プロコン"
IF C AND 8 THEN ?"ジャイロ or リモコンプラス"
IF C AND 16 THEN ?"ヌンチャク"
IF C AND 32 THEN ?"クラコン or クラコンPRO"
GOTO @MAINLOOP
Wiiリモコン+ヌンチャクが接続されている場合の実行例
Wiiリモコン
ヌンチャク

参照

XON 3DS/WiiUモード切替、マイク、センサーの使用開始
XOFF マイク、拡張スライドパッド、各センサーの使用を終了
BUTTON 物理ボタン(十字キー、ボタン)の情報を取得
BREPEAT 物理ボタンのキーリピート機能(自動連打)を設定
STICK スライドパッドの情報を取得
STICKEX 拡張スライドパッドの情報を取得
ACCEL モーションセンサー(加速度センサー)情報を取得
GYROA ジャイロセンサー(角度センサー)の「角度変化」情報を取得
GYROV ジャイロセンサー(角度センサー)の「角速度」情報を取得
GYROSYNC ジャイロセンサー(角度センサー)の値をリセット
TOUCH タッチパネルの情報を取得
MICSTART マイクからのサンプリング(音声取得)を開始
MICSTOP マイクからのサンプリング(音声取得)を停止
MICDATA サンプリングデータの指定位置を調べる
MICSAVE サンプリングデータを配列にコピー
CONTROLLER コントローラーの情報取得
VIBLATE プチコンBIG コントローラーを振動させる

Facebookコメント