Adobe® Flash® Platform 用 ActionScript® 3.0 リファレンスガイド
ホーム  |  パッケージおよびクラスリストの非表示 |  パッケージ  |  クラス  |  新機能  |  索引  |  付録  |  英語で表示される理由
フィルター: サーバーからデータを取得しています...
サーバーからデータを取得しています...
flash.ui 

GameInput  - AS3

パッケージflash.ui
クラスpublic final class GameInput
継承GameInput Inheritance EventDispatcher Inheritance Object

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 3.7

GameInput クラスは GameInput API のエントリポイントです。この API を使用して、アプリケーションとゲーム入力デバイス(ジョイスティック、ゲームパッド、ペン型スキャナーなど)との通信を管理できます。

このクラスの主な目的は、アプリケーションプラットフォームに接続されているサポート対象の入力デバイスにアクセスできるようにすることです。この静的クラスは、接続済み入力デバイスをリストに列挙します。リストのデバイスには、getDeviceAt(index:int) メソッドを使用してアクセスします。

numDevices プロパティは、プラットフォームに現在接続されている入力デバイスの数です。デバイスリストの上限を決定するには、この値を使用します。

入力デバイスの追加および取り外しをユーザーに通知するイベントを監視するには、このクラスのインスタンスを使用します。このようなイベントを監視するには、次の操作を実行します。

  1. GameInput クラスのインスタンスを作成します。
  2. GameInputEvent.DEVICE_ADDED イベントおよび GameInputEvent.DEVICE_REMOVED イベントのイベントリスナーを追加します(イベントが登録できるのは、このクラスのインスタンス上だけです)。

このクラスには isSupported フラグも含まれます。このフラグは、GameInput API がプラットフォームでサポートされているかどうかを示します。

詳しくは、Adobe Air Developer Center の記事「Game controllers on Adobe AIR」を参照してください。

Android の場合、この機能は Android OS バージョン 4.1 以降に対応しており、必要最低バージョンは SWF バージョン 20 および名前空間 3.7 です。iOS の場合、この機能は iOS バージョン 9.0 以降に対応しており、必要最低バージョンは SWF バージョン 34 および名前空間 23.0 です。

同じ複数のデバイスの中から特定の 1 つのゲーム入力デバイスを検出する方法

2 人以上のプレーヤーがいるゲームの一般的な要件として、複数の同一デバイスから特定の 1 つのデバイスを検出することがあります。例えば、どのデバイスが「Player 1」、「Player 2」、...、「Player N」を表しているのかをアプリケーションで特定する必要があるような場合です。

解決策:

  1. 未検出のすべての入力デバイスにあるすべてのコントロールにイベントリスナーを追加します。これらのイベントリスナーで Event.CHANGE イベントをリッスンします。このイベントは、コントロール値が変更されたときに送出されます。
  2. あるコントロールが最初にアクティブになった(ボタンが押される、トリガーが引かれるなど)ときに、アプリケーションでそのデバイスにラベルを付けます。
  3. 残りの未検出の入力デバイスから、すべてのイベントリスナーを削除します。
  4. 必要に応じて手順 1~3 を繰り返し、残りの未検出入力デバイスを特定します。

関連する API エレメント



パブリックプロパティ
 プロパティ定義元
 Inheritedconstructor : Object
指定されたオブジェクトインスタンスのクラスオブジェクトまたはコンストラクター関数への参照です。
Object
      isSupported : Boolean
[静的] [読み取り専用] 現在のプラットフォームで GameInput API. がサポートされるかどうかを示します。
GameInput
      numDevices : int
[静的] [読み取り専用] 接続された入力デバイスの数です。
GameInput
パブリックメソッド
 メソッド定義元
 Inherited
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
イベントリスナーオブジェクトを EventDispatcher オブジェクトに登録し、リスナーがイベントの通知を受け取るようにします。
EventDispatcher
 Inherited
イベントをイベントフローに送出します。
EventDispatcher
  
[静的] 接続された入力デバイスのリストで、指定したインデックス位置にある入力デバイスを取得します。
GameInput
 Inherited
EventDispatcher オブジェクトに、特定のイベントタイプに対して登録されたリスナーがあるかどうかを確認します。
EventDispatcher
 Inherited
オブジェクトに指定されたプロパティが定義されているかどうかを示します。
Object
 Inherited
Object クラスのインスタンスが、パラメーターとして指定されたオブジェクトのプロトタイプチェーン内にあるかどうかを示します。
Object
 Inherited
指定されたプロパティが存在し、列挙できるかどうかを示します。
Object
 Inherited
removeEventListener(type:String, listener:Function, useCapture:Boolean = false):void
EventDispatcher オブジェクトからリスナーを削除します。
EventDispatcher
 Inherited
ループ処理に対するダイナミックプロパティの可用性を設定します。
Object
 Inherited
ロケール固有の規則に従って書式設定された、このオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのストリング表現を返します。
Object
 Inherited
指定されたオブジェクトのプリミティブな値を返します。
Object
 Inherited
指定されたイベントタイプについて、この EventDispatcher オブジェクトまたはその祖先にイベントリスナーが登録されているかどうかを確認します。
EventDispatcher
イベント
 イベント 概要 定義元
 Inherited[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを取得して、アクティブになったときに送出されます。EventDispatcher
 Inherited[ブロードキャストイベント] Flash Player または AIR アプリケーションがオペレーティングシステムのフォーカスを失って、非アクティブになったときに送出されます。EventDispatcher
  ゲーム入力デバイスがプラットフォームに接続されたとき、または既に接続されているデバイスがオンになったときに送出されます。GameInput
  ゲーム入力デバイスがプラットフォームから削除されたとき、または接続されたデバイスがオフになったときに送出されます。GameInput
  ゲーム入力デバイスが接続されていても使用できない場合に送出されます。GameInput
プロパティの詳細
    

isSupported

プロパティ
isSupported:Boolean  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 3.7

現在のプラットフォームで GameInput API. がサポートされるかどうかを示します。



実装
    public static function get isSupported():Boolean
    

numDevices

プロパティ 
numDevices:int  [読み取り専用]

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 3.7

接続された入力デバイスの数です。デバイスが接続されたときに、GameInputEvent.DEVICE_ADDED イベントが送出されます。



実装
    public static function get numDevices():int
メソッドの詳細

    getDeviceAt

()メソッド
public static function getDeviceAt(index:int):GameInputDevice

言語バージョン: ActionScript 3.0
ランタイムバージョン: AIR 3.7

接続された入力デバイスのリストで、指定したインデックス位置にある入力デバイスを取得します。

インデックス内のデバイスの順序は、デバイスが追加または削除されるごとに変更される可能性があります。GameInputDevice オブジェクトの name プロパティと id プロパティをチェックして、特定の入力デバイスを照会できます。

パラメーター

index:int — 入力デバイスのリストでのインデックス位置です。

戻り値
GameInputDevice — 指定された GameInputDevice です。

例外
RangeError — 指定されたインデックスが 0 未満または (numDevices - 1) より大きい場合。
イベントの詳細

deviceAdded

イベント
イベントオブジェクトの型: flash.events.GameInputEvent

ゲーム入力デバイスがプラットフォームに接続されたとき、または既に接続されているデバイスがオンになったときに送出されます。

deviceRemoved

イベント  
イベントオブジェクトの型: flash.events.GameInputEvent

ゲーム入力デバイスがプラットフォームから削除されたとき、または接続されたデバイスがオフになったときに送出されます。

deviceUnusable

イベント  
イベントオブジェクトの型: flash.events.GameInputEvent

ゲーム入力デバイスが接続されていても使用できない場合に送出されます。このイベントは Windows のみに固有です。例えば、別の DirectInput ベースのアプリケーションが既にデバイスを使用している場合に、Windows のサンドボックス化されたブラウザーで起こります。





[ X ]英語で表示される理由
ActionScript 3.0 リファレンスガイドのコンテンツが英語で表示されます。

ActionScript 3.0 リファレンスガイドのすべての部分がすべての言語に翻訳されているわけではありません。言語エレメントが翻訳されていない場合、そのエレメントは英語で表示されます。例えば、ga.controls.HelpBox クラスはどの言語にも訳されていません。このため、リファレンスガイドの日本語バージョンでは、ga.controls.HelpBox クラスは英語で表示されます。