İçeriğe geç

Özelleştirme

Her eşyanın ne yaptığı menüde oluşturulur ve veritabanına kaydedilir. Dosyalar geri kalanı belirler: komut, tuşlar, şeylerin nasıl gösterildiği ve kaynağın framework’ünüzle nasıl konuştuğu.


DosyaNeyi belirlerAçık mı?
config.luaDil, komut, iptal tuşu, yerleştirilmiş prop etkileşimi, görsel yolu, ilerleme çubuğuEvet
bridge/client_bridge.luaBildirimler, can, zırh, stres, yemek ve susuzluk, eşya sayıları, meslekler, target, ilerleme çubuğuEvet
bridge/server_bridge.luaFramework algılama, kullanılabilir eşyalar, eşya ekleme ve çıkarma, meslekler, bildirimler, eşya listesiEvet
locales/*.luaOyun içi ve menüdeki her metin parçasıEvet
data/*.luaMenünün seçicilerinin arkasındaki listelerEvet
html/Menü (HTML, CSS, JS)Okunabilir
client/, server/Eşya mantığıŞifreli

SeçenekNe işe yararVarsayılan
Config.LocaleMenünün ve mesajların dili. Bkz. Diller'en'
Config.CommandMenüyü açan ve kapatan komut'itemcreator'
Config.CommandDescriptionBu komutun FiveM’in tuş atamalarındaki adı; orada ona bir tuş atanabilir. Varsayılan olarak tuşu yoktur'Open Item Creator Menu'
Config.CancelKeyBir eşyanın başlattığı şeyi iptal etmek için varsayılan tuş. Aşağıya bakın'X'
Config.InteractionYerleştirilmiş bir prop’un nasıl geri toplanacağı: 'drawtext', 'ox_target' veya 'qb-target'. Her iki target değerinde de bridge, ox_target veya qb-target’tan hangisi çalışıyorsa onu kullanır'drawtext'
Config.ImageInventoryPathMenünün eşya resimlerini bulduğu yer, <path><item name>.png olarak'nui://ox_inventory/web/images/'
Config.ProgressBarYerleşik çubuk için 'custom', ox_lib’inki için 'ox_lib'. ox_lib çalışmıyorsa yerleşik çubuk kullanılır'custom'

ox_inventory kullanmıyor musunuz? Config.ImageInventoryPath değerini envanterinizin görsel klasörüne ayarlayın, örneğin nui://qb-inventory/html/images/.


KomutVarsayılan tuşNe işe yarar
/itemcreatoryokMenüyü açar veya kapatır. ACE mic_itemcreator.open gerekir
/cancelitemanimConfig.CancelKey (X)Bir eşyanın başlattığı animasyonu, senaryoyu veya yürüyüş stilini durdurur, hızı sıfırlar, süper güçleri bitirir ve takılı bir prop’u kaldırır

Bir Attach Prop konumlandırılırken bu tuşlar geçerlidir. Her biri FiveM’in tuş atamalarında “Placement:” adıyla listelenir, böylece oyuncular bunları değiştirebilir:

TuşNe yapar
← → ↑ ↓Prop’u sola, sağa, ileri, geri hareket ettirir
Page Up / Page DownYukarı veya aşağı hareket ettirir
Nümerik 4 / 6Yaw
Nümerik 8 / 5Pitch
Nümerik 7 / 9Roll
XAnimasyonu önizler
EOnaylar
Backspaceİptal eder

Menüde bir listeden seçebileceğiniz her şey data/ içinden gelir ve hepsine ekleme yapabilirsiniz:

DosyaNe listeler
data/animations.luaAnimasyonlar
data/scenarios.luaSenaryolar
data/walkingstyles.luaYürüyüş stilleri
data/bones.luaBir prop’un takılabileceği kemikler
data/particles.luaPartikül efektleri
data/screeneffects.luaEkran efektleri
data/sounds.luaSesler
data/cars.luaArabalar, etiket ve modele göre
data/peds.luaPed modelleri
data/clothing.luaBir kıyafet parçası veya prop giyildiğinde oynatılan animasyonlar

Her girdiyi çevresindekilerle aynı biçimde tutun. Menü bu dosyaları açıldığında okur; düzenledikten sonra kaynağı yeniden başlatın.


locales/ içinde dokuz dosya gelir:

Config.LocaleDil
enİngilizce
esİspanyolca
deAlmanca
frFransızca
itİtalyanca
ptPortekizce
ruRusça
ch-znÇince
jpJaponca

config.lua içindeki yorum tr ve ch değerlerinden de söz eder; ikisi de mevcut değildir. Yukarıdaki kodları kullanın.

Aynı dosya hem oyun içi mesajları hem de menüyü çevirir, dolayısıyla düzenlenecek tek bir yer vardır.

Bir dil eklemek için:

  1. locales/en.lua dosyasını yeni bir dosyaya kopyalayın, örneğin locales/pl.lua.
  2. İçinde Locales['en'] değerini kendi kodunuza çevirin ve her satırın sağındaki metni çevirin. Anahtarları ve varsa %s ifadelerini koruyun.
  3. Dosyayı fxmanifest.lua içindeki shared_scripts listesine, locales/lib.lua üstüne ekleyin.
  4. Config.Locale değerini kodunuza ayarlayın, refresh yapın ve yeniden başlatın.

Eksik bir anahtar konsolda Translation key "…" not found yazdırır ve ekranda anahtarın kendisini gösterir.


bridge/ içinde iki açık dosya vardır. Fonksiyon adlarını koruyun — kaynağın geri kalanı onları adıyla çağırır.

bridge/server_bridge.lua

FonksiyonNe işe yarar
(algılama)es_extended başlatılmışsa ESX’i, aksi halde qb-core başlatılmışsa QBCore’u kullanır. QBox, QBCore uyumluluğu üzerinden qb-core olarak bulunur
Bridge.RegisterUsableItemYapılandırılmış her eşyayı framework’ünüze kullanılabilir olarak kaydeder
Bridge.AddItem, Bridge.RemoveItem, Bridge.GetItemCountEşyalar: paketler, toplamalar, gerekli eşyalar, Remove on Use
Bridge.GetPlayerJob, Bridge.GetPlayerJobGradeMeslek kısıtlaması
Bridge.NotifySunucu tarafı bildirimler
Bridge.GetAllItemsMenüdeki eşya listesi: önce ox_inventory’den, sonra ESX’in kayıtlı eşyalarından, sonra QBCore’un paylaşılan eşyalarından

bridge/client_bridge.lua

FonksiyonNe işe yarar
Bridge.NotifyHer bildirim. Framework yoksa GTA akışına geri döner
Bridge.AddHealth, Bridge.AddArmorHealth/Armor
Bridge.AddFoodThirstFood/Thirst: ESX’te esx_status; QBCore’da consumables:server:addHunger ve addThirst olayları
Bridge.AddStressStress: ESX’te esx_status; QBCore’da consumables:server:addStress
Bridge.GetItemCountAlways Attached Prop: çalışıyorsa ox_inventory’nin sayısı, aksi halde oyuncu verisi
Bridge.AddTargetEntityYerleştirilmiş bir prop üzerindeki toplama seçeneği, ox_target veya qb-target için
Bridge.ProgressBarİlerleme çubukları: ox_lib veya yerleşik olan. Başka bir ilerleme çubuğu kaynağı eklemek için yorum satırı örneği olan işaretli bir yer vardır

HUD’unuz açlık, susuzluk veya stres için farklı olaylar mı kullanıyor? Bunları Bridge.AddFoodThirst ve Bridge.AddStress içinde değiştirin. Başka bir bildirim kaynağı mı? Bridge.Notify gövdesini değiştirin. Başka bir framework veya envanter mi? Her iki dosyada da aynı fonksiyonları onun için doldurun.


Menüdeki Network, diğer sunucuların paylaştığı eşya yapılandırmalarını listeler. Import, bu yapılandırmayı kendi eşyalarınızdan hangisinin alacağını sorar, ardından ayarlayıp kaydetmeniz için onu açar. Kendinizinkilerden birini paylaşmak için, eşya listenizden herkese açık bir ad, bir açıklama ve bir yazar adıyla dışa aktarın — ağı kullanan her sunucuda görünür hale gelir.

Liste GitHub’dan indirilir, dolayısıyla dolması için sunucunuzun dışarıya internet erişimine sahip olması gerekir.