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 дає змогу створювати значну частину вмісту гри за допомогою візуальних інструментів, як-от редактори карт плиток і ефектів частинок, ігрову логіку ви все одно створюєте в редакторі коду. Ігрову логіку пишуть мовою програмування Lua, а розширення самого рушія — нативними мовами цільової платформи.
Defold використовує Lua 5.1 і LuaJIT (залежно від цільової платформи), тому під час написання ігрової логіки потрібно дотримуватися специфікації мови саме для цих версій Lua. Докладніше про роботу з Lua у Defold читайте в нашому посібнику з Lua у Defold.
Defold підтримує використання транспіляторів, які генерують код Lua. Установивши розширення транспілятора, ви можете використовувати альтернативні мови — як-от Teal — для написання коду Lua зі статичною перевіркою. Це попередня версія функціональності з обмеженнями: поточна підтримка транспіляторів не надає інформації про модулі та функції, визначені в середовищі виконання Lua у Defold. Це означає, що для використання API Defold, як-от go.animate, вам потрібно самостійно писати зовнішні визначення.
Defold дає змогу розширювати ігровий рушій нативним кодом, щоб отримати доступ до можливостей конкретної платформи, яких сам рушій не надає. Ви також можете використовувати нативний код, коли продуктивності Lua недостатньо (ресурсомісткі обчислення, обробка зображень тощо). Докладніше читайте в наших посібниках із нативних розширень.
Defold має вбудований редактор коду, у якому можна відкривати й редагувати файли Lua (.lua), файли скриптів Defold (.script, .gui_script і .render_script), а також будь-які інші файли з розширеннями, які редактор не обробляє спеціальними засобами. Крім того, редактор підсвічує синтаксис у файлах Lua та скриптах.

Вбудований редактор коду пропонує автодоповнення функцій під час написання коду:

Натискання CTRL + Space показує додаткову інформацію про функції, аргументи та значення, що повертаються:

Вбудований редактор коду може показувати список символів у поточному файлі коду, зокрема функцій, об’єктів і змінних, із можливістю пошуку. Виберіть View ▸ Jump to Symbol… або натисніть Ctrl + Shift + O у Windows і Linux чи ⌘ Cmd + Shift + O у macOS.
Почніть вводити текст для нечіткого пошуку символів, переміщуйтеся результатами за допомогою клавіш зі стрілками й переглядайте їхнє розташування в редакторі, а потім натисніть Enter, щоб перейти до вибраного символу. Натисніть Esc, щоб закрити діалогове вікно та повернутися до попередньої позиції курсора й прокручування.

Вбудований редактор коду виконує статичний аналіз коду (linting) за допомогою Luacheck і мовного сервера Lua. Щоб налаштувати Luacheck, створіть файл .luacheckrc у корені проєкту. Перелік доступних параметрів наведено на сторінці налаштування Luacheck. Defold використовує такі типові налаштування Luacheck:
unused_args = false -- don't warn on unused arguments (common for .script files)
max_line_length = false -- don't warn on long lines
ignore = {
"611", -- line contains only whitespace
"612", -- line contains trailing whitespace
"614" -- trailing whitespace in a comment
},
Редактор коду в Defold надає основні можливості, потрібні для написання коду. Для складніших завдань або досвідчених користувачів, які мають улюблений редактор коду, Defold може відкривати файли в зовнішньому редакторі. У вікні Preferences на вкладці Code можна вказати зовнішній редактор для редагування коду.
Defold Kit — це плагін для Visual Studio Code з такими можливостями:
Дізнайтеся більше та встановіть Defold Kit із Visual Studio Marketplace.
Для Dash і Zeal доступні створені спільнотою пакети довідника API.