Мы интегрировали функциональность в проект Jetlua, доступный по адресу https://github.com/tinybiggames/jetlua

Plua легкий и мощный? Это интегрирует сценарии Luajit в Delphi, что позволяет легко добавить слой сценариев в ваши приложения Delphi. Независимо от того, создаете ли вы динамическое программное обеспечение, добавляете поддержку MOD или просто ищете способ сделать ваши приложения более гибкими и настраиваемыми, PLUA делает это возможным благодаря простым, простым API.
Plua предлагает мост? Между Delphi и Luajit, предоставляя мощное решение для сценариев для расширения возможностей ваших проектов Delphi. С PLUA разработчики Delphi могут наслаждаться всеми преимуществами внедрения динамичного, быстрого и простого в использовании языка сценариев, как LUA, в то же время используя Luajit для высокой производительности? ️.
Эта библиотека предназначена для того, чтобы интегрировать LUA в приложения Delphi максимально плавно, сосредоточившись на удобстве использования, эффективности и минимальной кривой обучения? Все зависимости собираются непосредственно в исполняемый файл, устраняя необходимость в внешних DLL и упрощает и надежное развертывание ✅.
dbg() в своих сценариях LUA, чтобы начать интерактивную отладку.import для объединения сценариев, составьте их в один файл и, необязательно, храните их в качестве ресурса EXE для полностью автономного приложения.Этот раздел поможет вам запустить PLUA в вашей среде Delphi.
Клонировать или загрузить репозиторий PLUA.
Добавьте исходные файлы PLUA в свой проект Delphi.
? Загрузите последнюю версию PLUA.
Извлеките содержимое в свой каталог проекта.
➕ Добавьте папку PLUA src в свой путь библиотеки в Delphi.
В ваш проект включите PLUA в пункт uses . Чтобы использовать расширения, добавьте PLUA.Ext после PLUA в пункт « uses .
? Обратитесь к папке examples для подробных инструкций по использованию и демонстраций библиотеки PSFML в действии.
Вот и все! Теперь вы должны быть в состоянии начать сценарии с LUA в ваших проектах Delphi.
Вот несколько простых примеров, чтобы продемонстрировать, как интегрировать PLUA в ваш проект Delphi:
var
Lua: TLua;
begin
Lua := TLua.Create();
Lua.LoadString( ' print("Hello from Lua!") ' , False);
Lua.Run();
Lua.Free();
end ; procedure MyDelphiRoutine (ALua: ILuaContext);
begin
// Example routine that pushes a string result onto Lua stack
ALua.PushValue( ' Hello from Delphi! ' );
end ;
var
Lua: TLua;
begin
Lua := TLua.Create();
Lua.RegisterRoutine( ' DelphiRoutine ' , MyDelphiRoutine);
Lua.LoadString( ' DelphiRoutine() ' , False);
Lua.Run();
Lua.Free();
end ; var
Lua: TLua;
Result: TLuaValue;
begin
Lua := TLua.Create();
Lua.LoadString( ' function greet() return "Hello from Lua!" end ' );
Result := Lua.Call( ' greet ' , []);
ShowMessage(Result.AsString);
Lua.Free();
end ;Plua также поддерживает расширенные функции, такие как:
dbg() в код LUA, чтобы начать отладку, полезно для выявления проблем во время выполнения.import для объединения различных файлов сценариев в единый компиляционный блок, который полезен для сохранения и загрузки скомпилированных сценариев в качестве ресурсов.CompileToStream() , позволяя эффективно упаковать и распределение. PLUA API был разработан как мощный, так и прост в использовании. Ниже приведена быстрая ссылка на ключевые классы и методы:
Вклад в PLUA активно рекомендуется. Пожалуйста, не стесняйтесь отправлять проблемы, предложить новые функции или создавать запросы на притяжение, чтобы расширить возможности и надежность сценариста.
Plua распределяется под? Лицензия BSD-3-CLAUSE , разрешающая перераспределение и использование как в исходных, так и в двоичных формах, с или без изменения, в определенных условиях. Смотрите файл лицензии для получения более подробной информации.
Мы надеемся, что Plua поможет сделать ваши проекты Delphi более динамичными и гибкими. Счастливого кодирования! ?

Сделано с ❤ в Delphi