Meslek tablosu nil
Meslek listen okunamadı. Meslek dosyasındaki tek bir yazım hatası, mesleklerle ilgili her script'i aynı anda bozar.
Önce şunu yap
Meslek dosyanı yakın zamanda düzenlediysen, o değişikliği geri al ve yeniden başlat.
Ne anlama gelir
Kod, framework'ün meslek kaydını okudu ve o orada değildi. QBCore'da bu QBCore.Shared.Jobs, ESX'te veritabanındaki jobs tablosundan yüklenir. Bu olduğunda mesleğe bağlı her script aynı anda bozulur, ki bu da onu olduğundan büyük gösterir.
Neden olur
Ne sıklıkla doğru cevap olduğuna göre sıralı.
- 1
Meslek config'inde bir sözdizimi hatası
qb-core/shared/jobs.luaLua'dır. Eksik tek bir süslü parantez ve dosyanın tamamı yüklenemez, yani tablo hiç atanmaz — ve gördüğün hata, bozulan dosyada değil, onu okuyan script'tedir. - 2
jobs tablosu hiç içe aktarılmamış (ESX)
ESX meslekleri veritabanından okur. Satır yoksa meslek de yoktur.
- 3
Bir yerde olan, diğerinde olmayan bir meslek
jobsütunu, config'in tanımlamadığı bir mesleği adlandıran bir oyuncu. Kayıt sorunsuz; yalnızca o tek arama nil'dir. - 4
Core yüklenmeden önce okumak
Core nesnesinin kendisiyle aynı zamanlama sorunu.
- 5
Düzenlenmiş bir paylaşılan dosyanın güncellemeyle değişmesi
Bir güncelleme özel mesleklerinin üzerine yazdı.
Hangisinin seninki olduğu nasıl anlaşılır
Framework'ün kendi dosyalarında bir yükleme hatası için yukarı kaydır — bozuk bir jobs.lua, başka hiçbir şey şikâyet etmeden önce kendini her zaman duyurur. Sonra:
print(json.encode(QBCore.Shared.Jobs and 'loaded' or 'nil'))
Nereye bakmalı
qb-core/shared/jobs.lua, ya da ESX için veritabanındaki jobs tablosu.
Nasıl düzeltilir
Yeniden başlatmadan önce config dosyasını doğrula:
luac -p qb-core/shared/jobs.lua
Ve meslek başına aramayı koru; o, bozuk bir tablo değil, meşru şekilde eksik bir anahtardır:
local job = QBCore.Shared.Jobs[player.PlayerData.job.name] if not job then return end
Hâlâ kendi kodunda mı takıldın?
Bu sayfa, bu hatanın genelde ne anlama geldiğini anlatır. Konsolunu Server Fixer'a yapıştır; içindeki her şeyi sıraya dizer ve önce ne yapman gerektiğini söyler. Kendin uğraşmak istemiyorsan ORBIE script'i onarır ve kaynağı sunucuna atmaya hazır geri verir.
bug_reportServer Fixer'ı açBu tür bir hata için Script Çevirici bir kaynağı ESX, QBCore ve Qbox arasında çevirir.