Input
Успадковує: Object
Однотон для введення даних.
Опис
Input однотонні ручки клавішні преси, кнопки миші і рух, ігрові блоки і вхідні дії. Дії та події можуть бути встановлені в вкладці ** Вхідна карта ** Проект > Параметри проекту, або з класом InputMap.
Примітка: Input методи відображають глобальний вхідний стан і не впливають на управління.accept_event() або Viewport.set_input_as_handled(), оскільки ці методи мають справу з введенням способу пропаговано в SceneTree.
Посібники
Властивості
Методи
Сигнали
joy_connection_changed(device: int, connected: bool) 🔗
Випробувано, коли підключено пристрій Hotpad.
Переліки
enum MouseMode: 🔗
MouseMode MOUSE_MODE_VISIBLE = 0
Зробіть курсор мишки видимим, якщо він прихований.
Зробіть курсор миші, прихований, якщо це видно.
MouseMode MOUSE_MODE_CAPTURED = 2
Захоплює мишу. Миша буде прихована і її позиція закривається в центрі вікна менеджера.
Примітка: Якщо ви хочете обробити рух мишки в цьому режимі, вам потрібно скористатися InputEventMouseMotion.relative.
MouseMode MOUSE_MODE_CONFINED = 3
Налаштуйте курсор миші на ігровому вікні, і зробіть його видимими.
Налаштуйте курсор миші на ігровому вікні, і зробіть його прихованим.
MouseMode MOUSE_MODE_MAX = 5
Максимальне значення MouseMode.
enum CursorShape: 🔗
CursorShape CURSOR_ARROW = 0
Перевірити курсор. Стандарт, курсор за замовчуванням.
CursorShape CURSOR_IBEAM = 1
I-beam курсор. Зазвичай використовується для відображення, коли натискається курсор тексту.
CursorShape CURSOR_POINTING_HAND = 2
Точка ручного курсора. Зазвичай використовується для позначення тостера за посиланням або іншим взаємодієним елементом.
CursorShape CURSOR_CROSS = 3
Перетин курсора. Зазвичай з'являється над регіонами, в яких може бути виконана робота малюнка або підбір.
CursorShape CURSOR_WAIT = 4
Зачекайте курсор. Повідомляє, що додаток зайнятий, що не можна використовувати під час операції (наприклад, щось блокує основну нитку).
CursorShape CURSOR_BUSY = 5
Автобусний курсор. Повідомляє, що додаток зайнято, і це все ще можна при експлуатації.
CursorShape CURSOR_DRAG = 6
Перетягніть курсор. Зазвичай відображається при перетягування щось.
Примітка: Windows не вистачає курсора, тому CURSOR_DRAG є таким же, як CURSOR_MOVE для цієї платформи.
CursorShape CURSOR_CAN_DROP = 7
Може падіння курсора. Як правило, відображається при перетягування щось, щоб вказати, що він може бути скиданий на поточному положенні.
CursorShape CURSOR_FORBIDDEN = 8
Заборонений курсор. Повідомляє, що поточна дія заборонена (наприклад, при перетягування щось) або що контроль на позиції вимкнено.
CursorShape CURSOR_VSIZE = 9
Вертикальний кратний курс миші. Двоголова вертикальна стрілка. Розповідає користувачу можливість змінити вікно або панель вертикально.
CursorShape CURSOR_HSIZE = 10
Горизонтальний розмір мишки курсор. Двоголова горизонтальна стрілка. Розповідає користувачу можливість змінити вікно або панель горизонтально.
CursorShape CURSOR_BDIAGSIZE = 11
Вікно змініть курсор мишки. Екскурсор - двоголова стрілка, яка йде знизу зліва на верхню праву. Розповідає користувачу можливість змінити вікно або панель як горизонтально, так і вертикально.
CursorShape CURSOR_FDIAGSIZE = 12
Вікно змініть курсор мишки. Екскурсор - двоголова стрілка, яка йде з верхньої частини, зліва на низ, протилежна CURSOR_BDIAGSIZE. Розповідає користувачу можливість змінити вікно або панель як горизонтально, так і вертикально.
CursorShape CURSOR_MOVE = 13
Перемістити курсор. Повідомляє, що щось можна перенести.
CursorShape CURSOR_VSPLIT = 14
Вертикальний спліт курсор миші. На Windows, це так само, як CURSOR_VSIZE.
CursorShape CURSOR_HSPLIT = 15
Горизонтальний курсор мишки. На Windows, це те ж саме, як CURSOR_HSIZE.
CursorShape CURSOR_HELP = 16
Довідка курсора. Зазвичай знак питання.
Описи властивостей
bool emulate_mouse_from_touch 🔗
Якщо true, надсилайте події введення мишки при натисканні або закручуванні на сенсорному екрані. Дивись також ProjectSettings.input_devices/pointing/emulate_mouse_from_touch.
bool emulate_touch_from_mouse 🔗
Якщо true, надсилайте сенсорні вхідні події при натисканні або перетягування миші. Дивись також ProjectSettings.input_devices/pointing/emulate_touch_from_mouse.
Керує режимом миші.
Якщо true, скупчуються аналогічні вхідні події, надіслані операційною системою. Коли ввімкнено накопичення, всі вхідні події, що створюються під час рами, будуть об'єднані і введені при виконанні рами. Таким чином, це обмежує кількість вхідних методових дзвінків за секунду до рендерингу FPS.
Скупчення введення може бути вимкнено, щоб отримати трохи більш точний/реактивний вхід за вартістю збільшення використання процесора. У додатках, де потрібно малювати вільні лінії, вводне накопичення повинно бути відключено, поки користувач є кресленням лінії, щоб отримати результати, які уважно слідують фактичному вводі.
Note: Скупчення входу enabled за замовчуванням.
Описи методів
void action_press(action: StringName, strength: float = 1.0) 🔗
Це імітує пресування зазначеної дії.
Міцність може бути використана для небололевих дій, вона коливається між 0 і 1, що представляє інтенсивність даної дії.
Примітка: Цей метод не викликає ніяких Node._input() дзвінків. Призначений для використання _action_pressed() і _action_just_pressed(). Якщо ви хочете імітувати _input, скористайтеся parse_input_event() замість.
void action_release(action: StringName) 🔗
Якщо зазначена дія вже пресована, це випустить її.
void add_joy_mapping(mapping: String, update_existing: bool = false) 🔗
Додавання нового запису картування (в форматі SDL2) до бази даних картування. Додатково оновлення вже підключених пристроїв.
void flush_buffered_events() 🔗
Відправляє всі вхідні події, які знаходяться в поточному буфері до ігрової петлі. Ці події можуть бути відправлені в результаті накопичення вводу (use_accumulated_input) або поглинання вводу (ProjectSettings.input_devices/buffering/agile_event_flushing).
Двигун вже зробить це на ключових точках виконання (не рідше одного разу на кадр). Тим не менш, це може бути корисним у розширених випадках, коли ви хочете точний контроль над термінами обробки подій.
Vector3 get_accelerometer() const 🔗
Повертає прискорення в м/с² датчика акселерометра пристрою, якщо він є. В іншому випадку метод повертає Vector3.ZERO.
Зауважте, що цей метод повертає порожній Vector3 під час запуску з редактора, навіть якщо ваш пристрій має акселерометр. Ви повинні експортувати свій проект на підтримуваний пристрій, щоб зчитувати значення з акселерометра.
Примітка. Цей метод працює лише на Android та iOS. На інших платформах він завжди повертає Vector3.ZERO.
Примітка. Для Android потрібно ввімкнути ProjectSettings.input_devices/sensors/enable_accelerometer.
float get_action_raw_strength(action: StringName, exact_match: bool = false) const 🔗
Повертає значення між 0 і 1, що представляє собою сиру інтенсивність даної дії, ігноруючи химерну зону дії. У більшості випадків слід використовувати get_action_strength().
Якщо точний_match є false, він ігнорує додаткові модифікатори введення для InputEventKey і InputEventMouseButton події, і напрямок для InputEventJoypadMotion події.
float get_action_strength(action: StringName, exact_match: bool = false) const 🔗
Повертає значення 0 і 1, що представляє інтенсивність даної дії. У радіпаді, наприклад, далі від осі (алогові палички або L2, R2 тригери) з мертвої зони, чим ближче значення буде до 1. Якщо дія малюється на контроль, який не має осі, такі як клавіатура, значення повертається буде 0 або 1.
Якщо exact_match є false, він ігнорує додаткові модифікатори введення для InputEventKey і InputEventMouseButton події, і напрямок для InputEventJoypadMotion події.
float get_axis(negative_action: StringName, positive_action: StringName) const 🔗
Отримати вхід осі, вказавши два дії, один негативний і один позитивний.
Це швидке написання `` Input.get_action_strength("positive_action") - Input.get_action_strength("негатив_action")``.
Array[int] get_connected_joypads() 🔗
Повертаємо Array, що містить ідентифікатори пристрою, які в даний час з'єднуються зджоли.
CursorShape get_current_cursor_shape() const 🔗
Повертає поточну призначену форму курсора.
Повертає силу тяжіння в м/с² датчика акселерометра пристрою, якщо він є. В іншому випадку метод повертає Vector3.ZERO.
Примітка. Цей метод працює лише на Android та iOS. На інших платформах він завжди повертає Vector3.ZERO.
Примітка. Для Android потрібно ввімкнути ProjectSettings.input_devices/sensors/enable_gravity.
Vector3 get_gyroscope() const 🔗
Повертає швидкість обертання в рад/с навколо осей X, Y і Z пристрою датчика гіроскопа, якщо він є. В іншому випадку метод повертає Vector3.ZERO.
Примітка. Цей метод працює лише на Android та iOS. На інших платформах він завжди повертає Vector3.ZERO.
Примітка. Для Android потрібно ввімкнути ProjectSettings.input_devices/sensors/enable_gyroscope.
float get_joy_axis(device: int, axis: JoyAxis) const 🔗
Повертає поточне значення осі джойстика за індексом axis.
String get_joy_guid(device: int) const 🔗
Повертає SDL2-сумісний пристрій Guid на платформах, які використовують відстеження GamePad, E.G. `` 030000004c050000c405000000010000 ``. Повертає порожню рядок, якщо вона не знайдена. Готе, що він використовує [url = https: //github.com/gabomdq/sdl_gamecontrollerdb] База даних ігрового контролера SDL2 [/uri], щоб визначити імена GamePad та відображення на основі цього GUID.
На Windows всі GoStoD Godot JodePad будуть перевизначені за допомогою [code] __ xinput_device __ [/code], тому що їх відображення однакові.
Dictionary get_joy_info(device: int) const 🔗
Повертає словник з додатковою інформацією про пристрій, специфічною для платформи, наприклад, сире ім'я геймпада з ОС або індекс Steam Input.
У Windows, Linux і macOS словник містить такі поля:
raw_name: Ім'я контролера, яке він отримав від ОС, до того як було перейменовано базою даних контролерів.
vendor_id: Ідентифікатор виробника USB пристрою.
product_id: Ідентифікатор USB-продукту пристрою.
steam_input_index: Індекс геймпада Steam Input. Якщо пристрій не є пристроєм Steam Input, цей ключ буде відсутній.
У Windows словник може мати додаткове поле:
xinput_index: Індекс контролера в системі XInput. Цей ключ не буде присутній для пристроїв, які не підтримуються XInput.
Примітка: Повернутий словник завжди порожній на Android, iOS, visionOS та Web.
String get_joy_name(device: int) 🔗
Повертає ім'я джойстику в зазначеному індексі пристрою, наприклад PS4 контролер. Godot використовує SDL2 бази даних ігрових контролерів для визначення назв геймпада.
float get_joy_vibration_duration(device: int) 🔗
Повертає тривалість поточної коливальної дії за секундами.
Vector2 get_joy_vibration_strength(device: int) 🔗
Повертає міцність радісної вібрації: x - сила слабкого мотора, і є міцністю міцного двигуна.
Vector2 get_last_mouse_screen_velocity() 🔗
Повернення останньої швидкості мишки в координатах екрана. Для забезпечення точної і безжорсткої швидкості миша обчислюється тільки кожен 0.1s. Таким чином, швидкість мишки відставить рухи миші.
Vector2 get_last_mouse_velocity() 🔗
Повернення останньої швидкості мишки. Для забезпечення точної і безжорсткої швидкості миша обчислюється тільки кожен 0.1s. Таким чином, швидкість мишки відставить рухи миші.
Vector3 get_magnetometer() const 🔗
Повертає напруженість магнітного поля в мікротеслах для всіх осей датчика магнітометра пристрою, якщо він є. В іншому випадку метод повертає Vector3.ZERO.
Примітка. Цей метод працює лише на Android та iOS. На інших платформах він завжди повертає Vector3.ZERO.
Примітка. Для Android потрібно ввімкнути ProjectSettings.input_devices/sensors/enable_magnetometer.
BitField[MouseButtonMask] get_mouse_button_mask() const 🔗
Повертаємо кнопки миші як трохи. Якщо кілька кліків мишки натискаються одночасно, укуси додаються разом. Equivalent to DisplayServer.mouse_get_button_state().
Vector2 get_vector(negative_x: StringName, positive_x: StringName, negative_y: StringName, positive_y: StringName, deadzone: float = -1.0) const 🔗
Прискорює вхідний вектор, вказавши чотири дії для позитиву і негативних X і Y-акс.
Цей метод корисний при отриманні вектора вводу, таких як з джойстику, спрямована накладка, стріли або WASD. Вектор має свою довжину, обмежену 1 і має круговий дільник, який корисний для використання векторного введення в рух.
За промовчанням, фрагмент автоматично обчислюється з середньої дії францонів. Однак, ви можете перенаречени мертвогозону, щоб бути, що ви хочете (на діапазоні 0 до 1).
bool is_action_just_pressed(action: StringName, exact_match: bool = false) const 🔗
Повертає true, коли користувач почав натискати подію дії в поточному кадрі або фізичному тику. Повертає true тільки в кадрі або тику, в якому користувач натиснув кнопку.
Це корисно для коду, який потрібно виконати тільки один раз при натисканні дії, а не в кожному кадрі, поки вона натиснута.
Якщо exact_match дорівнює false, ігноруються додаткові модифікатори вводу для подій InputEventKey та InputEventMouseButton, а також напрямок для подій InputEventJoypadMotion.
Примітка: Повернення true не означає, що дія все ще натиснута. Дію можна швидко натиснути і відпустити, і true все одно буде повернуто, щоб не пропустити введення.
Примітка: Через ефект «привидів» клавіатури is_action_just_pressed() може повернути false, навіть якщо одна з клавіш дії натиснута. Дивіться Приклади введення в документації для отримання додаткової інформації.
Примітка: Під час обробки введення (наприклад, Node._input()), використовуйте InputEvent.is_action_pressed() для запиту стану дії поточної події. Див. також is_action_just_pressed_by_event().
bool is_action_just_pressed_by_event(action: StringName, event: InputEvent, exact_match: bool = false) const 🔗
Повертає true, коли користувач почав натискати подію дії в поточному кадрі або фізичному тику, і першою подією, яка викликала натискання дії в поточному кадрі/фізичному тику, була event. Вона поверне true тільки в кадрі або тику, в якому користувач натиснув кнопку.
Це корисно для коду, який потрібно виконати тільки один раз, коли натискається дія, і дія обробляється під час обробки вводу (наприклад, Node._input()).
Якщо exact_match дорівнює false, він ігнорує додаткові модифікатори введення для подій InputEventKey та InputEventMouseButton, а також напрямок для подій InputEventJoypadMotion.
Примітка: Повернення true не означає, що дія все ще натиснута. Дію можна швидко натиснути і відпустити, і true все одно буде повернуто, щоб не пропустити введення.
Примітка: Через ефект «привидів» клавіатури is_action_just_pressed() може повернути false, навіть якщо одна з клавіш дії натиснута. Дивіться Приклади введення в документації для отримання додаткової інформації.
bool is_action_just_released(action: StringName, exact_match: bool = false) const 🔗
Повертає true, коли користувач припиняє натискати подію дії в поточному кадрі або фізичному тику. Воно повертає true тільки в кадрі або тику, коли користувач відпускає кнопку.
Примітка: Повернення true не означає, що дія все ще не натиснута. Дія може бути швидко відпущена і натиснута знову, і true все одно буде повернуто, щоб не пропустити введення.
Якщо exact_match дорівнює false, ігноруються додаткові модифікатори введення для подій InputEventKey і InputEventMouseButton, а також напрямок для подій InputEventJoypadMotion.
Примітка: Під час обробки введення (наприклад, Node._input()), використовуйте InputEvent.is_action_released() для запиту стану дії поточної події. Див. також is_action_just_released_by_event().
bool is_action_just_released_by_event(action: StringName, event: InputEvent, exact_match: bool = false) const 🔗
Повертає true, коли користувач припиняє натискати подію дії в поточному кадрі або фізичному тику, а першою подією, яка викликала звільнення дії в поточному кадрі/фізичному тику, була event. Вона повертатиме true тільки в кадрі або тику, в якому користувач відпускає кнопку.
Це корисно, коли дія обробляється під час обробки вводу (наприклад, Node._input()).
Примітка: Повернення true не означає, що дія все ще не натиснута. Дію можна швидко відпустити і натиснути знову, і true все одно буде повернуто, щоб не пропустити ввід.
Якщо exact_match має значення false, ігноруються додаткові модифікатори введення для подій InputEventKey та InputEventMouseButton, а також напрямок для подій InputEventJoypadMotion.
bool is_action_pressed(action: StringName, exact_match: bool = false) const 🔗
Повертаємо true, якщо ви натискаємо акцію.
Якщо exact_match є false, він ігнорує додаткові модифікатори введення для InputEventKey і InputEventMouseButton події, і напрямок для InputEventJoypadMotion події.
Примітка: У зв'язку з привидами клавіатури, _action_pressed() може повернутися false навіть якщо один з ключів дії натискається. Див. Налаштування прикладів в документації для отримання додаткової інформації.
bool is_anything_pressed() const 🔗
Повертаємо true, якщо будь-яка дія, ключ, кнопка Hotpad або кнопка миша натискається. Це також повернеться true, якщо будь-яка дія змоделюється через код, зателефонувавши action_press().
bool is_joy_button_pressed(device: int, button: JoyButton) const 🔗
Повертає true, якщо ви натискаєте кнопку джойстика за індексом button.
bool is_joy_known(device: int) 🔗
Повертає true, якщо система знає зазначений пристрій. Це означає, що він встановлює всі кнопки і осі індекси. Невідомі джойстики не чекають, щоб відповідати цим константам, але ви ще можете отримати події з них.
bool is_key_label_pressed(keycode: Key) const 🔗
Повертаємо true, якщо ви натискаєте ключ з keycode, надрукованим на ньому. Ви можете пройти постійний або будь-який код символів Unicode.
bool is_key_pressed(keycode: Key) const 🔗
Повертає true, якщо ви натискаєте латинську клавішу в поточному розкладі клавіатури. Ви можете пройти Key постійний.
is_key_pressed() є тільки рекомендований is_physical_key_pressed() в неграундних додатках. Це забезпечує, що скорочення ключів, які полягають в очікуванні в залежності від розкладу клавіатури користувача, оскільки клавішні ярлики зазвичай залежать від розкладу клавіатури в неігрових додатках. У разі виникнення сумнівів, використання is_physical_key_pressed().
Примітка: У зв'язку з привидами клавіатури, is_key_pressed() може повернутися false навіть якщо один з ключів дії натискається. Див. Налаштування прикладів в документації для отримання додаткової інформації.
bool is_mouse_button_pressed(button: MouseButton) const 🔗
Повертаємо true, якщо ви натискаємо кнопку миші, вказану MouseButton.
bool is_physical_key_pressed(keycode: Key) const 🔗
Повертаємо true, якщо ви натискаєте ключ у фізичному місці на клавіатурі 101/102-під ключ US QWERTY. Ви можете пройти Key постійний.
is_physical_key_pressed() рекомендується над is_key_pressed() для ігрових дій, оскільки це зробить W/A/S/D макети роботи незалежно від розкладки клавіатури користувача. is_phys_key_pressed() також гарантує, що верхній ряд ключів працює на будь-якому макеті клавіатури. У разі виникнення сумнівів, використання is_physical_key_pressed().
Примітка: У зв'язку з привидами клавіатури is_physical_key_pressed() може повернутися false навіть якщо один з ключів дії натискається. Див. Налаштування прикладів в документації для отримання додаткової інформації.
void parse_input_event(event: InputEvent) 🔗
Подає InputEvent у гру. Може використовуватися для штучного запуску подій введення з коду. Також генерує виклики Node._input().
var cancel_event = InputEventAction.new()
cancel_event.action = "ui_cancel"
cancel_event.pressed = правда
Input.parse_input_event(cancel_event)
var cancelEvent = new InputEventAction();
cancelEvent.Action = "ui_cancel";
cancelEvent.Pressed = true;
Input.ParseInputEvent(cancelEvent);
Примітка: виклик цієї функції не впливає на операційну систему. Так, наприклад, надсилання InputEventMouseMotion не перемістить курсор миші ОС у вказану позицію (натомість використовуйте warp_mouse()), а надсилання Alt/Cmd + Tab як InputEventKey не призведе до перемикання між активними вікнами.
void remove_joy_mapping(guid: String) 🔗
Видаляє всі зіставлення з внутрішньої бази даних, які відповідають заданому GUID. Усі наразі підключені джойстики, які використовують цей GUID, стануть невідповідними.
На Android Godot відображатиме внутрішнє резервне відображення.
void set_accelerometer(value: Vector3) 🔗
Налаштовує коефіцієнт прискорення акселерометра. Може використовуватися для відбілювання на пристроях без апаратного датчика, наприклад, в редакторі на ПК.
Примітка: Це значення може бути негайно переписано значенням датчика обладнання на Android та iOS.
void set_custom_mouse_cursor(image: Resource, shape: CursorShape = 0, hotspot: Vector2 = Vector2(0, 0)) 🔗
Встановлює власне зображення курсора миші, яке відображається лише у вікні гри, для заданої миші shape. Також можна вказати гарячу точку. Передавання null до параметра image скидає значення до системного курсора.
image може бути або Texture2D, або Image, а його розмір має бути меншим або рівним 256×256. Щоб уникнути проблем із рендерингом, рекомендуються розміри менші або рівні 128×128.
hotspot має бути в межах розміру image.
Примітка: AnimatedTexture не підтримуються як власні курсори миші. Якщо використовується AnimatedTexture, буде відображено лише перший кадр.
Примітка: Рекомендуються режими стиснення Lossless, Lossy або Uncompressed. Режим стиснення відеопам’яті можна використовувати, але він буде розпакований на процесорі, що означає сповільнення часу завантаження та відсутність збереження пам’яті порівняно з режимами без втрат.
Примітка: На веб-платформі максимально дозволений розмір зображення курсора становить 128×128. Зображення курсора розміром більше 32×32 також відображатимуться лише в тому випадку, якщо зображення курсора миші повністю розташоване на сторінці з міркувань безпеки.
void set_default_cursor_shape(shape: CursorShape = 0) 🔗
Налаштовує форму курсора за замовчуванням, щоб використовуватися у розділі замість CURSOR_ARROW.
Примітка: Якщо ви хочете змінити форму курсора за замовчуванням для вузлів Control, скористайтеся email protected.
Примітка: Цей метод генерує InputEventMouseMouseMouseMouseMotion для оновлення курсора відразу.
void set_gravity(value: Vector3) 🔗
Налаштовує значення ваги акселерометра. Може використовуватися для відбілювання на пристроях без апаратного датчика, наприклад, в редакторі на ПК.
Примітка: Дане значення може бути відразу переписано значення датчика обладнання на Android та iOS.
void set_gyroscope(value: Vector3) 🔗
Налаштовує значення швидкості обертання гіроскопа. Може використовуватися для відбілювання на пристроях без апаратного датчика, наприклад, в редакторі на ПК.
Примітка: Це значення може бути негайно переписано значенням датчика обладнання на Android та iOS.
void set_magnetometer(value: Vector3) 🔗
Налаштовує значення магнітного поля датчика магнітометра. Може використовуватися для відбілювання на пристроях без апаратного датчика, наприклад, в редакторі на ПК.
Примітка: Це значення може бути негайно переписано значенням датчика обладнання на Android та iOS.
bool should_ignore_device(vendor_id: int, product_id: int) const 🔗
Запитання про те, чи слід ігнорувати вхідний пристрій або ні. Пристрої можна ігнорувати, встановлюючи змінну середовища SDL_GAMECONTROLLER_IGNORE_DEVICES. Читати ` Документація SDL <https://wiki.libsdl.org/SDL2>`__ для отримання додаткової інформації.
Примітка: Деякі 3rd party інструменти можуть сприяти списку ігноруваних пристроїв. Наприклад, SteamInput створює віртуальні пристрої з фізичних пристроїв для цілей переадресації. Щоб уникнути обробки одного пристрою введення двічі, оригінальний пристрій додається до списку ігнорування.
void start_joy_vibration(device: int, weak_magnitude: float, strong_magnitude: float, duration: float = 0) 🔗
Починає вібрувати гумку. Joypads, як правило, приходять з двома двигунами, міцними і слабкими. слабкий_magnitude - сила слабкого мотора (between 0 і 1) і strong_magnitude - сила сильного двигуна (between 0 і 1). тривалість пари – тривалість ефекту за секундами (тривалість 0 намагатиметься відтворити вібрацію невизначено). Вібрація може бути припинена на початку виклику зупинки_joy_vibration().
Примітка: Не кожен апарат сумісний з тривалими термінами дії, рекомендується перезапустити ефект, якщо він повинен грати протягом декількох секунд.
Примітка: Для macOS, вібрація підтримується тільки в macOS 11 і пізніше.
void stop_joy_vibration(device: int) 🔗
Сприяє вібраційній раді, починаючи з _joy_vibration().
void vibrate_handheld(duration_ms: int = 500, amplitude: float = -1.0) 🔗
Вийміть ручний пристрій для вказаної тривалості в мілісекундах.
amplitude – сила вібрації, як значення 0.0 та 1.0. Якщо встановити на -1.0, використовується вентиляційна сила пристрою.
Примітка: Цей метод реалізується на Android, iOS та Web. Не впливає на інші платформи.
Примітка: Для Андроїд, vibrate_handheld() вимагає можливості VIBRATE дозвіл на експорт. В іншому випадку, vibrate_handheld() не буде ефекту.
Примітка: Для iOS, вказавши тривалість підтримується тільки в iOS 13 і пізніше.
Примітка: Для Web, амплітуда не може бути змінена.
Примітка: Деякі веб-браузери, такі як Safari і Firefox для Android, не підтримують vibrate_handheld().
void warp_mouse(position: Vector2) 🔗
Налаштовує позицію мишки до вказаного вектора, наданого в пікселях і відносно походження на верхньому лівому куті в даний час зосереджений вікно управління вікон.
Миша позиція затискається на межі роздільної здатності екрана або на межі ігрового вікна, якщо MouseMode встановлюється до MOUSE_MODE_CONFINED або MOUSE_MODE_CONFINED_HIDDEN.
Примітка: Warp_mouse() підтримується тільки на Windows, macOS і Linux. Не впливає на Android, iOS та Web.