Skip to content

O galão de combustível

The jerry can

Um galão portátil que você enche no posto e despeja em um carro. É um item de inventário comum, não uma arma.

O weapon_petrolcan nativo é propositalmente não utilizado. Esse modelo carrega o comportamento de lança-chamas — os jogadores podem espalhar combustível pelo chão e incendiá-lo. O item aqui pode fazer exatamente uma coisa: encher o tanque de um veículo.

How it behaves in game

  • Use o item. O galão aparece na sua mão e indica quantos litros há nele.
  • Caminhe até um veículo e mire no bocal de combustível, ou fique perto dele e pressione [E].
  • Ele despeja a Config.JerryCan.PourRate litros por tick, e o combustível que entra obedece às regras de combustível incorreto como qualquer outro abastecimento.
  • Afaste-se mais do que Config.JerryCan.MaxDistance e o galão voltará para o seu bolso.
  • No posto, [G] reabastece o galão. Se você não tiver um, um posto pode te vender um galão cheio diretamente por Config.JerryCan.FullPrice.

Cada galão carrega seu próprio nível de combustível, e é por isso que cada entrada de inventário abaixo o marca como único / não empilhável. Empilhar dois galões fundiria duas quantidades diferentes em um único slot.

config.lua
Config.JerryCan = {
    Enabled  = true,
    Item     = 'jerrycan',
    Prop     = 'prop_jerrycan_01a',
    Capacity = 20,
    SellFull  = true,
    FullPrice = 60,
}

Se você já usa um galão de combustível com outro nome, altere Config.JerryCan.Item em vez de renomear o seu item.

What ships in install/

Path Contents
install/README.txt A versão resumida de tudo nesta página
install/img/jerrycan.png O ícone, pronto para ser colocado no seu inventário
install/inv/ox_inventory.txt ox_inventory
install/inv/qb_inventory.txt qb-inventory, lj-inventory, ps-inventory
install/inv/qs_codem_tgiann.txt qs-inventory, codem-inventory, tgiann-inventory
install/inv/esx.txt inventários ESX clássicos

ox_inventory

Copie a imagem para ox_inventory/web/images/, depois adicione o item.

ox_inventory/data/items.lua
['jerrycan'] = {
    label = 'Jerry Can',
    weight = 4000,
    stack = false,
    close = true,
    description = 'Holds 20 litres of fuel. Use it, then pour it into a car.',
    client = {
        export = 'bupa-fuel.useJerryCan'
    }
},

O ox_inventory não possui CreateUseableItem, portanto a linha client.export é como o resource descobre que o galão foi usado. stack = false é obrigatório.

qb-inventory, lj-inventory, ps-inventory

Copie a imagem para qb-inventory/html/images/ — o lj e o ps usam a mesma pasta — e adicione o item em qb-core/shared/items.lua.

qb-core/shared/items.lua
['jerrycan'] = {
    ['name'] = 'jerrycan',
    ['label'] = 'Jerry Can',
    ['weight'] = 4000,
    ['type'] = 'item',
    ['image'] = 'jerrycan.png',
    ['unique'] = true,
    ['useable'] = true,
    ['shouldClose'] = true,
    ['combinable'] = nil,
    ['description'] = 'Holds 20 litres of fuel. Use it, then pour it into a car.'
},

O resource registra o manipulador de uso por conta própria através de CreateUseableItem, então nada vai em qb-core/server/main.lua.

qs-inventory, codem-inventory, tgiann-inventory

Todos os três usam a mesma definição de item do qb-core acima. Apenas a pasta de imagens difere:

Inventory Image folder
qs-inventory qs-inventory/html/images/
codem-inventory codem-inventory/html/itemimages/
tgiann-inventory tgiann-inventory/html/images/

Usuários do tgiann que mantêm uma lista separada devem adicionar o item em tgiann-inventory/shared/items.lua em vez disso.

ESX

Copie a imagem para a pasta de imagens do seu inventário — esx_inventoryhud/html/img/items/ para o HUD clássico, ou ox_inventory/web/images/ para configurações de ESX rodando no ox — e insira o item.

SQL
INSERT INTO `items` (`name`, `label`, `weight`, `rare`, `can_remove`)
VALUES ('jerrycan', 'Jerry Can', 4, 0, 1);

Schemas mais antigos do ESX sem essas colunas usam a forma curta:

SQL
INSERT INTO `items` (`name`, `label`) VALUES ('jerrycan', 'Jerry Can');

O resource chama ESX.RegisterUsableItem por conta própria, portanto nenhum registro de item utilizável vai para outro lugar.

Testing

code
/giveitem <id> jerrycan 1

Em seguida, reinicie o seu inventário e o bupa-fuel.

The EV battery

O carregamento elétrico tem seu próprio item, ev_battery, definido da mesma forma que o galão — um item normal sem necessidade de manipulador de uso, uma vez que é vendido e consumido pelo carregador. Veja Electric charging.