🦲 Pourquoi.qbox?
- 🧔Pourquoi.pas?
Ce site explique brievement l'utilité de Qbox, ceci n'est pas une page officielle
- 🧔Pourquoi.pas?
Ce site explique brievement l'utilité de Qbox, ceci n'est pas une page officielle
+ oui, avec plaisir.
initialement dérivé de QBCore, plusieurs resources Qbox ont été refactorisés pour améliorer la qualité du code, améliorer la sécurité , améliorer les performances, et intégrer les resources overextended.
+ oui, ils fonctionnent
Nous avons créé une couche de compatibilité, avec une utilisation de qb-core documentés et corrects, et vous pouvez continuer à utiliser la plupart des scripts QBCore sans aucune modification.
+ Oui, c'est prêt.
Malgré que qbx_core est rétrocompatible avec les resources qb-core, nous vous recommandons d'utiliser uniquement les resources Qbox publiées pour une expérience stable.
Un bref aperçu | QBCore | Qbox |
---|---|---|
léger | 🔧 | ✅ |
Aucune erreur de lint n'est présente | ⭕ | ✅ |
Lisible et bien organisé | 🔧 | ✅ |
Structure modulaire | ⭕ | ✅ |
Aucune fonction obsolète n'est invoquée | ⭕ | ✅ |
-- qbx_core/server/storage/main.lua
local players = require 'server.storage.players'
---@class StorageFunctions
---@field insertBan fun(request: InsertBanRequest)
---@field fetchBan fun(request: GetBanRequest): BanEntity?
---@field deleteBan fun(request: GetBanRequest)
---@field upsertPlayerEntity fun(request: UpsertPlayerRequest)
---@field fetchPlayerSkin fun(citizenId: string): PlayerSkin?
---@field fetchPlayerEntity fun(citizenId: string): PlayerEntity?
---@field fetchAllPlayerEntities fun(license2: string, license?: string): PlayerEntity[]
---@field deletePlayer fun(citizenId: string): boolean success
---@field fetchIsUnique fun(type: UniqueIdType, value: string|number): boolean
---@field addPlayerToJob fun(citizenid: string, group: string, grade: integer)
---@field addPlayerToGang fun(citizenid: string, group: string, grade: integer)
---@field fetchPlayerGroups fun(citizenid: string): table<string, integer>, table<string, integer> jobs, gangs
---@field removePlayerFromJob fun(citizenid: string, group: string)
---@field removePlayerFromGang fun(citizenid: string, group: string)
---@type StorageFunctions
return players