Пакет | flash.ui |
Класс | public final class GameInput |
Наследование | GameInput EventDispatcher Object |
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 3.7 |
GameInput
является основным для реализации API-интерфейса GameInput. С помощью этого API-интерфейса можно управлять обменом данных между приложением и игровыми устройствами ввода (например, джойстиками, геймпадами и палочками).
Главная цель этого класса состоит в том, чтобы обеспечить доступ к поддерживаемым устройствам ввода, которые подключены к платформе приложения. В этом статическом классе в списке перечислены связанные устройства ввода. Доступ к устройству из списка можно получить с помощью метода getDeviceAt(index:int)
.
Свойство numDevices
сообщает число устройств ввода, в настоящее время подключенных к платформе. Используйте это значение для определения верхней границы списка устройств.
Используйте экземпляр этого класса для прослушивания событий, уведомляющих о подключении или отключении устройств ввода. Для прослушивания этих событий выполните следующие действия.
-
Создайте экземпляр класса
GameInput
. -
Добавьте прослушиватели для событий
GameInputEvent.DEVICE_ADDED
иGameInputEvent.DEVICE_REMOVED
. (События могут регистрироваться только для экземпляра класса.)
Этот класс также имеет флаг isSupported
, который обозначает, поддерживается ли API-интерфейс GameInput на платформе.
Дополнительные сведения см. в статье Adobe Air Developer Center Игровые контроллеры на Adobe AIR.
Для устройств Android эта функция поддерживает ОС Android начиная с версии 4.1 и требует SWF начиная с версии 20 и пространство имен 3.7. Для устройств iOS эта функция поддерживает ОС iOS начиная с версии 9.0 и требует SWF начиная с версии 34 и пространство имен 23.0.
Определение одного игрового устройства ввода среди идентичных устройств
Распространенным требованием для игр, рассчитанных на два или более игроков, является определение одного устройства среди идентичных устройств. Например, приложения иногда должны определять, какое устройство представляет игрока 1, игрока 2, ... игрока N.
Решение:
-
Добавьте прослушиватели событий для каждого элемента управления на всех неопределенных устройствах ввода. Эти прослушиватели улавливают события
Event.CHANGE
, отправляемые при изменении значения элемента управления. - При первой активации любого элемента управления (например, при нажатии кнопки или нажатии триггера) приложение присваивает метку этому устройству.
- Удалите все прослушиватели событий для оставшихся неопределенных устройств ввода.
- При необходимости повторите шаги 1-3, чтобы идентифицировать оставшиеся неопределенные устройства ввода.
Связанные элементы API
Свойство | Определено | ||
---|---|---|---|
constructor : Object
Ссылка на объект класса или функцию конструктора для данного экземпляра объекта. | Object | ||
isSupported : Boolean [статические] [только для чтения]
Указывает, поддерживает ли текущая платформа API-интерфейс GameInput. | GameInput | ||
numDevices : int [статические] [только для чтения]
Сообщает число подключенных устройств ввода. | GameInput |
Метод | Определено | ||
---|---|---|---|
addEventListener(type:String, listener:Function, useCapture:Boolean = false, priority:int = 0, useWeakReference:Boolean = false):void
Регистрирует объект прослушивателя события на объекте EventDispatcher для получения прослушивателем уведомления о событии. | EventDispatcher | ||
Посылает событие в поток событий. | EventDispatcher | ||
[статические]
Получает устройство ввода в местоположении с указанным индексом в списке подключенных устройств ввода. | GameInput | ||
Проверяет, имеет ли объект EventDispatcher прослушиватели, зарегистрированные для определенного типа события. | EventDispatcher | ||
Показывает, определено ли заданное свойство для объекта. | Object | ||
Показывает, есть ли экземпляр класса Object в цепи прототипов объекта, заданного в качестве параметра. | Object | ||
Показывает наличие заданного свойства и его перечисляемость. | Object | ||
Удаляет прослушиватель из объекта EventDispatcher. | EventDispatcher | ||
Задает доступность динамического свойства для операций цикла. | Object | ||
Возвращает строковое представление этого объекта, отформатированного в соответствии со стандартами, принятыми для данной локали. | Object | ||
Возвращает строковое представление заданного объекта. | Object | ||
Возвращает элементарное значение заданного объекта. | Object | ||
Проверяет, зарегистрирован ли прослушиватель события для указанного типа события с данным объектом EventDispatcher или любым его предшественником. | EventDispatcher |
Событие | Сводка | Определено | ||
---|---|---|---|---|
[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR перемещается в фокус операционной системы и становится активным. | EventDispatcher | |||
[многоадресное событие] Отправляется, когда проигрыватель Flash Player или приложение AIR теряет фокус системы и становится неактивным. | EventDispatcher | |||
Отправляется, когда игровое устройство ввода подключается к платформе или когда подключенное устройство включается. | GameInput | |||
Отправляется, когда игровое устройство ввода удаляется с платформы или когда подключенное устройство выключается. | GameInput | |||
Отправляется, если игровое устройство ввода подключено, но не может использоваться. | GameInput |
isSupported | свойство |
numDevices | свойство |
getDeviceAt | () | метод |
public static function getDeviceAt(index:int):GameInputDevice
Язык версии: | ActionScript 3.0 |
Версии среды выполнения: | AIR 3.7 |
Получает устройство ввода в местоположении с указанным индексом в списке подключенных устройств ввода.
Порядок устройств в индексе может изменяться каждый раз при добавлении или удалении устройства. Можно проверить свойства name
и id
объекта GameInputDevice
, чтобы найти определенное устройство ввода.
Параметры
index:int — Позиция индекса в списке устройств ввода.
|
GameInputDevice — Указанный объект GameInputDevice .
|
Выдает
RangeError — Когда полученный индекс меньше нуля или больше (numDevices - 1) .
|
deviceAdded | Событие |
flash.events.GameInputEvent
Отправляется, когда игровое устройство ввода подключается к платформе или когда подключенное устройство включается.
deviceRemoved | Событие |
flash.events.GameInputEvent
Отправляется, когда игровое устройство ввода удаляется с платформы или когда подключенное устройство выключается.
deviceUnusable | Событие |
flash.events.GameInputEvent
Отправляется, если игровое устройство ввода подключено, но не может использоваться. Это событие используется только в ОС Windows. Например, такая ситуация возникает в изолированном браузере Windows, если другое приложение на основе DirectInput уже использует устройство.
Tue Jun 12 2018, 11:34 AM Z