ゲームパッド
概要
「ゲームパッド」は、ジョイスティックやゲームパッドなどからの入力を受け付ける種類です。
作成する方法
「ゲームデバイス」種類を使って生成します。
手順
【自分】を更新する
ゲームパッドの情報を更新します
設定項目
| 設定項目 | 型 | 説明 | |
|---|---|---|---|
| 名前 | 文字列 | □ | ゲームパッドの名称 |
| 番号 | 整数 | □ | ゲームパッドのID |
| 有効 | 真偽 | □ | ゲームパッドが接続されて利用できる状態かどうか |
| ドライバ名 | 文字列 | □ | ゲームパッドのドライバ名 |
| レジストリキー | 文字列 | □ | レジストリに記録するキー |
| 最大ボタン数 | 整数 | □ | ゲームパッドが対応しているボタンの数 |
| 最大軸数 | 整数 | □ | ゲームパッドが対応している軸の数 |
| ボタン数 | 整数 | □ | ゲームパッドにあるボタンの個数 |
| 軸数 | 整数 | □ | ゲームパッドの軸の数 |
| 軸最大値 | 整数 | ○ | 軸の最大値 |
| ハットスイッチ角度 | 整数 | □ | ハットスイッチが押されている方向の角度。 押されていない場合は、-1 |
| X軸 | 整数 | □ | X軸方向の値 (0~軸最大値) |
| Y軸 | 整数 | □ | Y軸方向の値 (0~軸最大値) |
| Z軸 | 整数 | □ | Z軸方向の値 (0~軸最大値) |
| U軸 | 整数 | □ | U軸方向の値 (0~軸最大値) |
| V軸 | 整数 | □ | V軸方向の値 (0~軸最大値) |
| R軸 | 整数 | □ | R軸方向の値 (0~軸最大値) |
| ボタン一覧 | 整数配列 | □ | すべてのボタンについてボタンが押されているかどうかを示した配列 |
| 第1ボタン | 真偽 | □ | 1番目のボタンが押されているかどうか |
| 第2ボタン | 真偽 | □ | 2番目のボタンが押されているかどうか |
| 第3ボタン | 真偽 | □ | 3番目のボタンが押されているかどうか |
| 第4ボタン | 真偽 | □ | 4番目のボタンが押されているかどうか |
| 第5ボタン | 真偽 | □ | 5番目のボタンが押されているかどうか |
| 第6ボタン | 真偽 | □ | 6番目のボタンが押されているかどうか |
| 第7ボタン | 真偽 | □ | 7番目のボタンが押されているかどうか |
| 第8ボタン | 真偽 | □ | 8番目のボタンが押されているかどうか |
サンプルコード
ゲームパッドからボタンを受け取る
USB接続した3軸8ボタンのゲームパッドの情報を取得します。
// ゲームパッドの情報の取得 //
ゲームデバイスの個数が0なら
「ジョイステックまたはゲームコントローラがインストールされていません。」を警告アイコンで表示する
終了する
そして
メイン画面を表示する
待機する
メイン画面とは
ウィンドウを継承する
はじめの手順
初期化する
ゲームデバイスの一覧のすべてのパッドについてそれぞれ繰り返す
選択リスト1へ「([パッドの番号])[パッドの名前]」を加える
そして
ゲームデバイスから0を取得して、選択パッドとする
ボタン円配列は{}
数を1から8まで増やしながら繰り返す
キャンバス1へ円を描いて、ボタン円配列(数)とする
その位置と大きさは{数*30,50,20,20}
その線色は、赤
その太さは3
その背景色は、白
そして
キャンバス1へ四角形を描いて、軸枠とする
その位置と大きさは{18,148,104,104}
キャンバス1へ円を描いて、軸点とする
その位置と大きさは{60,170,3,3}
その線色は、赤
その太さは3
その背景色は、白
キャンバス1へ円を描く
その位置と大きさは{150,150,100,100}
キャンバス1へ線を描いて、ハット線とする
その始点は{200,200}
その終点は{200,200}
その線色は、赤
その太さは3
キャンバス1を更新する
タイマー1というタイマーを作る
タイマー1の時間になった時の手順は、時間になった
タイマー1の"間隔"は100
タイマー1を開始する
終わり
初期化する手順
この実質大きさは{284,274}
この内容は「ゲームパッドのテスト」
この位置と大きさは{15,15,300,312}
選択リスト1という選択リストを作る
その入力可能は×
その移動順は3
その位置と大きさは{35,12,221,20}
プログレスバー1というプログレスバーを作る
その移動順は1
その位置と大きさは{35,93,221,23}
キャンバス1というキャンバスを作る
その移動順は2
その位置と大きさは{0,0,284,274}
そのドッキング方向は「全体」
この設計スケール比率は{96,96}
終わり
時間になった手順
選択パッドを更新する
ボタン状態一覧は、選択パッドのボタン一覧
数を1から8まで増やしながら繰り返す
ボタン状態一覧(数)が○なら、ボタン円配列(数)の背景色は、赤。そうでなければ、ボタン円配列(数)の背景色は、白
そして
軸点の位置は{20+選択パッドのX軸、150+選択パッドのY軸}
プログレスバー1の値は、選択パッドのZ軸
選択パッドのハットスイッチ角度が-1なら
ハット線の終点は{200,200}
そうでなければ
ハット線の終点は{200+コサイン(選択パッドのハットスイッチ角度-90)*50,200+サイン(選択パッドのハットスイッチ角度-90)*50}
そして
キャンバス1を更新する
終わり
選択リスト1が選択された時の手順
ゲームデバイスから(選択リスト1の番号)を取得して、選択パッドとする
選択パッドの有効でなければ
「このデバイスは、利用できません」を警告メッセージで表示する
そして
終わり
終わり