Manuals
Manuals




This translation is community contributed and may not be up to date. We only maintain the English version of the documentation. Read this manual in English

Радимо ознайомитися із загальними принципами роботи введення в Defold, способами його отримання та порядком, у якому воно надходить до ваших файлів скриптів. Докладніше про систему введення читайте в посібнику з огляду введення.

Тригери клавіш

Тригери клавіш дають змогу прив’язати введення окремих клавіш клавіатури до ігрових дій. Кожна клавіша окремо зіставляється з відповідною дією. Тригери клавіш використовують, щоб пов’язати певні клавіші з певними функціями, наприклад рух персонажа з клавішами зі стрілками або WASD. Якщо вам потрібно зчитувати довільне введення з клавіатури, використовуйте текстові тригери (див. нижче).

function on_input(self, action_id, action)
    if action_id == hash("left") then
        if action.pressed then
            -- start moving left
        elseif action.released then
            -- stop moving left
        end
    end
end

Текстові тригери

Текстові тригери використовують для зчитування довільного текстового введення. Є два типи текстових тригерів: text і marked-text.

Текст

Тригер text зчитує звичайне текстове введення. Він записує в поле text таблиці дії рядок, що містить введений символ. Дія спрацьовує лише під час натискання клавіші; дії release або repeated не надсилаються.

function on_input(self, action_id, action)
    if action_id == hash("text") then
        -- Concatenate the typed character to the "user" node...
        local node = gui.get_node("user")
        local name = gui.get_text(node)
        name = name .. action.text
        gui.set_text(node, name)
    end
end

Позначений текст

Тригер marked-text використовують переважно для клавіатур азійських мов, де кілька натискань клавіш можуть відповідати одному введенню. Наприклад, на клавіатурі «Japanese-Kana» в iOS користувач може набирати комбінації, а у верхній частині клавіатури відображатимуться доступні символи або їхні послідовності, які можна ввести.

Введення позначеного тексту

  • Кожне натискання клавіші породжує окрему дію та записує в її поле text поточну введену послідовність символів («позначений текст»).
  • Коли користувач вибирає символ або комбінацію символів, надсилається окрема дія тригера типу text (за умови, що такий тригер налаштовано в списку прив’язок введення). Ця окрема дія записує в поле text остаточну послідовність символів.