ai-inventory
Inventário em grade com tamanhos de item, atalhos rápidos, drops no chão, baús, porta-malas e porta-luvas, lojas, crafting e armas. Responde às APIs do ox_inventory e do qb-inventory.
O ai-inventory é um inventário em grade: cada item ocupa um número de células (um celular 1x1, um fuzil 4x2) e pode ser girado enquanto é arrastado. Ele guarda os itens do jogador, o chão, baús, porta-malas e porta-luvas de veículos, lojas e bancadas de crafting, e armas como itens.
O que faz no jogo
- A grade. Todo inventário tem a mesma quantidade de colunas; só as linhas e o limite de peso mudam. Os itens têm um tamanho em células e um peso; o inventário recusa o que não cabe ou é pesado demais.
- A tela (F2): as roupas do personagem em duas colunas ao redor do personagem, os cinco atalhos rápidos, a grade do jogador, e o segundo inventário (chão, porta-malas, baú, loja, bancada) à direita. Clicar em uma peça de roupa a tira ou a coloca de volta.
- Atalhos rápidos. Cinco espaços próprios (não células da grade). As teclas 1 a 5 os usam; TAB os mostra como uma barra embaixo.
- Usar itens. Clique duplo, ou o menu do item. Comida e bebida tocam uma animação, enchem fome e sede (ai-hud) e são gastas. O servidor verifica se o item ainda está lá depois da animação.
- Dar, largar, dividir. O menu do item dá ao jogador mais próximo, larga no chão ou divide uma pilha.
- Drops no chão. Os itens largados ficam em uma bolsa no chão. Largar ao lado da sua própria bolsa adiciona a ela. As bolsas somem depois de alguns minutos sem serem tocadas.
- Porta-malas e porta-luvas. F2 na traseira de um veículo abre o porta-malas (quando destrancado); dentro de um veículo, o porta-luvas. O porta-malas de um veículo próprio fica com o veículo, qualquer que seja a placa que ele use; o porta-malas de qualquer outro veículo é temporário.
- Baús. Armazenamento em lugares fixos, compartilhado ou um por personagem, aberto a todos ou a alguns empregos e gangues.
- Lojas. Lugares com produtos e preços, um blip no mapa e um NPC opcional, pagos com dinheiro vivo e depois banco (conforme configurado).
- Bancadas de crafting. Receitas que transformam materiais em itens em alguns segundos.
- Armas. As armas são itens com número de série. A munição é um item; R recarrega a partir dele. Acessórios (lanterna, silenciador...) são itens que vão na arma em mãos. A roda de armas do GTA fica desligada por padrão: as armas vêm dos atalhos rápidos.
- Raridades. Os itens podem pertencer a uma raridade cuja cor tinge o quadro deles.
- Armas vindas de fora. Uma arma que não foi dada pelo ai-inventory é tirada do jogador.
Instalação
A receita do txAdmin do AI Core o instala. À mão: coloque a pasta em resources/[ai]/ e adicione ensure ai-inventory ao server.cfg depois de ensure ai-core. Ele precisa do ai-core e do banco de dados:
add_convar_permission ai-inventory read mysql_connection_stringA tabela ai_inventory_inventories é criada na primeira inicialização. As imagens dos itens vão na pasta dist/web/images do recurso (as imagens do ox_inventory já vêm com ele).
Remova o ox_inventory e o qb-inventory: o ai-inventory responde pelos nomes deles.
Configurações do painel
Abra o painel de administração (F10) e escolha Inventory.
Aba Items
Todo item que existe no jogo. Cada item é um registro; a chave dele (water, lockpick) é o nome do item que os scripts usam. O script vem com 242 itens (tirados das listas do ox_inventory).
Item: o nome que os jogadores veem e que tipo de item ele é.
| Configuração | O que muda | Valores | Padrão para um item novo |
|---|---|---|---|
| Name | O nome que os jogadores veem. | até 48 caracteres | |
| Description | Uma linha abaixo do nome. | até 240 caracteres | |
| Kind | Item, Weapon (segurada quando usada), Ammo (recarrega a arma em mãos), Attachment (vai na arma em mãos). | Item / Weapon / Ammo / Attachment | Item |
| Rarity | Tinge o quadro do item com a cor de uma raridade (aba Rarities). Vazio: um quadro simples. | uma raridade | nenhuma |
| Picture | Nome do arquivo na pasta de imagens (water.png) ou um link https completo. Vazio mostra um ícone. | até 200 caracteres | |
| Other names | Nomes que outros scripts usam para este item (por exemplo pistol_ammo), para que eles continuem funcionando. | até 30 nomes |
Size and weight: quantas células o item ocupa e quanto ele pesa.
| Configuração | O que muda | Valores | Padrão |
|---|---|---|---|
| Width | Células da esquerda para a direita. Os jogadores podem girar um item enquanto o arrastam. | 1 a 8 células | 1 |
| Height | Células de cima para baixo. | 1 a 8 células | 1 |
| Weight | Gramas por unidade (1000 g = 1 kg). | 0 a 1.000.000 g | 100 |
| Stack size | O máximo de unidades em uma pilha. 1 deixa cada unidade separada, para itens com seus próprios dados. | 1 a 100.000 | 10 |
Using: o que acontece quando um jogador usa o item.
| Configuração | O que muda | Valores | Padrão |
|---|---|---|---|
| Can be used | Desligado: usar não faz nada, a menos que um script trate este item. | ligado / desligado | desligado |
| Used up per use | Unidades removidas cada vez que ele é usado. 0 o mantém. | 0 a 1000 | 0 |
| Close the inventory | Fecha a tela do inventário quando o item é usado. | ligado / desligado | desligado |
| Animation | Tocada durante o uso. | None / Eat / Drink / Bandage / Put on armour | None |
| Use time | Quanto tempo a animação toca antes de o item fazer efeito. | 0 a 60.000 ms | |
| Hunger | Somado à fome do jogador quando usado (negativo a abaixa). Precisa de um HUD que acompanhe necessidades. | -100 a 100 | |
| Thirst | Somado à sede. | -100 a 100 | |
| Stress | Somado ao estresse. | -100 a 100 |
Weapon: só para armas e acessórios.
| Configuração | O que muda | Valores | Padrão |
|---|---|---|---|
| Ammo item | Nome do item que a arma carrega (por exemplo ammo-9). | um nome de item | |
| Thrown | Granadas e afins: a quantidade da pilha é a munição. | ligado / desligado | desligado |
| Attachment hashes | Nomes de componente do GTA que este acessório pode ser (COMPONENT_AT_PI_FLSH); o primeiro que a arma em mãos aceitar é usado. | até 20 nomes |
Apagar um item: os jogadores que o têm ficam com uma pilha que ninguém pode usar.
Aba Rarities
Grupos de cores aos quais os itens pertencem. Vêm com o script: Common, Uncommon, Rare, Epic, Legendary, Medical, Special.
| Configuração | O que muda | Valores |
|---|---|---|
| Name | O nome da raridade. | até 32 caracteres |
| Colour | O quadro de todo item desta raridade é tingido com ela. | uma cor |
Apagar uma raridade: os itens dela perdem a cor.
Aba Shops
Lugares onde os jogadores compram itens. O script vem com 45 lojas (24/7, LTD, Rob's Liquor, lojas de ferramentas, Ammu-Nation e outras, mais lojas de emprego para a polícia e o EMS).
Shop: onde a loja fica e quem pode comprar ali.
| Configuração | O que muda | Valores | Padrão para uma loja nova |
|---|---|---|---|
| Shop name | O nome que os jogadores veem. | até 48 caracteres | |
| Place | Fique onde os jogadores devem abri-la e use sua posição. | um ponto | |
| Reach | A que distância um jogador precisa estar para abri-la. | 0.5 a 30 m | 2 |
| Jobs | Só membros desses empregos podem usar. Deixe empregos e gangues vazios para todos. | nomes de empregos | vazio |
| Gangs | Membros dessas gangues também podem usar. | nomes de gangues | vazio |
| Only on duty | Membros do emprego precisam estar em serviço naquele emprego. | ligado / desligado | desligado |
| Map blip | Mostra a loja no mapa. | ligado / desligado | ligado |
| Blip look | Imagem, cor e tamanho do blip (quando o blip está ligado). | sprite, cor, tamanho | |
| Paid from | Contas de dinheiro tentadas em ordem. | até 5 contas | cash, bank |
Products: os itens que a loja vende e o preço por unidade. Até 100 linhas, cada uma Item e Price (0 a 100.000.000 $).
NPC: um atendente parado na loja. Model (vazio para nenhum, visto a até 50 m), What it does (uma animação parada), Where it stands (ponto no chão e direção; sem ele, fica no ponto da loja).
Aba Stashes
Armazenamento em lugares fixos. Vem com o script: um Police Locker.
| Configuração | O que muda | Valores | Padrão para um baú novo |
|---|---|---|---|
| Stash name | O nome que os jogadores veem. | até 48 caracteres | |
| Place | Onde os jogadores o abrem. | um ponto | |
| Reach | A que distância um jogador precisa estar. | 0.5 a 30 m | 1.5 |
| Jobs, Gangs, Only on duty | Quem pode abri-lo (como nas lojas). | todos | |
| One per character | Ligado: cada personagem tem o próprio conteúdo. Desligado: todos que podem abri-lo compartilham um. | ligado / desligado | desligado |
| Rows | Linhas de células; a largura é a configuração Columns. | 1 a 50 | 6 |
| Weight limit | Gramas. 0 significa sem limite. | 0 a 10.000.000 g | 100.000 |
Apagar um baú: os itens guardados nele ficam no banco de dados.
Aba Crafting
Bancadas onde os jogadores transformam materiais em itens. Vem com o script: uma Workbench.
Bench: Bench name, Place, Reach (padrão 1.5 m), Jobs, Gangs, Only on duty, como nas lojas.
Recipes: até 50 linhas.
| Configuração | O que muda | Valores | Padrão para uma linha nova |
|---|---|---|---|
| Makes | O item feito. | um nome de item | lockpick |
| Amount | Quantos são feitos. | 1 a 1000 | 1 |
| Time | Quanto tempo leva. | 0 a 600 s | 5 |
| Materials | O que ela usa, como item:count separados por vírgulas: scrapmetal:3, paperbag:1. | até 400 caracteres | scrapmetal:3 |
Aba Settings
O tamanho dos inventários.
| Cartão | Configuração | O que muda | Valores | Padrão |
|---|---|---|---|---|
| Grid | Columns | Células por linha em todo inventário. Itens que não cabem mais vão para células livres; um inventário cheio demais para isso ganha linhas extras. | 6 a 14 | 8 |
| Grid | No GTA weapon wheel | A roda de armas do GTA e a troca de armas com a roda do mouse ficam desligadas: as armas são tiradas dos atalhos rápidos (1-5). | ligado / desligado | ligado |
| Player inventory | Rows | O que um personagem pode carregar, em linhas. | 1 a 50 | 20 |
| Player inventory | Weight limit | Gramas; 0 = sem limite. | 0 a 10.000.000 g | 40.000 |
| Ground | Rows | Tamanho de uma bolsa no chão. | 1 a 50 | 6 |
| Ground | Weight limit | Gramas; 0 = sem limite. | 0 a 10.000.000 g | 1.000.000 |
| Ground | Disappears after | Os itens no chão somem quando ninguém os tocou por esse tempo. | 1 a 240 min | 15 |
| Ground | Bags per player | Quantas bolsas um personagem pode ter no chão ao mesmo tempo. | 1 a 100 | 10 |
| Trunk | Rows | O porta-malas de todo veículo. | 1 a 50 | 5 |
| Trunk | Weight limit | Gramas; 0 = sem limite. | 0 a 10.000.000 g | 80.000 |
| Glovebox | Rows | O porta-luvas de todo veículo. | 1 a 50 | 2 |
| Glovebox | Weight limit | Gramas; 0 = sem limite. | 0 a 10.000.000 g | 10.000 |
Uma mudança de colunas, linhas ou peso chega às telas abertas na hora.
Comandos
Nenhum próprio. Os administradores dão e tiram itens com as ferramentas de itens do ai-admin.
Teclas
| Tecla padrão | O que faz | Nome nas configurações do GTA |
|---|---|---|
| F2 | Abre o inventário (com o chão, o porta-malas ou o porta-luvas ao seu lado) ou o fecha | Open the inventory |
| TAB | Mostra ou esconde a barra de atalhos rápidos | Show / hide the quick slots bar |
| 1 a 5 | Usa o item naquele atalho rápido | Use the item in quick slot 1 (to 5) |
| R | Recarrega a arma em mãos a partir de um item de munição | Reload the weapon |
Na tela: arraste para mover, gire o item enquanto arrasta, clique duplo para usar, clique direito para o menu do item, Escape ou F2 para fechar.
Funciona com outros scripts
- Substitui o ox_inventory (
provide, API do ox_inventory 2.44) e o qb-inventory (provide, API 2.0): os exports deles respondem, então scripts ox e QB dão, tiram e verificam itens aqui. Veja a página para desenvolvedores para o que é e o que não é respondido. - A camada de inventário do AI Core. Todo script
ai-*e a ponte ESX / QB dão e tiram itens através do AI Core, que chama o ai-inventory. - Você pode substituí-lo. O AI Core tem adaptadores para outros inventários (tgiann-inventory, codem-inventory, core_inventory, origen_inventory, jaksam_inventory e mais), cada um com seus próprios limites. Um inventário suportado torna o ai-inventory desnecessário: o AI Core avisa no console para removê-lo. Veja Compatibilidade.
Limites conhecidos
- Um uso por vez por jogador.
- Uma nova bolsa no chão é limitada a uma por segundo por jogador, aos Bags per player do painel e a 50 por área do mapa. Resultados de crafting e drops de scripts ignoram esses limites.
- Não é possível largar itens de dentro de um veículo.
- Os hooks do ox_inventory, o
RegisterShopno formato do ox e o confisco não são respondidos (as lojas vêm do painel ou do próprioRegisterShopdo ai-inventory).
ai-appearance para desenvolvedores
Os exports do cliente do ai-appearance, o formato de roupa de emprego e os eventos que ele usa com a tela de personagens do AI Core.
ai-inventory para desenvolvedores
Os exports do servidor e do cliente do ai-inventory, itens usáveis, lojas de script, o evento usedItem, e as APIs do ox_inventory e do qb-inventory que ele responde.