Paket | flash.ui |
Klass | public final class GameInput |
Arv | GameInput EventDispatcher Object |
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 3.7 |
GameInput
är startpunkten till GameInput-API:n. Du kan använda denna API för att hantera kommunikationen mellan ett program och spelindataenheter (till exempel styrspakar, spelkontroller och stavar).
Huvudsyftet med den här klassen är att ge åtkomst till indataenheter som stöds och som är anslutna till din programplattform. Denna statiska klass räknar upp de anslutna indataenheterna i en lista. Du kommer åt en enhet i listan med hjälp av metoden getDeviceAt(index:int)
.
Egenskapen numDevices
ger antalet indataenheter anslutna till plattformen. Använd detta värde för att bestämma den övre gränsen för enhetslistan.
Använd en instans av klassen för att lyssna efter händelser som meddelar dig om enheter som läggs till eller tas bort. Gör följande om du vill lyssna efter händelser:
-
Skapa en instans av klassen
GameInput
. -
Lägg till händelseavlyssnare för händelserna
GameInputEvent.DEVICE_ADDED
ochGameInputEvent.DEVICE_REMOVED
. (Händelser kan endast registreras i en instans av klassen.)
Denna klass innehåller även flaggan isSupported
, som visar om GameInput-API:n stöds på din plattform.
Mer information finns i artikeln på Adobe Air Developer Center: Spelkontroller i Adobe AIR.
I Android krävs minst Android OS-version 4.1, SWF-version 20 och namnrymden 3.7 för funktionen. I iOS krävs minst iOS-version 9.0, SWF-version 34 och namnrymden 23.0 för funktionen.
Upptäcka en spelindataenhet bland många identiska enheter
Ett vanligt krav i spel med två eller fler spelare är att kunna skilja en enhet från en annan identisk enhet. Ibland måste programmet avgöra vilken enhet som representerar "Spelare 1", "Spelare 2", ..., "Spelare N".
Lösning:
-
Lägg till händelseavlyssnare för varje kontroll på alla ej upptäckta indataenheter. Dessa händelseavlyssnare lyssnar efter
Event.CHANGE
-händelser som skickas när ett kontrollvärde ändras. - Den första gången som en kontroll aktiveras (till exempel när en knapp trycks ned eller en utlösare används) kommer programmet att "märka" enheten.
- Ta bort alla händelseavlyssnare från de övriga ej upptäckta indataenheterna.
- Upprepa stegen 1 till 3 om det behövs för att identifiera övriga ej upptäckta indataenheter.
Relaterade API-element
Egenskap | Definieras med | ||
---|---|---|---|
constructor : Object
En referens till klassobjektet eller konstruktorfunktionen för en given objektinstans. | Object | ||
isSupported : Boolean [statisk] [skrivskyddad]
Anger om den aktuella plattformen har stöd för GameInput-API:n. | GameInput | ||
numDevices : int [statisk] [skrivskyddad]
Anger antalet anslutna indataenheter. | GameInput |
Metod | Definieras med | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registrerar ett händelseavlyssnarobjekt för ett EventDispatcher-objekt så att avlyssnaren får meddelanden om händelser. | EventDispatcher | ||
Skickar en händelse till händelseflödet. | EventDispatcher | ||
[statisk]
Hämta indataenheten på den angivna indexpositionen i listan över anslutna indataenheter. | GameInput | ||
Kontrollerar om EventDispatcher-objektet har några avlyssnare registrerade för en viss typ av händelse. | EventDispatcher | ||
Anger om det finns en egenskap angiven för ett objekt. | Object | ||
Anger om en instans av klassen Object finns i prototypkedjan för objektet som anges som parameter. | Object | ||
Anger om den angivna egenskapen finns och är uppräkningsbar. | Object | ||
Tar bort en avlyssnare från EventDispatcher-objektet. | EventDispatcher | ||
Anger tillgänglighet för en dynamisk egenskap för slingåtgärder. | Object | ||
Returnerar det här objektets strängrepresentation, formaterad i enlighet med språkspecifika konventioner. | Object | ||
Returnerar det angivna objektets strängbeteckning. | Object | ||
Returnerar det angivna objektets primitiva värde. | Object | ||
Kontrollerar om en händelseavlyssnare är registrerad för det här EventDispatcher-objektet eller något av dess överordnade objekt för den angivna händelsetypen. | EventDispatcher |
Händelse | Sammanfattning | Definieras med | ||
---|---|---|---|---|
[utsändningshändelse] Skickas när Flash Player eller AIR får operativsystemfokus och blir aktivt. | EventDispatcher | |||
[utsändningshändelse] Skickas när Flash Player eller AIR förlorar operativsystemfokus och blir inaktivt. | EventDispatcher | |||
Skickas när en spelindataenhet ansluts till plattformen eller när en redan ansluten enhet sätts på. | GameInput | |||
Skickas när en spelindataenhet tas bort från plattformen eller när en ansluten enhet stängs av. | GameInput | |||
Skickas när en spelenhet ansluts men inte kan användas. | GameInput |
isSupported | egenskap |
numDevices | egenskap |
getDeviceAt | () | metod |
public static function getDeviceAt(index:int):GameInputDevice
Språkversion: | ActionScript 3.0 |
Körningsmiljöversioner: | AIR 3.7 |
Hämta indataenheten på den angivna indexpositionen i listan över anslutna indataenheter.
Ordningen för enheterna i indexet kan förändras när en enhet läggs till eller tas bort. Du kan välja egenskaperna name
och id
på ett GameInputDevice
-objekt så att de matchar en specifik indataenhet.
Parametrar
index:int — Indexpositionen i listan med indataenheter.
|
GameInputDevice — Angiven GameInputDevice .
|
Utlöser
RangeError — När det angivna indexet är mindre än noll eller större än (numDevices - 1) .
|
deviceAdded | Händelse |
flash.events.GameInputEvent
Skickas när en spelindataenhet ansluts till plattformen eller när en redan ansluten enhet sätts på.
deviceRemoved | Händelse |
flash.events.GameInputEvent
Skickas när en spelindataenhet tas bort från plattformen eller när en ansluten enhet stängs av.
deviceUnusable | Händelse |
flash.events.GameInputEvent
Skickas när en spelenhet ansluts men inte kan användas. Den här händelsen är specifik för Windows. Detta händer till exempel i en Windows-webbläsare som körs i en sandlåda när ett annat DirectInput-baserat program redan använder enheten.
Tue Jun 12 2018, 01:40 PM Z