Instalação
Dez minutos: um arquivo SQL, uma permissão e três linhas do config.lua que valem a pena conferir.
Antes de começar
Seção intitulada “Antes de começar”| Você precisa | Por quê |
|---|---|
| ESX, QBCore ou QBox | Dinheiro, empregos, itens e notificações vêm do framework |
| oxmysql | Tudo o que as lojas salvam fica no seu banco de dados |
| ox_target ou qb-target | Opcional. ox_target é o padrão; sem nenhum dos dois, os jogadores recebem um aviso de ajuda e pressionam E |
| screenshot-basic | Opcional, para capturas de tela nos logs do Discord. Necessário se você deixar Config.Screenshot ativado |
1. Coloque a pasta no lugar
Seção intitulada “1. Coloque a pasta no lugar”Baixe o mic_shopcreator dos seus ativos concedidos na Cfx.re e coloque a pasta nos seus recursos, por exemplo resources/[mic]/mic_shopcreator.
2. Inicie-o depois das dependências
Seção intitulada “2. Inicie-o depois das dependências”No server.cfg, o ensure mic_shopcreator deve ficar abaixo do oxmysql, do seu framework (es_extended, qb-core ou qbx_core), do seu inventário, do seu recurso de target e do screenshot-basic.
Funcionou quando o recurso inicia sem linhas vermelhas e sem mensagem de Locale file not found.
3. O banco de dados
Seção intitulada “3. O banco de dados”Importe o mic_shopcreator.sql uma única vez. Ele cria nove tabelas:
| Tabela | O que ela armazena |
|---|---|
mic_shopcreator | As lojas, com suas configurações de blip, emprego, assalto, propriedade e webhook |
mic_shopcreator_locations | Onde cada vendedor fica, seu modelo, suas roupas e quando foi assaltado pela última vez |
mic_shopcreator_products | Produtos das lojas administradas pelo servidor |
mic_shopcreator_owner_products | Produtos das lojas de jogadores, com seu respectivo estoque |
mic_shopcreator_jobs | Quais empregos e cargos podem usar uma loja |
mic_shopcreator_rewards | O que um assalto paga como recompensa |
mic_shopcreator_owners | Quem é dono de qual loja |
mic_shopcreator_employees | Quem trabalha onde, sua comissão e seu cofre pessoal |
mic_shopcreator_vaults | O saldo de dinheiro limpo e dinheiro sujo de cada loja de jogador |
Atualizando de uma versão anterior? Você não precisa de um update.sql: a cada inicialização, o recurso verifica as colunas adicionadas recentemente (clothes em locations, min_amount e max_amount em rewards) e as adiciona caso estejam faltando. O console exibe Added clothes column to mic_shopcreator_locations table. na única vez em que faz isso.
4. Itens
Seção intitulada “4. Itens”Nenhum item próprio. Uma loja vende itens que já existem no seu inventário — você digita os nomes deles ao adicionar um produto. As imagens dos produtos vêm da pasta de imagens do seu inventário; veja o passo 5.
5. Framework, target e imagens
Seção intitulada “5. Framework, target e imagens”Abra o config.lua e verifique:
| Opção | Defina como |
|---|---|
Config.Framework | 'esx' (o padrão) ou 'qbcore'. Não é detectado automaticamente. No QBox, use 'qbcore' — o QBox executa recursos QBCore através da sua camada de compatibilidade |
Config.Interaction | 'ox_target' (o padrão), 'qb-target' ou 'default' (aviso de ajuda e tecla E) |
Config.InventoryImagePath | Onde o seu inventário guarda as imagens dos itens. Vem apontando para nui://ox_inventory/web/images/ |
Config.IdentifierType | Como donos e funcionários são reconhecidos. Vem como 'discord'; veja abaixo |
O Config.IdentifierType decide o que vai para a lista de donos e o que a tabela de funcionários armazena:
| Valor | Os jogadores são reconhecidos por | Use quando |
|---|---|---|
'discord' | Seu ID do Discord, apenas o número sem discord: | Todos se conectam com o Discord vinculado |
'license' | Sua licença Rockstar, o license:… completo | Você não exige Discord |
'esx' | O próprio identificador do ESX, incluindo prefixo de personagem | ESX com múltiplos personagens, para que cada personagem seja dono separadamente |
'citizenid' | O citizen ID do QBCore | QBCore ou QBox, para que cada personagem seja dono separadamente |
Escolha essa opção antes que alguém seja dono ou trabalhe em uma loja. Alterá-la depois significa ter que cadastrar todos os donos novamente, e os funcionários existentes deixarão de ser reconhecidos.
6. Dê permissão ao painel para você mesmo
Seção intitulada “6. Dê permissão ao painel para você mesmo”O painel é protegido pela permissão ACE mic_shop.open (e não mic_shopcreator.open). Conceda-a no server.cfg com uma linha add_ace — para uma pessoa, por exemplo add_ace identifier.discord:YOUR_DISCORD_ID mic_shop.open allow, ou para um grupo, por exemplo add_ace group.admin mic_shop.open allow.
Funcionou quando /shopcreator abre o Shop Creator. Sem a permissão, você recebe a notificação de “sem permissão”.
7. Primeiro teste
Seção intitulada “7. Primeiro teste”- Digite
/shopcreator, crie uma loja e dê um nome a ela. - Adicione um local. Uma prévia do vendedor segue para onde você olha: a roda do mouse gira o personagem, ↑ / ↓ sobem e descem, E posiciona e X cancela.
- Adicione um produto: um item que exista no seu inventário, um preço, uma categoria e um tipo de pagamento. Salve.
Funcionou quando o vendedor estiver parado onde você o colocou, falar com ele abrir a loja com o seu produto e a imagem dele, e comprá-lo descontar o dinheiro e entregar o item.
Antes de abrir sua cidade
Seção intitulada “Antes de abrir sua cidade”Config.IdentifierTypeé definitivo. Decida agora; donos e funcionários são salvos com base nele.- Apenas administradores têm
mic_shop.open. Essa permissão pode criar, editar e excluir qualquer loja. - Deixe
Config.Screenshotativado apenas se oscreenshot-basicestiver rodando. Caso contrário, os logs não serão enviados. - Os tempos de recarga de assalto são definidos por loja, em minutos — configure um em cada loja que puder ser assaltada.
- Compre algo com um personagem normal em cada loja restrita por emprego, para testar o cargo mínimo que você definiu.