北大侠客行MUD论坛

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

关于zmud 7.21map的使用问题

[复制链接]
发表于 2010-9-9 18:33:19 | 显示全部楼层 |阅读模式
我按照maper的教程,用zmud 7.21画了一个地图。
我现在就知道#walk roomid可以走到指定房间。但是这个只能按照房间编号走动。
请问怎么实现#walk 中央广场?或者#walk 扬州,中央广场之类的?

我现在知道#find可以确定自己位置,然后要去目标位置怎么弄?
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2010-9-9 22:30:22 | 显示全部楼层
给个思路吧
可以做个对输入命令的触发#walk (.*),抓到要去的房间名称,然后检索地图,如果有唯一id,就#walk id,如果没有或重复的,就返回错误信息。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2010-9-10 09:48:17 | 显示全部楼层
原帖由 dreamnb 于 2010-9-9 06:33 PM 发表
我按照maper的教程,用zmud 7.21画了一个地图。
我现在就知道#walk roomid可以走到指定房间。但是这个只能按照房间编号走动。
请问怎么实现#walk 中央广场?或者#walk 扬州,中央广场之类的?

我现在知道#find可 ...


主要是分为两部分:
第一部分:定位
如何确认您所在位置在地图的准确位置,比如:
look
会得到当前房间的@name,@desc,@exit
然后去地图搜索,函数为target=%mapquery([name]='@name' and [desc] like '% @desc%' and [desc] like '% @exit%' )
注:此处主要是用Mapper童鞋的机器人画地图的时候把exit信息录入到desc信息里面,方便定位


第二部分走路
如果得到唯一target(即房间id),使用#slow %walk(@target)
主要慢速走路可以随时停下来杀怪,还可避免输入命令太多。其实慢速行走也不慢...

大方向就是这样了,剩下的就是细化处理了。
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
 楼主| 发表于 2010-9-10 11:19:13 | 显示全部楼层
感谢,感谢
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2011-9-4 19:12:12 | 显示全部楼层
原帖由 oolong 于 2010-9-10 09:48 AM 发表


主要是分为两部分:
第一部分:定位
如何确认您所在位置在地图的准确位置,比如:
look
会得到当前房间的@name,@desc,@exit
然后去地图搜索,函数为target=%mapquery([name]='@name' and [desc] like '% @ ...


乌龙茶是高手啊!
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2011-9-5 16:11:47 | 显示全部楼层
如果事先画地图的时候 已经划分好区域应该就省事不少了
比如 派你去 扬州(%x)
事先划分好区域扬州为1
zone=1
roomname=%1
#var roomlist %mapquery( name='@roomname')
#var roomsl %numitems( @roomlist)
#if @roomsl=1 {#var roomnum @roomlist} {
  #var roomlist %mapquery( name='@roomname' and zoneid=%zonenum( @zone))
  #var roomlist %sort( @roomlist, 1)
  #var roomsl %numitems( @roomlist)
  #var roomnum %item( @roomlist, @num)
  }
#if @roomsl=0 {fq} {
  #var ls %numitems( %pathexpand( %walk( @roomnum)))
  #2 h
  #t+ ls
  gg @roomnum
  }
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2011-9-6 10:46:11 | 显示全部楼层
7.21的地图功能算是很强大了
好象地图功能还自带一个数据列表?
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2011-9-6 11:43:28 | 显示全部楼层
原帖由 bxjg 于 2011-9-6 10:46 AM 发表
7.21的地图功能算是很强大了
好象地图功能还自带一个数据列表?


确实很强大,自带一个数据库!
地图文件,就是在数据库里边!
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
发表于 2011-9-6 11:44:31 | 显示全部楼层
原帖由 greney 于 2011-9-5 04:11 PM 发表
如果事先画地图的时候 已经划分好区域应该就省事不少了
比如 派你去 扬州(%x)
事先划分好区域扬州为1
zone=1
roomname=%1
#var roomlist %mapquery( name='@roomname')
#var roomsl %numitems( @roomlist)
#i ...



greney是牛人啊,这段代码,解决了我不少疑惑,谢谢
北大侠客行Mud(pkuxkx.net),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-17 05:49 AM , Processed in 0.010057 second(s), 15 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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