FiveM的ESX框架
##
shared_scripts {
'locale.lua',
'locales/*.lua',
'config.lua',
'config.weapons.lua',
}
server_scripts {
'@oxmysql/lib/MySQL.lua',
'server/common.lua',
'server/classes/player.lua',
'server/classes/overrides/*.lua',
'server/functions.lua',
'server/onesync.lua',
'server/paycheck.lua',
'server/main.lua',
'server/commands.lua',
'common/modules/math.lua',
'common/modules/table.lua',
'common/functions.lua'
}
client_scripts {
'client/common.lua',
'client/functions.lua',
'client/wrapper.lua',
'client/main.lua',
'client/modules/death.lua',
'client/modules/scaleform.lua',
'client/modules/streaming.lua',
'common/modules/math.lua',
'common/modules/table.lua',
'common/functions.lua'
}
Server
locales.lua
建立指令_U(“ABC”)讀取’locales/*.lua’下的文本 Localse[Config.Locale][“ABC”]
config.lua
設定銀行賬戶貨幣類型以及其別稱 起始貨幣金額 設定UI是否顯示 設定發薪日間隔 設定是否可自動回血 設定給予系列指令的範圍
config.weapons.lua
設定武器名字 塗裝 和組件
server/common.lua
建立變量之類 .Players .Jobs .Items .Callback .Pickups .RegisteredCommands
server/functions.lua
大包圍,主要建立函數Get和Set針對common.lua內的項目,以及Commands
server/main.lua
建立Event等待onPlayerJoined被客戶端召喚時載入數據,loadESXPlayer建立.Players[source]數據,或新用戶註冊後loadESXPlayer 這些數據包括Jobs,Items,Items->Inventory,權限Group,某些搭配的events,客戶端離開時清空數據
server/onesync.lua
專門為onesync設計的helper函數
server/paycheck.lua
定期發薪水
common/*.lua
主要是lua的Helper函數
Client
client/common.lua / imports.lua
獲得框架共用變量
client/functions.lua
一些變量如玩家數據、設定UI、MENU、遊戲內函數的組合SNIPPETS,造成框架擁擠的感覺
client/main.lua
多數為events,載入玩家數據
client/wrapper.lua
NUI相關