Skip to content

Kanystr

Kanystr

Přenositelný kanystr, který naplníte u stojanu a nalijete do auta. Jde o obyčejný předmět v inventáři, nikoliv o zbraň.

Základní weapon_petrolcan není záměrně použit. Tento model nese chování plamenometu – hráči mohou tahat stopu paliva po zemi a zapálit ji. Zdejší předmět umí přesně jednu věc: naplnit nádrž vozidla.

Jak se chová ve hře

  • Použijte předmět. Kanystr se vám objeví v ruce a ukáže vám, kolik litrů v něm je.
  • Jděte k vozidlu a zacílete na jeho víčko nádrže, nebo se postavte blízko něj a stiskněte [E].
  • Nalévá rychlostí Config.JerryCan.PourRate litrů za tik a palivo, které nateče dovnitř, se řídí pravidly špatného paliva jako při každém jiném tankování.
  • Odvažte se dál než Config.JerryCan.MaxDistance a kanystr se schová zpět do kapsy.
  • U stojanu doplní [G] kanystr. Pokud žádný nemáte, čerpací stanice vám může prodat plný kanystr rovnou za Config.JerryCan.FullPrice.

Každý kanystr má svou vlastní hladinu paliva, což je důvod, proč každá položka inventáře níže označuje předmět jako unikátní / nestohovatelný. Stohování dvou kanystrů by sloučilo dvě různá množství do jednoho slotu.

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

Pokud již používáte kanystr na palivo pod jiným názvem, změňte Config.JerryCan.Item namísto přejmenování vašeho předmětu.

Co je součástí install/

Cesta Obsah
install/README.txt Krátká verze všeho na této stránce
install/img/jerrycan.png Ikona připravená k vložení do vašeho inventáře
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 klasické ESX inventáře

ox_inventory

Zkopírujte obrázek do adresáře ox_inventory/web/images/ a poté přidejte předmět.

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'
    }
},

ox_inventory nemá žádnou funkci CreateUseableItem, takže řádek client.export je způsob, jak se skript dozví, že byl kanystr použit. Nastavení stack = false je povinné.

qb-inventory, lj-inventory, ps-inventory

Zkopírujte obrázek do adresáře qb-inventory/html/images/ – lj a ps čtou ze stejné složky – a poté přidejte předmět do 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.'
},

Skript registruje handler použití sám pomocí CreateUseableItem, takže se do qb-core/server/main.lua nemusí nic přidávat.

qs-inventory, codem-inventory, tgiann-inventory

Všechny tři čtou stejnou definici předmětu jako qb-core výše. Liší se pouze složka s obrázky:

Inventář Složka s obrázky
qs-inventory qs-inventory/html/images/
codem-inventory codem-inventory/html/itemimages/
tgiann-inventory tgiann-inventory/html/images/

Uživatelé tgiann, kteří udržují samostatný seznam, přidají předmět namísto toho do tgiann-inventory/shared/items.lua.

ESX

Zkopírujte obrázek do složky s obrázky vašeho inventáře – esx_inventoryhud/html/img/items/ pro klasické HUD, nebo ox_inventory/web/images/ pro ESX setupy běžící na ox – a poté vložte předmět.

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

Starší ESX schémata bez těchto sloupců používají zkrácený formát:

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

Skript volá ESX.RegisterUsableItem sám, takže registrace použitelného předmětu nepatří nikam jinam.

Testování

code
/giveitem <id> jerrycan 1

Poté restartujte svůj inventář a bupa-fuel.

EV baterie

Elektrické nabíjení má vlastní předmět ev_battery, definovaný stejným způsobem jako kanystr – normální předmět bez potřeby handleru použití, jelikož je prodáván a spotřebováván nabíječkou. Viz Elektrické nabíjení.