Convars
Конварс
Convars может быть очень мощным для определения конфигурационных переменных на сервере. Convar — это в основном конфигурационная переменная, которую вы можете установить и получить из любого ресурса. Вам не нужно использовать ресурс для получения или задания этих значений, вы также можете использовать команды в консоли (сервера) или через клиент RCON.
Есть несколько различных типов конваров, мы рассмотрим их все на этой странице.
Стандартные конвары
Наиболее распространенным из них является просто «стандартный» тип конвара.
Использование команд
Вы можете установить такой convar, выполнив следующую команду:
set convar_name convar_value
Если вы хотите задать значение строки, содержащей пробелы, вы можете заключить аргумент convar_value
в кавычки, например:
set convar_name "This is a convar value that contains spaces!"
Чтобы получить значение, просто введите имя convar в консоль, затем значение будет напечатано на консоли и будет выглядеть примерно так:
cfx> convar_name
"convar_name" is "This is a convar value that contains spaces!"
default: ""
type: string
Если convar еще не настроен, при вводе в консоль будет возвращено следующее сообщение:convar_name
No such command convar_name.
Использование ресурсов
Вы также можете устанавливать и получать convars с помощью собственных компонентов CFX API Set.
Чтобы задать базовое значение convar, вы можете либо выполнить команду из раздела выше в качестве аргумента, для этого потребуется, чтобы ресурс имел разрешенный ace (разрешение).ExecuteCommand()command.set
Кроме того, можно использовать собственные компоненты CFX API Set для задания и получения значений convars. Чтобы задать значение, используйте следующую функцию, в этом примере используется Lua, но она будет работать так же в ресурсах JS или C#:
SetConvar("convar_name", "This is a convar value that contains spaces!")
Чтобы получить значение convar после его установки, используйте следующую функцию:
local convarValue = GetConvar("convar_name", "Default convar value.")
Как вы, возможно, уже заметили, вам нужно будет указать значение по умолчанию. Это связано с тем, что если convar еще не задан, указанное значение по умолчанию будет возвращено значением GetConvar.
Если вы уверены, что convar будет содержать только целое значение, вы также можете использовать аналогичным образом функцию, упомянутую выше. Второй параметр также является возвращаемым значением по умолчанию.GetConvarInt("convar_name", 0)GetConvar()
Обратите внимание, что стандартные convars можно использовать только в серверных скриптах. Они не могут быть получены или установлены из клиентского скрипта.
Сервер реплицированных конваров
Если вы хотите, чтобы ваши convars синхронизировались между серверными и клиентскими сценариями, вам нужно будет реплицировать сервер convar. Это означает, что convar будет доступен на стороне клиента для получения значения, но вы сможете изменить значение convar только со стороны сервера.
Использование команд
Подобно стандартным convars, можно сделать сервер реплицированными convars с помощью следующей команды:
setr convar_name convar_value
Использование ресурсов
Используйте следующую функцию, чтобы задать реплицированный convar сервера в серверном скрипте:
SetConvarReplicated("convar_name", "convar value")
Чтобы получить реплицированный сервер convar из серверного сценария или клиентского скрипта, используйте ту же функцию, которая использовалась в предыдущем примере:
local convarValue = GetConvar("convar_name", "Default convar value.")
Информация о сервере
Эти конвары будут действовать как «стандартные» конвары, однако их имя и значение будут отображаться на странице сведений о подключении к серверу, в списке серверов и будут доступны в информационном файле сервера.http://<server_ip>:<server_port>/info.json
Использование команд
Чтобы задать convar сведений о сервере, используйте следующую команду.
sets convar_name "Convar value."
Типичным примером для этого может быть конвар информации о сервере с именем «Discord», и его значение установлено на сервер discord, связанный с вашим сервером FiveM.
sets Discord "Your discord link here"
Это будет выглядеть примерно так на странице сведений о сервере:
Использование ресурсов
SetConvarServerInfo("convar_name", "Convar Value")
Список функций конвара
Ниже приведен список всех функций набора API CFX, которые можно использовать для получения или задания convars.