ゲームパッドのボタン入力状態を取得
val = JspadGetButtons()
(プラグイン / モジュール : mod_dish-js-gamepad)
# HSP3Dish.jsでのみ動作します。 ゲームパッドで現在押されている複数のボタン状況が数値としてまとめて返されます。
| 値(16進) | #define | ゲームパッド |
|---|---|---|
| $00001 | JSPAD_S JSPAD_NB JSPAD_MA |
南ボタン: B(N)、×(DS4)、A(MS) |
| $00002 | JSPAD_E JSPAD_NA JSPAD_MB |
東ボタン: A(N)、○(DS4)、B(MS) |
| $00004 | JSPAD_W JSPAD_NY JSPAD_MX |
西ボタン: Y(N)、□(DS4)、X(MS) |
| $00008 | JSPAD_N JSPAD_NX JSPAD_MY |
北ボタン: X(N)、△(DS4)、Y(MS) |
| $00010 | JSPAD_L JSPAD_L1 JSPAD_LB |
Lボタン(L1,LB) |
| $00020 | JSPAD_R JSPAD_R1 JSPAD_RB |
Rボタン |
| $00040 | JSPAD_ZL JSPAD_L2 JSPAD_LT |
ZLボタン(L2,LT) |
| $00080 | JSPAD_ZR JSPAD_R2 JSPAD_RT |
ZRボタン(R2,RT) |
| $00100 | JSPAD_MINUS JSPAD_SHARE JSPAD_VIEW |
MINUSボタン(SHARE,VIEW) |
| $00200 | JSPAD_PLUS JSPAD_OPTIONS JSPAD_MENU |
PLUSボタン(OPTIONS,MENU) |
| $00400 | JSPAD_LCLICK JSPAD_L3 |
Lスティック押し込み |
| $00800 | JSPAD_RCLICK JSPAD_R3 |
Rスティック押し込み |
| $01000 | JSPAD_UP | UPボタン |
| $02000 | JSPAD_DOWN | DOWNボタン |
| $04000 | JSPAD_LEFT | LEFTボタン |
| $08000 | JSPAD_RIGHT | RIGHTボタン |
| $10000 | JSPAD_HOME JSPAD_PS |
HOMEボタン(PS) |
WebのゲームパッドAPIで設定されているボタン数値となっています。 まれにゲームパッドによっては南ボタンを押しても東ボタンが検出されるなど、ABXYのボタン配置が異なることがあります。 A⇔B, X⇔Y ボタンの入れ替えが簡単にできるように JspadSetBAYX命令 があるので活用してください。 ZLボタン, ZRボタン はアナログトリガーになっているコントローラがあります。 その場合は JspadGetLeftTrigger(), JspadGetRightTrigger() を使ってアナログ値を取得できます。 アナログスティックの値は JspadGetLeftX(), JspadGetLeftY(), JspadGetRightX(), JspadGetRightY() を使用してください。
#include "hsp3dish.as" #include "mod_dish-js-gamepad.hsp" *main redraw 0 color 255,255,255:boxf:color:pos 0,0 mes "JspadEnable=" + JspadEnable() mes "JspadGetID="+JspadGetID() mes "JspadButtonsNum=" + JspadButtonsNum() mes "JspadAxesNum=" + JspadAxesNum() mes "JspadGetButtons=" + JspadGetButtons() mes "JspadGetLeftTrigger=" + JspadGetLeftTrigger() mes "JspadGetRightTrigger=" + JspadGetRightTrigger() mes "JspadGetLeftX=" + JspadGetLeftX() mes "JspadGetLeftY=" + JspadGetLeftY() mes "JspadGetRightX=" + JspadGetRightX() mes "JspadGetRightY=" + JspadGetRightY() redraw 1 await (1000 / 60) goto *main
| JspadEnable | ゲームパッドが使用できる状態か取得 | (mod_dish-js-gamepad) |
| JspadGetID | 接続しているゲームパッドのID文字列を取得 | (mod_dish-js-gamepad) |
| JspadButtonsNum | 接続されているゲームパッドのボタン数を取得 | (mod_dish-js-gamepad) |
| JspadAxesNum | 接続されているゲームパッドのアナログスティック入力数を取得 | (mod_dish-js-gamepad) |
| JspadStick | ゲームパッドのキー入力をstick命令に寄せて取得 | (mod_dish-js-gamepad) |
| JspadGetLeftTrigger | ゲームパッドのLトリガー(L2)アナログ入力情報を取得 | (mod_dish-js-gamepad) |
| JspadGetRightTrigger | ゲームパッドのRトリガー(R2)アナログ入力情報を取得 | (mod_dish-js-gamepad) |
| JspadGetLeftX | ゲームパッドのLスティックX方向のアナログ入力情報を取得 | (mod_dish-js-gamepad) |
| JspadGetLeftY | ゲームパッドのLスティックY方向のアナログ入力情報を取得 | (mod_dish-js-gamepad) |
| JspadGetRightX | ゲームパッドのRスティックX方向のアナログ入力情報を取得 | (mod_dish-js-gamepad) |
| JspadGetRightY | ゲームパッドのRスティックY方向のアナログ入力情報を取得 | (mod_dish-js-gamepad) |
| JspadSetBAYX | ゲームパッドの A⇔B, X⇔Y ボタンの入れ替え設定 | (mod_dish-js-gamepad) |
| sample05_gamepad.hsp | #include "hsp3dish.as" #include "ezlocal-dish-js.hsp" e.. |
| プラグイン / モジュール | mod_dish-js-gamepad |
| バージョン | 1.1 |
| 作成日 | 2025/1/3 |
| 著作者 | MIZUSHIKI |
| URL | https://suwa.pupu.jp/HSP/index.html |
| 備考 | HSP3Dish.jsでゲームパッドを使用できるようになります。[Gamepad API利用] |
| タイプ | 拡張命令 |
| グループ | 拡張入出力制御命令 |
| 対応環境 | ・Windows 版 HSP |