北大侠客行MUD论坛

 找回密码
 注册
搜索
热搜: 新手 wiki 升级
12
返回列表 发新帖
楼主: jarlyyn

杰哥乱弹琴之发送队列管理

[复制链接]
 楼主| 发表于 2024-5-28 16:04:07 | 显示全部楼层
最后来一个简单遍历队列的demo
我们先定一个扬州逛街路径
  1. Hclua.HC.queue([[
  2. #t+ walk
  3. #print 开始遍历,请点击next按钮
  4. #pause
  5. w
  6. s
  7. s
  8. s
  9. s
  10. n
  11. n
  12. n
  13. n
  14. #print 等待3秒
  15. #wait 3000
  16. w
  17. e
  18. n
  19. n
  20. s
  21. s
  22. e
  23. #resume
  24. #print 遍历结束
  25. #t- walk
  26. ]])
复制代码



然后做一个下一步的按钮/别名
  1. print('剩余'..#(Hclua.HC.sender:queue(true))..'步')
  2. Hclua.HC.sender:resumeNext()
复制代码





再做一个重发的指令

  1. Hclua.HC.sender:wait(1):resend()
复制代码





就能实现一个简单的手动点next按钮/输入#next的遍历了

mush还可以直接用如下lua
  1. Hclua.HC.eventBus:bindEvent('core.metronome.sent',function (m)
  2.   InfoClear()
  3.   Info(table.concat(m:queue(true),';'))
  4. end)
复制代码
实现在信息栏打印队列剩余内容的功能



队列跑起来如图






很明显。

如果你把整个扬州的路径加进去,再加上判断npc的判断,你就能实现一个简单的自动遍历了。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2024-5-28 16:06:05 | 显示全部楼层
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-11 05:41 AM , Processed in 0.010149 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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