Paquete | flash.ui |
Clase | public final class GameInput |
Herencia | GameInput EventDispatcher Object |
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 3.7 |
GameInput
es el punto de entrada a la API GameInput. Puede utilizar esta API para administrar las comunicaciones entre una aplicación y los dispositivos de entrada de juegos (por ejemplo: joysticks, gamepads y varitas mágicas).
El principal objetivo de esta clase es facilitar el acceso a los dispositivos de entrada admitidos que están conectados a la plataforma de la aplicación. Esta clase estática enumera los dispositivos de entrada conectados en una lista. Se puede acceder a un dispositivo de la lista usando el método getDeviceAt(index:int)
.
La propiedad numDevices
proporciona el número de dispositivos conectados actualmente a la plataforma. Utilice este valor para determinar el límite superior de la lista de dispositivos.
Utilice una instancia de esta clase para detectar eventos que le notifiquen acerca de la incorporación y la eliminación de dispositivos de entrada. Para detectar estos eventos, haga lo siguiente:
-
Cree una instancia de la clase
GameInput
. -
Añada detectores de eventos para los eventos
GameInputEvent.DEVICE_ADDED
yGameInputEvent.DEVICE_REMOVED
. (Los eventos sólo pueden estar registrados en una instancia de la clase.)
Esta clase incluye también el indicador isSupported
, que indica si la API GameInput se admite en su plataforma.
Para obtener más información, consulte el artículo del Centro de desarrolladores de Adobe Air:Controladores de juego en Adobe AIR.
Para Android, esta función es compatible con una versión del SO Android mínima de 4.1 y requiere la versión de SWF mínima de 20 y espacio de nombre 3.7. Para iOS, esta función es compatible con una versión mínima de iOS 9.0 y requiere la versión de SWF mínima de 34 y espacio de nombre 23.0.
Cómo detectar un dispositivo de entrada de juegos entre dispositivos idénticos
Una de las necesidades habituales de los juegos con dos o más jugadores es detectar un dispositivo de entre dispositivos idénticos. Por ejemplo, las aplicaciones a veces deben determinar qué dispositivo representa "Jugador 1", "Jugador 2", ..., "Jugador N".
Solución:
-
Añada detectores de eventos a cada control en todos los dispositivos de entrada no detectados. Estos detectores de eventos detectan eventos
Event.CHANGE
, que se distribuyen cada vez que cambia el valor de un control. - La primera vez que se activa cualquier control (por ejemplo, se presiona un botón o se desencadena una acción) la aplicación etiqueta dicho dispositivo.
- Elimine todos los detectores de eventos de los demás dispositivos de entrada no detectados.
- Repita los pasos 1-3 tantas veces como sea necesario para identificar el resto de los dispositivos de entrada no detectados.
Elementos de API relacionados
Propiedad | Definido por | ||
---|---|---|---|
constructor : Object
Una referencia a la clase de objeto o función constructora para una instancia de objeto determinada. | Object | ||
isSupported : Boolean [estática] [solo lectura]
Indica si la plataforma actual admite la API GameInput. | GameInput | ||
numDevices : int [estática] [solo lectura]
Proporciona el número de dispositivos de entrada conectados. | GameInput |
Método | Definido por | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Registra un objeto de detector de eventos con un objeto EventDispatcher, de modo que el detector reciba la notificación de un evento. | EventDispatcher | ||
Distribuye un evento en el flujo del evento. | EventDispatcher | ||
[estática]
Obtiene el dispositivo de entrada en la ubicación del índice especificado en la lista de dispositivos de entrada conectados. | GameInput | ||
Comprueba si el objeto EventDispatcher tiene detectores registrados para un tipo concreto de evento. | EventDispatcher | ||
Indica si un objeto tiene definida una propiedad especificada. | Object | ||
Indica si hay una instancia de la clase Object en la cadena de prototipo del objeto especificado como parámetro. | Object | ||
Indica si existe la propiedad especificada y si es enumerable. | Object | ||
Elimina un detector del objeto EventDispatcher. | EventDispatcher | ||
Establece la disponibilidad de una propiedad dinámica para operaciones de bucle. | Object | ||
Devuelve la representación de cadena de este objeto, con formato según las convenciones específicas de configuración regional. | Object | ||
Devuelve la representación de cadena del objeto especificado. | Object | ||
Devuelve el valor simple del objeto especificado. | Object | ||
Comprueba si hay registrado un detector de eventos con este objeto EventDispatcher o con cualquiera de sus ascendientes para el tipo de evento concreto. | EventDispatcher |
Evento | Resumen | Definido por | ||
---|---|---|---|---|
[evento broadcast] Se distribuye cuando Flash Player o AIR pasan a estar activos. | EventDispatcher | |||
[evento broadcast] Se distribuye cuando Flash Player o de AIR pasan a estar inactivos. | EventDispatcher | |||
Se distribuye cuando un dispositivo de entrada de juegos está conectado a su plataforma, o cuando un dispositivo conectado ya está encendido. | GameInput | |||
Se distribuye cuando un dispositivo de entrada de juegos se elimina de su plataforma, o cuando un dispositivo conectado se apaga. | GameInput | |||
Se distribuye cuando un dispositivo de entrada de juego está conectado pero no se puede utilizar. | GameInput |
isSupported | propiedad |
numDevices | propiedad |
numDevices:int
[solo lectura] Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 3.7 |
Proporciona el número de dispositivos de entrada conectados. Cuando un dispositivo está conectado, se activa el evento GameInputEvent.DEVICE_ADDED
.
Implementación
public static function get numDevices():int
getDeviceAt | () | método |
public static function getDeviceAt(index:int):GameInputDevice
Versión del lenguaje: | ActionScript 3.0 |
Versiones de motor de ejecución: | AIR 3.7 |
Obtiene el dispositivo de entrada en la ubicación del índice especificado en la lista de dispositivos de entrada conectados.
El orden de los dispositivos en el índice puede cambiar cada vez que se añade o se elimina un dispositivo. Se pueden comprobar las propiedades name
e id
en un objeto GameInputDevice
para hacer coincidir un dispositivo de entrada concreto.
Parámetros
index:int — La posición del índice en la lista de los dispositivos de entrada.
|
GameInputDevice — El GameInputDevice especificado.
|
Emite
RangeError — Cuando el índice proporcionado es menor que cero o mayor que (numDevices - 1) .
|
deviceAdded | Evento |
flash.events.GameInputEvent
Se distribuye cuando un dispositivo de entrada de juegos está conectado a su plataforma, o cuando un dispositivo conectado ya está encendido.
deviceRemoved | Evento |
flash.events.GameInputEvent
Se distribuye cuando un dispositivo de entrada de juegos se elimina de su plataforma, o cuando un dispositivo conectado se apaga.
deviceUnusable | Evento |
flash.events.GameInputEvent
Se distribuye cuando un dispositivo de entrada de juego está conectado pero no se puede utilizar. Este evento es específico solo se Windows. Por ejemplo, esto sucede en un navegador de entorno limitado Windows cuando ya hay otra aplicación basada en DirectInput utilizando el dispositivo.
Tue Jun 12 2018, 02:12 PM Z