ジェリー缶
The jerry can
ジェリー缶(携行缶)はガソリンスタンドで満タンにし、車に給油することができるアイテムです。武器ではなく、通常のインベントリアイテムとして機能します。
バニラの weapon_petrolcan は意図的に使用していません。このモデルには火炎放射器としての挙動(プレイヤーが地面に燃料を撒いて火を付ける機能)が含まれているためです。このアイテムは「車両のタンクに給油する」という1つの機能のみを実行します。
ゲーム内での挙動
- アイテムを使用すると、缶が手に持ち上がり、内部の残量(リットル)が表示されます。
- 車両に近づいて給油口をターゲットにするか、車両の近くで
[E]キーを押します。 - 給油は
Config.JerryCan.PourRateリットル/ティックの速度で行われ、注入される燃料は他の給油方法と同様に誤った燃料のルールに従います。 Config.JerryCan.MaxDistanceよりも離れた場所に移動すると、缶は自動的にポケットにしまわれます。- ガソリンスタンドでは、
[G]キーで缶を再給油できます。所持していない場合、スタンドでConfig.JerryCan.FullPriceを支払うことで満タンの缶を直接購入できます。
各缶はそれぞれの燃料レベルを保持しているため、以下のインベントリ設定ではすべて**ユニーク(スタック不可)**に指定されています。2つの缶をスタックすると、異なる燃料量が1つのスロットに統合されてしまうためです。
Config.JerryCan = {
Enabled = true,
Item = 'jerrycan',
Prop = 'prop_jerrycan_01a',
Capacity = 20,
SellFull = true,
FullPrice = 60,
}すでに別の名前で燃料缶を導入している場合は、アイテム名を変更する代わりに Config.JerryCan.Item を変更してください。
install/ に同梱されている内容
| パス | 内容 |
|---|---|
install/README.txt |
このページの内容の簡易バージョン |
install/img/jerrycan.png |
インベントリにそのまま導入できるアイコン画像 |
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 |
クラシックな ESX インベントリ用設定 |
ox_inventory
画像を ox_inventory/web/images/ にコピーし、アイテムを追加します。
['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 には CreateUseableItem が存在しないため、リソース側で缶が使用されたことを認識させるために client.export の行を使用します。stack = false の設定が必須です。
qb-inventory, lj-inventory, ps-inventory
画像を qb-inventory/html/images/(lj および ps も同じフォルダを参照します)にコピーし、アイテムを 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.'
},リソース側が CreateUseableItem を通じて使用ハンドラーを自動登録するため、qb-core/server/main.lua にコードを追加する必要はありません。
qs-inventory, codem-inventory, tgiann-inventory
これら3つのインベントリは、上記の qb-core と同じアイテム定義を使用します。異なるのは画像の保存先フォルダのみです:
| インベントリ | 画像フォルダ |
|---|---|
| qs-inventory | qs-inventory/html/images/ |
| codem-inventory | codem-inventory/html/itemimages/ |
| tgiann-inventory | tgiann-inventory/html/images/ |
独自のリストを管理している tgiann ユーザーは、代わりにアイテムを tgiann-inventory/shared/items.lua に追加してください。
ESX
画像をインベントリの画像フォルダ(クラシック HUD の場合は esx_inventoryhud/html/img/items/、ox を使用する ESX 環境の場合は ox_inventory/web/images/)にコピーし、アイテムを追加します。
INSERT INTO `items` (`name`, `label`, `weight`, `rare`, `can_remove`)
VALUES ('jerrycan', 'Jerry Can', 4, 0, 1);該当するカラムを持たない古い ESX スキーマの場合は、ショート形式を使用します:
INSERT INTO `items` (`name`, `label`) VALUES ('jerrycan', 'Jerry Can');リソース側で ESX.RegisterUsableItem が呼び出されるため、他の場所に使用可能アイテムの登録を追加する必要はありません。
テスト
/giveitem <id> jerrycan 1その後、インベントリと bupa-fuel を再起動してください。
EV バッテリー
電気自動車の充電には、ジェリー缶と同様に定義された専用のアイテム ev_battery が使用されます。充電器によって販売・消費されるため、使用ハンドラーを必要としない通常のアイテムとして機能します。詳細は電気充電をご確認ください。