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
Embora o Defold permita criar muito conteúdo do seu jogo usando ferramentas visuais, como os editores de tilemap e efeitos de partículas, você ainda cria a lógica do jogo usando um editor de código. A lógica do jogo é escrita usando a linguagem de programação Lua, enquanto extensões para a própria engine são escritas usando a(s) linguagem(ns) nativa(s) da plataforma-alvo.
O Defold usa Lua 5.1 e LuaJIT (dependendo da plataforma-alvo), e você precisa seguir a especificação da linguagem para essas versões específicas de Lua ao escrever a lógica do jogo. Para mais detalhes sobre como trabalhar com Lua no Defold, veja nosso manual Lua no Defold.
O Defold suporta o uso de transpilers que emitem código Lua. Com a extensão de transpiler instalada, você pode usar linguagens alternativas - como Teal - para escrever Lua com verificação estática. É um recurso em preview que tem limitações: o suporte atual a transpiler não expõe as informações sobre módulos e funções definidas no runtime Lua do Defold. Isso significa que usar APIs do Defold como go.animate exigirá que você escreva definições externas por conta própria.
O Defold permite estender a engine de jogos com código nativo para acessar funcionalidades específicas de plataforma não fornecidas pela própria engine. Você também pode usar código nativo quando o desempenho de Lua não for suficiente (cálculos intensivos, processamento de imagens etc). Consulte nossos manuais sobre Native Extensions para saber mais.
O Defold tem um editor de código integrado que permite abrir e editar arquivos Lua (.lua), arquivos de script do Defold (.script, .gui_script e .render_script), assim como qualquer outro arquivo com uma extensão não tratada nativamente pelo editor. Além disso, o editor fornece destaque de sintaxe para arquivos Lua e scripts.

O editor de código integrado mostrará autocompletar de funções enquanto você escreve código:

Pressionar CTRL + Space mostrará informações adicionais sobre funções, argumentos e valores de retorno:

O editor de código integrado realiza linting de código usando Luacheck e Lua language server. Para configurar o Luacheck, crie um arquivo .luacheckrc na raiz do projeto. Você pode ler a página de configuração do Luacheck para ver a lista de opções disponíveis. O Defold usa os seguintes padrões para a configuração do Luacheck:
unused_args = false -- não avisa sobre argumentos não usados (comum em arquivos .script)
max_line_length = false -- não avisa sobre linhas longas
ignore = {
"611", -- linha contém apenas whitespace
"612", -- linha contém whitespace no fim
"614" -- whitespace no fim de um comentário
},
O editor de código do Defold fornece a funcionalidade básica necessária para escrever código, mas para casos de uso mais avançados ou para usuários experientes com um editor de código favorito, é possível fazer o Defold abrir arquivos usando um editor externo. Na janela Preferences na aba Code, é possível definir um editor externo que deve ser usado ao editar código.
Defold Kit é um plugin do Visual Studio Code com os seguintes recursos:
Saiba mais e instale o Defold Kit pelo Visual Studio Marketplace.
Pacotes de referência de API criados pela comunidade estão disponíveis para Dash e Zeal.