Ox Lib
Uma biblioteca standalone para fornecer código reutilizável de forma fácil como módulos importáveis e exports.
Instalação
Recomendamos fortemente consultar os Guias para configurar o Git, Node.js e pnpm.
Baixe uma release (opens in a new tab) ou compile o código-fonte.
git clone https://github.com/overextended/ox_lib.git
cd ox_lib/web
pnpm i
pnpm buildConfiguração
A configuração do recurso é feita utilizando convars (opens in a new tab).
# https://v6.mantine.dev/theming/colors/#default-colors
setr ox:primaryColor blue
setr ox:primaryShade 8
setr ox:userLocales 1 # Permite que os usuários escolham seus idiomas usando /ox_libVocê também precisará conceder permissões ACE ao recurso.
add_ace resource.ox_lib command.add_ace allow
add_ace resource.ox_lib command.remove_ace allow
add_ace resource.ox_lib command.add_principal allow
add_ace resource.ox_lib command.remove_principal allowUso
Para habilitar a biblioteca no seu recurso, basta adicionar @ox_lib/init.lua como um shared_script no seu arquivo fxmanifest.lua.
shared_scripts {
'@ox_lib/init.lua',
}Ou, se este for o único shared script que você usa, pode fazer:
shared_script '@ox_lib/init.lua'Você pode especificar os módulos para importar no fxmanifest.lua, ou carregá-los dinamicamente.
ox_libs {
'locale',
'math',
'table',
}Quando o ox_lib for importado no seu script, ele disponibilizará várias variáveis globais:
libPara importar módulos dinamicamente do ox_lib.requirePara importar módulos do seu próprio script.cacheVeja aqui.
Agora você pode usar as funções da biblioteca dentro do seu recurso; verifique o restante da documentação para ver como utilizá-las.
Usando ícones nas interfaces
A biblioteca de ícones utilizada é a Font Awesome 6.0. Se você definir apenas uma string para o ícone, o tipo padrão será solid.
Se quiser usar um tipo de ícone diferente (por exemplo, apple como brand), é necessário definir o ícone como uma tabela (array) com o primeiro valor sendo o tipo (fas, far, fab) como string, e o segundo sendo o nome do ícone.
icon = {'fab', 'apple'}Compilando a UI
Se desejar editar qualquer elemento da UI, será necessário baixar o código source, editar o que for preciso e compilá-lo.
NÃO faça de-bundle ou desminifique os arquivos CSS/JS de release para editá-los.
Requisitos:
Instalando o Node.js:
- Baixe a versão LTS do Node.js.
- Execute o instalador e certifique-se de instalar todos os componentes necessários.
- Rode
node --versionno terminal e confirme que exibe o número da versão. Se não exibir, a instalação não foi concluída corretamente.
Instalando o pnpm:
- Após instalar o Node.js, instale o pnpm executando
npm install -g pnpm.
Compilando a UI:
- Entre no diretório
web. - Rode
pnpm ipara instalar as dependências. - Rode
pnpm buildpara compilar os arquivos fonte.
Ao trabalhar no navegador, você pode executar pnpm start, que oferece hot reload — assim você verá suas alterações após salvar o arquivo.
Se quiser trabalhar dentro do jogo, execute pnpm start:game, que escreve as alterações no disco; nesse caso, basta reiniciar o recurso para que tenham efeito.