cheat-engine/Cheat Engine/LuaGraphicControl.pas
2019-12-19 17:49:30 +01:00

49 lines
1.2 KiB
ObjectPascal
Executable file

unit LuaGraphicControl;
{$mode delphi}
interface
uses
Classes, SysUtils, Controls, lua, lualib, lauxlib;
procedure graphiccontrol_addMetaData(L: PLua_state; metatable: integer; userdata: integer );
procedure initializeGraphicControl;
implementation
uses luahandler, luaclass, LuaControl;
function graphicControl_getCanvas(L: PLua_State): integer; cdecl;
var
parameters: integer;
c: TGraphicControl;
i: integer;
begin
c:=luaclass_getClassObject(L);
if c.Canvas.handle=0 then
i:=c.Canvas.Pixels[0,0];
luaclass_newClass(L, c.Canvas);
result:=1;
end;
procedure graphiccontrol_addMetaData(L: PLua_state; metatable: integer; userdata: integer );
begin
control_addMetaData(L, metatable, userdata);
luaclass_addClassFunctionToTable(L, metatable, userdata, 'getCanvas', graphicControl_getCanvas);
luaclass_addPropertyToTable(L, metatable, userdata, 'Canvas', graphicControl_getCanvas, nil);
end;
procedure initializeGraphicControl;
begin
lua_register(LuaVM, 'graphicControl_getCanvas', graphicControl_getCanvas);
lua_register(LuaVM, 'graphiccontrol_getCanvas', graphicControl_getCanvas);
end;
initialization
luaclass_register(TGraphicControl, graphiccontrol_addMetaData );
end.