FlxVirtualPad の変更点
[[API Reference]] > [[flixel.ui]] > FlxVirtualPad
* FlxVirtualPad [#e515cab0]
モバイル環境向けの仮想ゲームパッドを表示・制御するクラスです
----
#contents
----
* スーパークラス [#u113d9ba]
FlxBasic
< FlxObject
< FlxSprite
< FlxTypedSpriteGroup<FlxSprite>
< FlxSpriteGroup
* 定数 [#g0d61e40]
|''分類''|''種類''|''説明''|h
|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 (上ボタン)にアクセスした場合
* フィールド [#jac99031]
** buttonA:FlxButton : Aボタン [#qb299df3]
** buttonB:FlxButton : Bボタン [#ob06174b]
** buttonC:FlxButton : Cボタン [#q9cd6278]
** buttonY:FlxButton : Yボタン [#s8d84b95]
** buttonX:FlxButton : Xボタン [#ocad25af]
** buttonLeft:FlxButton : 左ボタン [#l6675a28]
** buttonUp:FlxButton : 上ボタン [#ue45f87a]
** buttonRight:FlxButton : 右ボタン [#v9877416]
** buttonDown:FlxButton : 下ボタン [#yeee433e]
** dPad:FlxSpriteGroup : 方向ボタンのグループ [#q8b16b24]
** actions:FlxSpriteGroup : アクションボタンのグループ [#l762151c]
* メソッド [#f5037759]
** new() : コンストラクタ [#w13ac196]
- 引数
-- ?DPad:FlxDPadMode : Direction-Pad。パッドモード (方向ボタンの種類)
例えば、LEFT_RIGHT を指定すると左右ボタンが有効になります
-- ?ActionMode:FlxActionMode : アクションモード
例えば、A_B_C を指定すると、ABCボタンが有効になります
** createButton : ボタンを生成します [#n9fecc81]
ボタンのサイズをカスタマイズしたい場合はこの関数を使います
- 引数
-- X:Float : 座標(X)
-- Y:Float : 座標(Y)
-- Width:Float : 幅
-- Height:Float : 高さ
-- Graphic:String : 画像
-- ?Onclick:Void->Void : ボタンを押した時にコールバック関数
- 戻り値:FlxButton
* 使い方 [#t47b2c82]
#geshi(Actionscript3){{
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;
}
}
}
}}
#ref(virtual_pad.png);
実行するとこのように表示され、移動と色変えができます。
実行するとこのように表示され、仮想ゲームパッドからスプライトの移動と色変えができます。