Описание: Насилуем CLEO второй раз за сутки. Функция регистрирует cleo опкод
Код:
Пример использования:
Код:
Lua:
local ffi = require("ffi")
ffi.cdef[[
int __stdcall CLEO_RegisterOpcode(int a1, int a2);
]]
function registerCleoOpcode(opcode, callback)
local cleo = ffi.load("CLEO.asi")
if cleo then
jit.off(callback)
local pCallback = tonumber(ffi.cast("uintptr_t", ffi.cast("int(__stdcall*)(void *CScriptThread)", callback)))
return cleo.CLEO_RegisterOpcode(opcode, pCallback)
end
end
Lua:
local ffi = require("ffi")
ffi.cdef[[
int __stdcall CLEO_RegisterOpcode(int a1, int a2);
]]
function main()
while not isSampAvailable() do wait(0) end
print(registerCleoOpcode(0x551B1, function()
print("hello22")
end))
wait(-1)
end
function registerCleoOpcode(opcode, callback)
local cleo = ffi.load("CLEO.asi")
jit.off(callback)
local pCallback = tonumber(ffi.cast("uintptr_t", ffi.cast("int(__stdcall*)(void *CScriptThread)", callback)))
if cleo then return cleo.CLEO_RegisterOpcode(opcode, pCallback) end
end
Последнее редактирование: