FFI + getAllVehicles (table overflow)

Статус
В этой теме нельзя размещать новые ответы.

_razor

t.me/sssecretway | ТГК: t.me/razor_code
Автор темы
Всефорумный модератор
1,948
3,211
Версия MoonLoader
.026-beta
На MoonLoader 0.26 вылетает ошибка "table overflow" при использовании FFI и getAllVehicles


Lua:
local vehicles = getAllVehicles()
for k, v in pairs(vehicles) do
    local carPtr = getCarPointer(v)
    if carPtr ~= nil then
        ffi.cast("void (__thiscall*)(int)", 0x6DD6F0)(carPtr)
    end
end

Очистка таблицы не помогает, запуск сборщика мусора тоже. Есть решение?

UPDATE: при удалении строчки ffi.cast все становится окей, но мне она нужна.
 
Решение
На MoonLoader 0.26 вылетает ошибка "table overflow" при использовании FFI и getAllVehicles


Lua:
local vehicles = getAllVehicles()
for k, v in pairs(vehicles) do
    local carPtr = getCarPointer(v)
    if carPtr ~= nil then
        ffi.cast("void (__thiscall*)(int)", 0x6DD6F0)(carPtr)
    end
end

Очистка таблицы не помогает, запуск сборщика мусора тоже. Есть решение?

UPDATE: при удалении строчки ffi.cast все становится окей, но мне она нужна.
?
Lua:
local ffi = require("ffi")

local CVehicle__DoSunGlare = ffi.cast("void (__thiscall*)(unsigned int)",
                                      0x6DD6F0)

function main()
    while true do
        wait(0)

        local vehicles = getAllVehicles()
        for key, value in...

Musaigen

abobusnik
Проверенный
1,607
1,365
На MoonLoader 0.26 вылетает ошибка "table overflow" при использовании FFI и getAllVehicles


Lua:
local vehicles = getAllVehicles()
for k, v in pairs(vehicles) do
    local carPtr = getCarPointer(v)
    if carPtr ~= nil then
        ffi.cast("void (__thiscall*)(int)", 0x6DD6F0)(carPtr)
    end
end

Очистка таблицы не помогает, запуск сборщика мусора тоже. Есть решение?

UPDATE: при удалении строчки ffi.cast все становится окей, но мне она нужна.
?
Lua:
local ffi = require("ffi")

local CVehicle__DoSunGlare = ffi.cast("void (__thiscall*)(unsigned int)",
                                      0x6DD6F0)

function main()
    while true do
        wait(0)

        local vehicles = getAllVehicles()
        for key, value in pairs(vehicles) do
            local ptr = getCarPointer(value)
            if ptr then
                CVehicle__DoSunGlare(ptr)
            end
        end
    end
end
 
  • Нравится
Реакции: _razor
Статус
В этой теме нельзя размещать новые ответы.