每个脚本都必须有一个fxmanifest.lua(以前叫 __resource.lua ),我们可以将这个文件看做是整个脚本的引导文件,服务端由这个引导文件才会得知这个脚本的信息和相关配置。接下来我将会到代码当中去学习每一项配置的意思和用法。fx_version 'cerulean' --官方固定值,当前版本值为cerulean
games { 'rdr3', 'gta5' } --API集,gta5 代表 FiveM,rdr3 代表 RedM.
author 'John Doe <j.doe@example.com>' --作者,写你自己就行了
description 'Example resource' --脚本描述,这是什么脚本什么功能,自己定义
version '1.0.0' --脚本版本,自己定义无所谓
--那些文件将会被运行
client_scripts { --客户端的脚本
'client.lua',
'client_two.lua'
}
server_script 'server.lua' --服务端的脚本
-- 也可以使用额外的数据
my_data 'one' { two = 42 }
my_data 'three' { four = 69 }
-- 由于Lua语法的原因,以下功能也适用:
my_data('nine')({ninety = "nein"})
-- 元数据键可以是任意的
pizza_topping 'pineapple'
exports { --引用,可以被调用
'setWidget',
'getWidget'
}
--NUI 的面板可以被写成以下几种形式
ui_page 'html/index.html'
file 'html/index.html'
ui_page 'https://ui-frontend.cfx.example.com/b20210501/index.html' --也支持url
this_is_a_map 'yes' -- 用这行定义一个脚本是不是地图
server_only 'yes' -- 标定这个脚本是仅服务器运行的脚本
--设置游戏加载时屏幕的HTML文件。
loadscreen 'html/loadscreen.html'
file 'html/loadscreen.html'
--要求在当前资源之前加载指定的资源。
dependency 'myresource-base'
dependencies {
'myresource-base',
'utility-resource'
}
--dependencies项字段还可用于指定运行资源的要求,例如最低服务器版本、服务器策略值或游戏构建。这些是使用以下语法指定的:
dependencies {
'/server:4500', -- 至少需要服务器版本4500
'/policy:subdir_file_mapping', -- 要求服务器密钥具有“subdir_file_mapping”权限
'/onesync', -- 需要启用状态感知
'/gameBuild:h4', -- 至少需要游戏版本2189
'/native:0xE27C97A0', -- 需要支持原生0xE27C97A0
}
--启用Lua 5.4。关于Lua 5.4的更多信息,请访问http://www.lua.org/manual/5.4/manual.html
lua54 'yes'
--将当前资源标记为指定资源的替换。这意味着,如果另一个资源需要它,它将启动,并且如果启动,它将充当所述资源。
provide 'mysql-async'
--注意:加载资源或者脚本的顺序需要一级一级加载,否则可能报错导致无法运行。
|