北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
查看: 4979|回复: 12

一个简单的问题,关于#WA

[复制链接]
发表于 2009-8-15 09:09:25 | 显示全部楼层 |阅读模式
#var i 1;
#while (@i<10) {#wa 2000;#say @i;#add i 1}
按正常理解应该是每2秒say一个数字,单执行后等待2秒全部say出来了
怎么会这样?版本zmud462
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2009-8-15 09:47:07 | 显示全部楼层
版本问题,彻底对462死心了,转投721去也
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2009-8-15 10:18:52 | 显示全部楼层
while的缺陷,while里有#wa就不正常了
721估计也是这样吧
所以我都是用嵌套替代while,可以达到你的目的
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2009-8-15 11:06:56 | 显示全部楼层
用721试验可以
另一个问题请教楼上:
#wa 5000;#say ok;#wa 1等待了5秒显示而不是立即显示,为何?
不是说后一个会替代前一个吗?在462和721都如此,555打不开无法试验
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2009-8-15 11:09:10 | 显示全部楼层
替代那是你wa输进去了,前面在wa 5000中后面的wa 1还没开始执行,当然不行
你如果输入#wa 5000;#say ok然后马上#wa 1就可以
一起输的话,zmud的判断是前一个指令执行完毕后再执行下一个,相当于你#wa 5000,五秒过后后输入#say ok然后输入#wa 1的效果
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2009-8-15 11:18:59 | 显示全部楼层
462中可以
721里还是等待5秒
烦恼啊,有时候需要等待完毕执行下一个命令,有时候需要立即执行,这两者不知道能不能同时实现。
另佩服一下楼上二位,对zmud的理解已经深不可测了
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2009-8-15 12:13:42 | 显示全部楼层
要分2次输入#wa 5000;#say ok;#wa 1
先输入#wa 5000;#say ok
然后输入#wa 1
就替代了
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2009-8-15 12:17:37 | 显示全部楼层
这些其实说不上是zmud的优点还是缺点了
总之,熟悉了命令的脾气,然后利用它
本来#wa互相替代是一个缺点,也是可以拿来利用的,某些时候做机器人的时候很方便
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2009-8-15 12:40:43 | 显示全部楼层
拜读了楼上的巨作试着自己写机器人,发现问题很多,主要是还不熟悉,比如
快速行走时#if (%mod(@step,5)=0) {#wa @time;go} {go}
遍历搜索时#wa @longtime;go;   {这里*的出口是} {#wa 1}
就卡在这里,462快速行走命令#wa @time完一次性发出,遍历搜索正常;721快速行走正常,遍历搜索每次都等#wa @longtime完才执行下一个命令,异常烦躁啊
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2009-8-15 13:20:06 | 显示全部楼层
其实就是#wa命令在数次版本中都变化较大,如果你用555就2个都正常了,赫赫
另外2个版本想办法解决吧,addoil
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|北大侠客行MUD ( 京ICP备16065414号-1 )

GMT+8, 2024-11-27 10:26 PM , Processed in 0.016923 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表