lua 脚本怎么传递参数
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了lua 脚本怎么传递参数相关的知识,希望对你有一定的参考价值。
脚本一:(随机得到1--5之间的一个数)
x002117_g_scriptId = 002117
math.randomseed(os.time())--os.time()
for i=1,5 do
nRet_rw = math.random(6)
end
脚本二:(为一个函数)
function x002103_OnEventRequest( sceneId, selfId, targetId, eventId )
if nRet_rw==1 then
x002103_MY_ZH=002091
elseif nRet_rw==2 then
x002103_MY_ZH=002101
elseif nRet_rw==3 then
x002103_MY_ZH=002106
elseif nRet_rw==4 then
x002103_MY_ZH=002107
elseif nRet_rw==5 then
x002103_MY_ZH=002108
elseif nRet_rw==6 then
x002103_MY_ZH=002109
end
end
请问:如何把脚本一中获取的nRet_rw的值传递给脚本二中。请以代码的形式说明。谢谢!
for i=1,5 do
nRet_rw = math.random(6)
x002103_OnEventRequest( sceneId, selfId, targetId, eventId,nRet_rw )
end
或者把nRet_rw作为全局变量。 参考技术B static int ABC(lua_State *L)
int n =lua_gettop(L);
double sum =0;
int i;
for (i=1;i<n;i++)
sum+=lua_tonumber(L,i);
lua_pushnumber(L,sum/n);
lua_pushnumber(L,sum);
return 2;
lua_register(L, "ABC", ABC);
怎样给lua脚本传递参数和脚本怎样接受这些参数
参考技术A 两种方式:1、脚本内定义全局函数(非local的), 然后在别的脚本require这个脚本后直接通过名称和参数进行调用(类似c函数的调用)
2、脚本内定义一个message_handler的入口函数(类似main函数),这个入口函数接受一个msg和一系列的params。然后别的脚本或函数通过postmessage或者sendmessage函数。向指定脚本传递参数msg和params,进而进行处理本回答被提问者和网友采纳
以上是关于lua 脚本怎么传递参数的主要内容,如果未能解决你的问题,请参考以下文章
SWIG:Lua - 将 c++ 实例作为 lua 函数参数传递