lua 脚本如何实现循环一套动作至规定时间后关闭程序然后重新打开。
例如我要执行一套动作,找到界面1.2.3.4.5,找到符合条件的界面颜色就点击指定坐标。把这套动作用whiletruego写成了函数caozuo(),然后这套动作执行到3...
例如我要执行一套动作,找到界面1.2.3.4.5,找到符合条件的界面颜色就点击指定坐标。把这套动作用while true go 写成了函数 caozuo(),然后这套动作执行到30分钟之后就执行一次appKill(''),执行完appKill('')之后等待几秒后执行一次appRun(''),然后再回到caozuo()执行30分钟这样循环,要怎么写呢?试了很久都是只要执行了caozuo()之后就不会执行关闭和运行程序。单单执行关闭和运行这两个函数就没问题,求大神指点一下。说的有点乱,希望大神帮忙看一下。谢谢了
展开
展开全部
一直专注于lua问题回答已经好多年了
已经有无数人提出了lua定时的问题 但我也一直不回答
其实更希望的是提出问题的朋友门能先对lua有一个比较深的理解后再来提问题
类似功能不是无法实现 但是实现原理你们也最好去弄清楚一下
首先lua是一门很小的脚本语言 因为很小(大概就200K) 所以大部分功能都没有 只提供了最基本的库和语法解释等功能
所以 定时相关的函数 肯定就不在lua的范畴里了
那这样得怎么实现定时的功能呢? lua有很强的扩展性 可以在它的宿主语言(一般是C/C++)上实现好相关的lua接口 然后供脚本调用
所以 原理就是在你的宿主语言上实现好一个CFUNCTION 然后开放给lua来实现
但是一般开发者 只负责写脚本这边,而对宿主语言完全没有接触,甚至连lua的调用过程都不理解 所以相关问题也是无法解决的 因此 能不能实现定时的功能 完全依赖于你对宿主语言的控制程度
已经有无数人提出了lua定时的问题 但我也一直不回答
其实更希望的是提出问题的朋友门能先对lua有一个比较深的理解后再来提问题
类似功能不是无法实现 但是实现原理你们也最好去弄清楚一下
首先lua是一门很小的脚本语言 因为很小(大概就200K) 所以大部分功能都没有 只提供了最基本的库和语法解释等功能
所以 定时相关的函数 肯定就不在lua的范畴里了
那这样得怎么实现定时的功能呢? lua有很强的扩展性 可以在它的宿主语言(一般是C/C++)上实现好相关的lua接口 然后供脚本调用
所以 原理就是在你的宿主语言上实现好一个CFUNCTION 然后开放给lua来实现
但是一般开发者 只负责写脚本这边,而对宿主语言完全没有接触,甚至连lua的调用过程都不理解 所以相关问题也是无法解决的 因此 能不能实现定时的功能 完全依赖于你对宿主语言的控制程度
展开全部
如下代码 :
ret = NPCDialog( "Hello bitch" )
if ret == OK then print("OK") end
对于策划而言,NPCDialog应该是阻塞的,除家操作此对话框,点击OK或者关闭,不然该函数不会返回。而对于宿主程序C++而言,如何实现这个函数呢:
static int do_npc_dialog( lua_State *L )
{
const char *content = lua_tostring( L, -1 );
lua_pushnumber( ret );
return 1;
}
ret = NPCDialog( "Hello bitch" )
if ret == OK then print("OK") end
对于策划而言,NPCDialog应该是阻塞的,除家操作此对话框,点击OK或者关闭,不然该函数不会返回。而对于宿主程序C++而言,如何实现这个函数呢:
static int do_npc_dialog( lua_State *L )
{
const char *content = lua_tostring( L, -1 );
lua_pushnumber( ret );
return 1;
}
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询