Ana içeriğe geç

QBCore Entegrasyonu

XDEV Appearance dahili QBCore uyumluluğu içerir ve QBCore tabanlı sunucularla doğal şekilde çalışacak şekilde tasarlanmıştır.

Sistem şunları destekler:

  • oyuncu veri entegrasyonu
  • meslek sistemleri
  • çete sistemleri
  • komut sistemleri
  • yetki sistemleri
  • bildirim sistemleri
  • appearance senkronizasyonu

Ağır düzenlemeler gerektirmeden çalışır.


Bağımlılık

QBCore şu yapı içerisinde bağımlılık olarak tanımlanmıştır:

dependencies {
'qb-core'
}

Bu yapı sistemin otomatik olarak şunlara erişmesini sağlar:

  • oyuncu verileri
  • meslek sistemleri
  • çete sistemleri
  • yetkiler
  • callback sistemleri

Framework Ayarı

Framework davranışı şu yapı üzerinden kontrol edilir:

Config.Override.ClientSide.Framework = true

Aktif olduğunda:

QBCore doğrulama sistemleri aktif hale gelir

Devre dışı bırakıldığında:

geliştiricilerin kendi doğrulama mantığını yazması gerekir

Oyuncu Verisi Kullanımı

Sistem QBCore oyuncu verilerini şunlar için kullanır:

meslek kontrolleri
çete kontrolleri
cinsiyet kontrolleri
appearance yükleme sistemi

Örnek:

QBCore.Functions.GetPlayerData()

Cinsiyet Yönetimi

Karakter cinsiyeti otomatik olarak QBCore oyuncu verilerinden çözülür.

Örnek işleyiş:

if pData.charinfo.gender == 1 then
skin = "mp_f_freemode_01"
end

Bu yapı şuralarda kullanılır:

  • ilk karakter oluşturma
  • appearance yeniden oluşturma
  • menü başlatma işlemleri

Komut Entegrasyonu

Komut sistemleri doğrudan şu yapı ile entegre çalışır:

QBCore.Commands.Add()

Desteklenen komut işleyişleri:

reload komutları
admin menü komutları
ped komutları

Yetki Desteği

Yönetici komutları dahili QBCore yetki sistemlerini destekler.

Örnek:

permission = "admin"

Bu yapı doğrudan şunların kullanılmasını sağlar:

admin
god
özel yetki grupları

sunucu yapılandırmasına bağlı olarak değişebilir.


Kıyafet Odası Entegrasyonu

Kıyafet odaları QBCore meslek ve çete sistemlerini destekler.

Desteklenen doğrulamalar:

PlayerData.job.name
PlayerData.gang.name

Bu yapı şunları sağlar:

  • polis dolapları
  • EMS üniformaları
  • çete kombin odaları
  • fraksiyon sistemleri

Bildirim Override Sistemi

Sistem bilinçli olarak hardcode bildirim sistemi kullanmaz.

Varsayılan override:

function Config.Override.ClientSide.Functions.SendNotify(message)
return false
end

Örnek QBCore entegrasyonu:

QBCore.Functions.Notify(message, 'error')

Para Yönetimi

Ödeme sistemleri override yapıları üzerinden yönetilir.

Varsayılan override:

function Config.Override.ServerSide.Functions.RemoveMoney(src, price)
return false
end

Örnek QBCore entegrasyonu:

local Player = QBCore.Functions.GetPlayer(src)

if Player.PlayerData.money.cash >= price then
Player.Functions.RemoveMoney('cash', price)
return true
end

return false

İlk Karakter Desteği

Resource QBCore uyumlu ilk karakter desteği içerir.

Örnek:

RegisterNetEvent('qb-clothes:client:CreateFirstCharacter')

Bu yapı otomatik olarak:

cinsiyeti algılar
freemode pedi yükler
karakter menüsünü açar

Kombin Uyumluluğu

Sistem şunları destekler:

qb-clothing kombin eventleri
QBCore appearance işleyişleri

Uyumluluk köprüleri üzerinden çalışır.


Reload Desteği

Appearance reload sistemleri doğal şekilde QBCore eventleriyle entegre çalışır.

Örnek:

TriggerClientEvent("xdev_appearance:reload_ped", source)

Şunlar için kullanılır:

  • desync kurtarma işlemleri
  • dövme yeniden oluşturma
  • appearance yenileme

Veritabanı Uyumluluğu

Resource mevcut QBCore uyumlu veritabanlarını genişletmeyi destekler.

Tipik desteklenen tablolar:

playerskins
player_outfits
player_outfit_codes

Evrensel Entegrasyon Mantığı

QBCore dahili olarak desteklense bile sistem bilinçli şekilde framework bağımlı hale getirilmemiştir.

Amaç:

daha kolay geçiş süreçleri
modülerlik
özel framework desteği
standalone uyumluluğu

Önerilen QBCore İşleyişi

Önerilen entegrasyon işleyişi:

1. Bağımlılığı kur
2. Override sistemlerini yapılandır
3. Bildirim sistemlerini yapılandır
4. Para yönetimini yapılandır
5. Meslek/çete sistemlerini doğrula
6. Senkronizasyonu doğrula

Geliştirici Notları

Birçok QBCore appearance sisteminin aksine XDEV bilinçli olarak şunları birbirinden ayırır:

QBCore mantığı
appearance mantığı
veritabanı mantığı

Bu mimari şunları geliştirir:

  • sürdürülebilirlik
  • geçiş desteği
  • uyumluluk
  • özelleştirme esnekliği