Instalação
Este guia usa o pacote de distribuição com a interface já compilada. Você não precisa de Node.js nem recompilar a UI para instalá-lo.
Requisitos
| Componente | Quando é necessário |
|---|---|
oxmysql e conexão operacional com o banco de dados | Obrigatório para salvar os dados do recurso. |
| Qbox, QBCore ou ESX | Se você usa a economia e as permissões deles. É possível conectar outra economia por callbacks standalone. |
| Packs de tatuagens | Opcionais. Você pode instalar nenhum, alguns ou todos. |
ox_lib | Opcional para o aviso TextUI; há uma alternativa nativa. |
| Sistema de aparência | Se o servidor usa um, consulte o bridge de aparência. |
Os blueprints são compartilhados por códigos. Você não precisa adicionar um item ao inventário para usar a configuração incluída.
Coloque o recurso
- Extraia o pacote em uma pasta de recursos do seu servidor.
- Nestes guias, usamos
cxg-tattooscomo nome da pasta. Se a sua tiver outro nome, use o nome real nos comandosensureerestart. - Preserve a estrutura fornecida. Confira se
config.lua,shared/tattoos.json,bridge/eui/dist/index.htmlestão junto dos arquivos do pacote. - Configure a conexão com o banco de dados e confirme que
oxmysqlinicia corretamente.
Ordem de inicialização
Exemplo com Qbox e sem packs externos:
ensure oxmysql
ensure qbx_core
ensure cxg-tattoos
Com QBCore ou ESX, substitua qbx_core por qb-core ou es_extended. Inicie o sistema de aparência antes do recurso, se você usar um. Em modo standalone, configure primeiro os callbacks de pagamentos e permissões.
Se tiver packs, inicie apenas os instalados antes do recurso. Por exemplo:
ensure oxmysql
ensure qbx_core
ensure xgc_TattooClasic
ensure xgc_TattooGangs
ensure cxg-tattoos
Não adicione linhas ensure para packs que você não possui. As fontes padrão podem continuar em Config.TattooCatalog.sources: packs que não foram iniciados são ignorados.
Primeira inicialização
O recurso prepara o armazenamento automaticamente. Em uma instalação nova, não é necessário importar um esquema manualmente.
Antes de testar, confira em config.lua:
Config.Locale: idioma global.Config.Purchases: economia e contas de cobrança.Config.Permissions: acesso administrativo.Config.Identity: sistema de identidades do servidor e identificador usado para salvar e recuperar os dados do jogador. Consulte Sistema de identidades.Config.Shops: locais iniciais das lojas.
Vá até uma loja configurada e interaja com ela. Confira o catálogo, uma prévia e uma compra com um personagem de teste. Carregue o personagem novamente para confirmar que a tatuagem foi mantida.
O comando administrativo incluído é configurado em Config.AdminCommand; o nome inicial é /tattooadmin. Consulte permissões e pagamentos antes de usá-lo.
Aplicar alterações
Depois de modificar config.lua ou um bridge, salve o arquivo e reinicie o recurso:
restart cxg-tattoos
As fontes do catálogo são lidas novamente na inicialização e podem ser sincronizadas pelo painel administrativo. Os ajustes salvos nesse painel são mantidos; consulte configuração e catálogo antes de esperar que um valor do arquivo os substitua.
Problemas frequentes
| Sintoma | O que verificar |
|---|---|
| O recurso não inicia | Se oxmysql foi iniciado, a conexão funciona e o pacote está completo. |
| Falta um pack na loja | Se o recurso foi iniciado, enabled não está como false e o caminho JSON corresponde ao pack. |
| A interface aparece vazia | Se ui/dist/index.html e os arquivos referenciados em ui/dist/assets/ foram copiados juntos. |
| O painel nega acesso | Config.AdminCommand.permission, bindings de permissões e cargos ou ACE configurados. |
| O pagamento é recusado | Framework escolhido, nomes dos recursos, saldo e callbacks standalone, se aplicável. |
| Há duas interações de tatuagem no mesmo local | Se outro recurso de aparência ou lojas também tem esse local ativo. Mantenha um único acesso à loja desejada. |
| Uma alteração de loja ou nível não é aplicada | Se já existe um ajuste salvo pelo painel. Edite ali o valor efetivo. |
Você pode ativar temporariamente Config.Debug e Config.Permissions.debug para diagnosticar problemas. Desative-os ao terminar.