Utilisation faction
Comment utiliser le système de faction?
fxmanifest.lua :
Pour appeler l'objet ESX dans votre ressource :
shared_script '@es_extended/imports.lua'
Côté client (ESX.PlayerData.faction)
Le type & la structure de ESX.PlayerData.faction :
ESX.PlayerData.faction: table
name: string
label: string
grade: number
grade_name: string
grade_label: string
salary: number
Pour récuperer la faction et l'actualiser, il vous suffit d'enregistrez cette event côté client :
RegisterNetEvent('esx:setFaction', function(faction)
ESX.PlayerData.faction = faction
end)
Les fonctions que vous pouvez avoir Côté serveur
Via le player objet
Le type & la structure de xPlayer.faction :
xPlayer.faction: table
name: string
label: string
grade: number
grade_name: string
grade_label: string
salary: number
-- exemple :
local xPlayer = ESX.GetPlayerFromId(source)
print(json.encode(xPlayer.faction, {indent = true}))
Des function sur le player objet
-- exemple :
local xPlayer = ESX.GetPlayerFromId(source)
print(xPlayer.getFaction())
xPlayer.setFaction('vagos', 0)
Autre fonctionnalité
ESX.GetExtendedPlayers
-- exemple :
local xPlayers = ESX.GetExtendedPlayers('faction', 'vagos') -- recupère tout les joueur en ligne dans la faction vagos
print(json.encode(xPlayers, {indent = true}))ESX.RefreshFactions
-- exemple :
ESX.RefreshFactions() -- refresh le chargement de toute les factions enregistrer en db dans l'objet ESXESX.GetFactions
-- exemple :
local factions = ESX.GetFactions() -- Récupère tout les fonction pré chargé en db
print(json.encode(factions, {indent = true}))ESX.DoesFactionExist
-- exemple :
local exist = ESX.DoesFactionExist('vagos', 0)
print(exist) -- true si la faction vagos et le grade 0 existe, false si elle n'existe pas