missqlf 发表于 2009-8-24 13:52:50

请教各位mush高手

mush机器人运行一小会总是会出现>>>
触发语句中断,机器人就停了,这个该怎么解决啊?

zgbl 发表于 2009-8-24 13:54:25

这个不是机器人是mud,mud一个指令的返回就会出现>
你在机器人板块搜“行首严格触发”,我开过这个帖子,有许多牛人讨论,包括mush

littlexi 发表于 2009-8-24 13:58:46

hzr

ddid 发表于 2009-8-24 14:01:54

最好举例说明,把你的Trigger发上来看看。

missqlf 发表于 2009-8-24 15:15:06

ddid帮看看就是这2个问题不太懂js

function job()
{
      var cmd,scmd=getVariable("scmd"),getcmd=getVariable("getcmd"),putcmd=getVariable("putcmd"),yuncmd=getVariable("yuncmd");
      if(getVariable("ok")=="1")
      {
                cmd="(eat liang) (out) e n w (drink) e (do 2 n) e n (ask zhu xi about question)"
                DoAfterSpeedWalk (0.5,cmd);
      }
      else
      {
                if(getcmd!="")      send(getcmd);
      send(scmd);
                if(putcmd!="")      send(putcmd);
                send(yuncmd);
      }
}
*******************************************
朱熹的机器
2个问题
1 mush中有相当于#wait 的命令么?
2js怎么加等待时间 ?
上面代码中 if(getcmd!="")      send(getcmd);
一段因为没有时间等待 所以总出问题 js怎么加等待时间 就是 符合if 的话也等待n秒在执行
send(getcmd);

[ 本帖最后由 missqlf 于 2009-8-24 03:20 PM 编辑 ]

zmeng 发表于 2009-8-24 15:28:13

难道是send("")的问题?

ddid 发表于 2009-8-24 15:52:10

MUSH使用Jscript做脚本语言的话,最好用Doafter、DoafterSpeedwalk实现时间间隔(用LUA可以多一种选择,但单纯模仿zmud的#wait,其实并不十分合适)

在js脚本里,还是最好用DoAfter()、DoAfterSpecial()、DoAfterSpeedwalk()加入时间间隔。

在你的脚本里,只需要把send()改成DoAfter()就可以了。

关于DoAfter()的具体说明,可以参考:
http://mc.chinaido.com/help.php?function=DoAfter

missqlf 发表于 2009-8-24 16:07:36

感谢 学习了

原帖由 ddid 于 2009-8-24 03:52 PM 发表 http://pkuxkx.com/forum/images/common/back.gif
MUSH使用Jscript做脚本语言的话,最好用Doafter、DoafterSpeedwalk实现时间间隔(用LUA可以多一种选择,但单纯模仿zmud的#wait,其实并不十分合适)

在js脚本里,还是最好用DoAfter()、DoAfterSpecial()、DoAfter ...

ddid 发表于 2009-8-24 16:10:54

呵呵

nothank
页: [1]
查看完整版本: 请教各位mush高手