cying
发表于 2010-11-2 21:56:47
其实我的目的是想做几个通用function用alias调用,类似于zmud中的几个常用命令(#wa #if #t+等等)尽量简化脚本文件,但是我不知道格式应该是什么样的
比如
用alias wa调用function wa
function wa()
DoAfterSpecial (t1, "t2", 10)
end
t1 t2是时间和命令的变量
这样我随时可以用 (wa 变量1 变量2) 而不用每一次延时操作都要写一个function了
ddid
发表于 2010-11-2 21:57:35
原帖由 cying 于 2010-11-2 21:36 发表 http://pkuxkx.com/forum/images/common/back.gif
明白了,谢谢,如果我想设定一个alias 调用 DoAfterSpecial (8, "quxuexi", 10) 但是我想要把时间8 和执行命令 quxuexi作为变量代码应该如何写
可以达到#wa x000;xxxx的效果,就是一个带参数的alias
函数的形参和实参如何传递?
这个 …… 还是看Programming Lua吧。
ddid
发表于 2010-11-2 21:59:04
原帖由 cying 于 2010-11-2 21:56 发表 http://pkuxkx.com/forum/images/common/back.gif
其实我的目的是想做几个通用function用alias调用,类似于zmud中的几个常用命令(#wa #if #t+等等)尽量简化脚本文件,但是我不知道格式应该是什么样的
比如
用alias wa调用function wa
function wa()
DoAfter ...
记得如果有多个wait,DoAfter()中的时间需要累加。
ddid
发表于 2010-11-2 22:01:52
原帖由 cying 于 2010-11-2 21:40 发表 http://pkuxkx.com/forum/images/common/back.gif
我看的不是很明白,我觉得脚本 和 mush中的变量是各自独立的,我是想在命令中直接调用mush中的变量,比如我做一个学习的alias
不知能不能直接在命令行中给mush中的变量赋值,达到方便操作的目的
还是形参和实参的问题。
function wa(time)
Doafter(time, "drink jiudai")
end --wa(time)以上只是个例子,不一定能达到你要的效果。
cying
发表于 2010-11-2 22:09:06
原帖由 ddid 于 2010-11-2 09:59 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
记得如果有多个wait,DoAfter()中的时间需要累加。
也就是说w;w;#wa 1000;s;s;#wa 1000;e;e
如果在同一个function中需要写成w;w DoAfter 1;s;s;DoAfter 2 ;e;e?
ddid
发表于 2010-11-2 22:13:26
原帖由 cying 于 2010-11-2 22:09 发表 http://pkuxkx.com/forum/images/common/back.gif
也就是说w;w;#wa 1000;s;s;#wa 1000;e;e
如果在同一个function中需要写成w;w DoAfter 1;s;s;DoAfter 2 ;e;e?
理解正确,不过DoAfter()好像不是你这么用的 ……
[ 本帖最后由 ddid 于 2010-11-2 10:17 PM 编辑 ]
cying
发表于 2010-11-2 22:23:51
原帖由 ddid 于 2010-11-2 10:13 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
理解正确,不过DoAfter()好像不是你这么用的 ……
hehe
我是领会精神
应该是类似
Send(xxxxxxxxx)
DoAfter(1,xxxxxx)
DoAfter(2,xxxxxxx)
吧
ddid
发表于 2010-11-2 22:25:14
呵呵,不错!
cying
发表于 2010-11-2 23:19:35
原帖由 <i>ddid</i> 于 2010-11-2 10:01 PM 发表 <a href="http://pkuxkx.com/forum/redirect.php?goto=findpost&pid=198606&ptid=16890"
还是形参和实参的问题。<br />
<function wa(time)<br />
Doafter(time, "drink jiudai"<img src="images/smilies/default/wink.gif" smilieid="4" border="0" alt="" /><br />
end --wa(time)以上只是个例子,不一定能达到你要的效果。 <br />
我发现一个解决问题的途径
别名 tt * *
发送 DoAfterSpecial (%1, "%2", 10)
发送给命令解析器
输入 tt 1 hehe经测试达到预期效果
[ 本帖最后由 cying 于 2010-11-2 11:24 PM 编辑 ]
ddid
发表于 2010-11-2 23:27:08
yct23