北大侠客行MUD论坛

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

一种从当前房间指定范围内的深度遍历思路

[复制链接]
发表于 2012-4-24 17:36:33 | 显示全部楼层 |阅读模式
提供一个方法: 利用路径堆栈可以遍历当前房间开始的指定深度范围的所有房间.

forward_list:保存前进的方向堆栈
backward_list:保存返回的方向堆栈

过程:

从某个房间开始,push这个房间的所有出口到forward_list, 每次从forward_list里pop一个方向前进,同时,把返回的路径保存在backward_list里. 如此反复, 并判断深度n是否大于限定的最大深度.

另外, 在把一个房间所有出口push到forward_list前,先push一个room_search_ok的标志,用于在返回/单前进出口等情况时使用. 在从forward_list里pop出room_search_ok标志时, 从backward_list里pop出一个路径.

在达到遍历深度时, 需要从forward_list里pop出所有在第一个room_search_list前的路径.

大体思路就是这样了. 已经自行测试过了, 没问题. script就不放出来了. hehe

北大侠客行MUD,中国最好的MUD
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
 楼主| 发表于 2012-4-24 17:41:32 | 显示全部楼层
回复 2# yyahoo


    我已经自己搞定了, 现在只是post出来. 原来早就有教程了啊. 呵呵
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2012-9-3 17:57:40 | 显示全部楼层
这个有教程。具体程序直接找huacuoh交流
yyahoo 发表于 2012-4-24 05:39 PM



    想问下,这个教程的链接是多少,我最近在学习遍历一个房间,谢谢了。
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2012-9-3 18:01:47 | 显示全部楼层
坚定不移的反对全自动机器人
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2012-9-3 18:15:56 | 显示全部楼层
回复 5# dandelion


    mush的可能是这个http://pkuxkx.com/forum/thread-19517-1-1.html 强大的GPS,代码看不太明白,从函数名里猜可能有遍历的内容;错错也有个推车机器人的精华贴讲到了遍历,不过是固定路径的,你得提前录制好路径。
    zmud讲遍历的是http://pkuxkx.com/forum/thread-7512-1-1.html,不涉及地图/数据库,但值得好好研究。
    其他的不是很清楚,不知道2楼指的是哪个。。。你可以搜索下“遍历”,有很多帖子。。。
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2012-9-4 09:08:26 | 显示全部楼层
你搜他的帖子,有一个帖子直接讲到了这个内容
yyahoo 发表于 2012-9-4 08:54 AM



    你好,我在搜索里搜索了,没找到。。。。。
能帮我看看嘛?谢谢了。
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
发表于 2012-9-4 09:14:48 | 显示全部楼层
看来要把中途乱入改成中途调整目的地了,前方匪患严重,冲不过去只能绕道去邻近镖局了。去遍历吧,嘿嘿
北大侠客行Mud(pkuxkx.com),最好的中文Mud游戏!
您需要登录后才可以回帖 登录 | 注册

本版积分规则

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

GMT+8, 2024-11-1 05:28 PM , Processed in 0.010128 second(s), 14 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

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