FiveM/server manual/migrating from citmp

Материал из Pawno Info Wikipedia

Переход с CitizenMP.Server

Загрузка скриптов

Wiki note.png

Примечание

require больше не существует, любые скрипты / библиотеки должны быть загружены с помощью server_script директивы в манифесте ресурса.

Пример использования:

server_script "my_script.lua" -- загрузить скрипт
server_script "my_lib.net.dll" -- загрузить определенную сборку в домен приложения .net
server_script "@resource_name/script.lua" -- загрузить скрипт с другого ресурса

Чтобы загрузить файлы во время выполнения, вы можете использовать LOAD_RESOURCE_FILE(LoadResourceFile("resource_name", "file_name")), и, например, если это файл Lua, вы можете использовать

load(...)

Чтобы загрузить код Lua, как в следующем примере:

function loadLuaFile(resource, file)
    return load(LoadResourceFile(resource, file), file)()
end

Разделение строк

Wiki note.png

Примечание

str:Split больше не существует, вы должны использовать для этого соответствующие функции Lua.

Для обычно копируемой stringsplit функции это будет:

function stringsplit(inputstr, sep)
    if sep == nil then
        sep = "%s"
    end
    local t={} ; i=1
    for str in string.gmatch(inputstr, "([^"..sep.."]+)") do
        t[i] = str
        i = i + 1
    end
    return t
end

Побитовые операции

Lua 5.3 устарел bit32, и среда выполнения CfxLua не поддерживает его. Битовые операции теперь работают с использованием обычных операторов ( &, |, ...) , как и в большинстве других языков программирования.

CLR

NeoLua больше не используется, поэтому clr пространство имен больше не существует. Если вам нужно запустить код C #, используйте обычную среду выполнения .NET и экспорт сервера.

TempIDs

Если Вы выполнили какие-либо конкретные побитовые операции, предполагая, что во playerConnecting время source значения больше 0x10000, это больше не нужно для использования функций во время playerConnecting.