FlxVirtualPad
API Reference > flixel.ui > FlxVirtualPad
FlxVirtualPad
モバイル環境向けの仮想ゲームパッドを表示・制御するクラスです
- FlxVirtualPad
- スーパークラス
- 定数
- フィールド
- buttonA:FlxButton : Aボタン
- buttonB:FlxButton : Bボタン
- buttonC:FlxButton : Cボタン
- buttonY:FlxButton : Yボタン
- buttonX:FlxButton : Xボタン
- buttonLeft:FlxButton : 左ボタン
- buttonUp:FlxButton : 上ボタン
- buttonRight:FlxButton : 右ボタン
- buttonDown:FlxButton : 下ボタン
- dPad:FlxSpriteGroup : 方向ボタンのグループ
- actions:FlxSpriteGroup : アクションボタンのグループ
- メソッド
- 使い方
スーパークラス
FlxBasic < FlxObject < FlxSprite < FlxTypedSpriteGroup<FlxSprite> < FlxSpriteGroup
定数
分類 | 種類 | 説明 |
FlxDPadMode? (方向ボタン) | NONE | なし |
UP_DOWN | 上下ボタン | |
LEFT_RIGHT | 左右ボタン | |
UP_LEFT_RIGHT | 上左右ボタン | |
FULL | 上下左右ボタン | |
FlxActionMode?(アクションボタン) | NONE | なし |
A | Aボタン | |
A_B | ABボタン | |
A_B_C | ABCボタン | |
A_B_X_Y | ABXYボタン |
※存在しないボタンにアクセスするとハングアップします。
例えば、方向ボタンに「LEFT_RIGHT (左右ボタン)」を定義したのにもかかわらず、 FlxVirtualPad.buttonUp (上ボタン)にアクセスした場合
フィールド
buttonA:FlxButton : Aボタン
buttonB:FlxButton : Bボタン
buttonC:FlxButton : Cボタン
buttonY:FlxButton : Yボタン
buttonX:FlxButton : Xボタン
buttonLeft:FlxButton : 左ボタン
buttonUp:FlxButton : 上ボタン
buttonRight:FlxButton : 右ボタン
buttonDown:FlxButton : 下ボタン
dPad:FlxSpriteGroup : 方向ボタンのグループ
actions:FlxSpriteGroup : アクションボタンのグループ
メソッド
new() : コンストラクタ
- 引数
createButton : ボタンを生成します
ボタンのサイズをカスタマイズしたい場合はこの関数を使います
- 引数
- X:Float : 座標(X)
- Y:Float : 座標(Y)
- Width:Float : 幅
- Height:Float : 高さ
- Graphic:String : 画像
- ?Onclick:Void->Void : ボタンを押した時にコールバック関数
- 戻り値:FlxButton
使い方
package; import flixel.FlxG; import flixel.ui.FlxVirtualPad; import flixel.util.FlxColor; import flixel.FlxSprite; import flixel.FlxState; class MenuState extends FlxState { var _spr:FlxSprite; var _pad:FlxVirtualPad; /** * コンストラクタ **/ override public function create():Void { super.create(); // 操作するスプライト _spr = new FlxSprite(); _spr.makeGraphic(32, 32, FlxColor.WHITE); this.add(_spr); // 左右移動・ABボタンの仮想ゲームパッドを生成 _pad = new FlxVirtualPad(LEFT_RIGHT, A_B); _pad.alpha = 0.75; // 少し透過する this.add(_pad); } /** * 更新 **/ override public function update(elapsed:Float):Void { super.update(elapsed); if(_pad.buttonLeft.pressed) { // 左に動く _spr.x -= 5; } else if(_pad.buttonRight.pressed) { // 右に動く _spr.x += 5; } if(_pad.buttonA.pressed) { // 色変え _spr.color = FlxG.random.int(0xFFFFFFFF); } if(_pad.buttonB.justPressed) { // 元の色に戻す _spr.color = FlxColor.WHITE; } } }
実行するとこのように表示され、仮想ゲームパッドからスプライトの移動と色変えができます。