mirror of
https://github.com/cheat-engine/cheat-engine
synced 2026-08-15 02:26:08 -04:00
88 lines
2.2 KiB
ObjectPascal
Executable file
88 lines
2.2 KiB
ObjectPascal
Executable file
unit LuaHeaderSections;
|
|
|
|
{$mode delphi}
|
|
|
|
interface
|
|
|
|
uses
|
|
Classes, SysUtils, lua, lualib, lauxlib, LuaHandler, cefuncproc, commonTypeDefs;
|
|
|
|
implementation
|
|
|
|
uses luaclass, LuaCollection, comctrls;
|
|
|
|
|
|
function headersections_add(L: PLua_State): integer; cdecl;
|
|
begin
|
|
luaclass_newClass(L, THeaderSections(luaclass_getClassObject(L)).add);
|
|
result:=1;
|
|
end;
|
|
|
|
function headersections_insert(L: PLua_State): integer; cdecl;
|
|
begin
|
|
if lua_gettop(L)>=1 then
|
|
begin
|
|
luaclass_newClass(L, THeaderSections(luaclass_getClassObject(L)).insert(lua_tointeger(L,1)));
|
|
result:=1;
|
|
end
|
|
else
|
|
result:=0;
|
|
end;
|
|
|
|
function headersections_delete(L: PLua_State): integer; cdecl;
|
|
begin
|
|
result:=0;
|
|
if lua_gettop(L)>=1 then
|
|
THeaderSections(luaclass_getClassObject(L)).delete(lua_tointeger(L,1));
|
|
end;
|
|
|
|
function headersections_getItem(L: PLua_State): integer; cdecl;
|
|
var
|
|
hs: THeaderSections;
|
|
index: integer;
|
|
begin
|
|
result:=0;
|
|
hs:=luaclass_getClassObject(L);
|
|
if lua_gettop(L)>=1 then
|
|
begin
|
|
index:=lua_tointeger(L,1);
|
|
luaclass_newClass(L, hs.Items[index]);
|
|
result:=1;
|
|
end;
|
|
end;
|
|
|
|
function headersections_setItem(L: PLua_State): integer; cdecl;
|
|
var
|
|
hs: THeaderSections;
|
|
s: THeaderSection;
|
|
index: integer;
|
|
begin
|
|
result:=0;
|
|
hs:=luaclass_getClassObject(L);
|
|
if lua_gettop(L)>=2 then
|
|
begin
|
|
index:=lua_tointeger(L,1);
|
|
s:=lua_ToCEUserData(L,2);
|
|
|
|
hs.Items[index]:=s;
|
|
end;
|
|
end;
|
|
|
|
procedure headersections_addMetaData(L: PLua_state; metatable: integer; userdata: integer );
|
|
begin
|
|
collection_addMetaData(L, metatable, userdata);
|
|
luaclass_addClassFunctionToTable(L, metatable, userdata, 'add', headersections_add);
|
|
luaclass_addClassFunctionToTable(L, metatable, userdata, 'insert', headersections_insert);
|
|
luaclass_addClassFunctionToTable(L, metatable, userdata, 'delete', headersections_delete);
|
|
|
|
|
|
luaclass_addArrayPropertyToTable(L, metatable, userdata, 'Items', headersections_getItem, headersections_setItem);
|
|
luaclass_setDefaultArrayProperty(L, metatable, userdata, headersections_getItem, headersections_setItem );
|
|
end;
|
|
|
|
|
|
initialization
|
|
luaclass_register(THeaderSections, headersections_addMetaData);
|
|
|
|
end.
|
|
|