Project1

标题: 在RMVA中使用Lua [打印本页]

作者: 域外    时间: 2025-2-28 19:50
标题: 在RMVA中使用Lua
本帖最后由 域外 于 2025-2-28 19:52 编辑

因为论坛回档的原因重发_(:3

一个权当抛砖引玉的在RMVA中使用Ruby以外语言(Lua)的例子。性能一般,不太适合高刷新情景,不过当当玩具用还是可以的。

作者: 我 以及 @gqxastg
文档详见Github:https://github.com/Rinkaa/lua-rmva

使用范例:
  1. begin
  2.   ## 创建Lua实例
  3.   $lua = Lua.new if $lua == nil
  4.   lua = $lua
  5.   p "Lua: #{lua}"
  6.   ## 从Lua传递数据到Ruby
  7.   p lua.eval("return 'Hello World!', 123, 4.56, true, nil")
  8.   p lua.eval("return {'A', 'B', 'C'}, function() return 'DEF' end")
  9.   ## 从Ruby传递数据到Lua再返回
  10.   p lua.eval("return ...", "Hello World!", 123, 4.56, true, nil)
  11.   p lua.eval("local num1,num2,str = ...; return num1==2, num2==3.14,
  12. str=='Hello'", 2, 3.14, 'Hello')
  13.   ## 获得LuaJIT的版本信息
  14.   p lua.eval("if type(jit) == 'table' then return jit.version end")
  15.   ## 故意在Lua中引发错误,由Ruby接收
  16.   # p lua.eval("error('This is an error'))",
  17. rescue
  18.   p($!.message, $!.backtrace)
  19. end
复制代码


下载文件为脚本正文及脚本范例工程(一个平台跳跃场景,但帧率not good)

lua-rmva.rb (40.77 KB, 下载次数: 0)

Lua-Rmva-Demo.zip (1.9 MB, 下载次数: 2)


作者: fux2    时间: 2025-2-28 22:22
这下终于实现了在脚本里面执行脚本




欢迎光临 Project1 (https://rpg.blue/) Powered by Discuz! X3.1