[Mudlet]Z99框架之Swap

关于Swap的用法V0.1

Swap有两种模式

模式A:主动模式

即找人/找东西模式。用户自行设置的触发器找到你的目标之后,可以选择两种处理

  • swap.stop = ture, swap.gohome = false
    找到目标之后在当地停止
  • swap.stop = true, swap.gohome = true
    找到目标之后返回原点,swap.path会记录到目标的路径

模式B:反射模式

反射模式只需要设置一个变量:swap.pause = true

Swap在反射模式运行下,在进入“新”房间后会暂停,等待用户完成自己的业务逻辑。完成之后用户需要呼叫swap.countinue(),swap便会继续行走

模式A和模式B并不互斥,可以同时开启。pause以后,再swap.stop = true,接着呼叫swap.countinue()就会完成swap

Swap的相关设置:

  1. swap.start(层数,每一步延迟)
    层数即为离开原点最多走多远,不包括原点
    每一步延迟建议不要小于0.1,以控制服务器负担
  2. swap.badroom = ture 表示当前房间为终点房间,无论设定的层数为多少,在当前房间就返回,不再走入该房间的其他出口。相应的触发器是“危险房间”。该功能可以用于特殊限定的巡逻路线,实现非对称swap,比如在某个方向上最远走到某房间就停止
  3. “堵门”触发器需要完善。再你使用swap编写相应的业务逻辑时,要去现场走一遍,取得所有堵门提示
  4. 开门,杀人等等,可以通过反射模式实现
forn
forn 说:
2020-05-01 13:27

不错

添加评论

您可以通过填写以下表单发表评论,可以使用markdown格式。网页和电子邮件地址将转换为可点击链接。 评论将被审核。