我有一个我正在开发的Unity游戏。目前它处于基本状态,但目标是以图形方式稍微复制旧式telnet MUD的游戏玩法。这一阶段的地图构建是手动的,不是自动的,尽管计划在以后进行。我可以很容易地将房间放置在一个2维网格中,每个网格在x和y轴上彼此相距很远。 我处于几个“Room”游戏对象的阶段,他们每个人都有一个C#脚本(让我们称之为“a_room.cs”脚本)。每个脚本都有一个公共gameObject变量,用于该特定“房间”的北部,南部,东部和西部房间。Unity c#寻找近房的房间
我的问题;有没有办法让每个“房间”在运行时或编辑中都自己指出哪个“房间”最接近每个特定的基本方向?考虑到某个方向上可能有几个房间,只有最接近的房间,以及这个方向上可能没有房间?
我不一定需要代码作为答案,逻辑和重要功能是我所追求的。
另外;如果这种思想方法存在明显的错误,那么可以考虑其他建议。
你可以用任意标签标记每个房间(现在让我们说“房间”),然后使用[this](http://docs.unity3d.com/ScriptReference/GameObject.FindGameObjectsWithTag。 html)来获取所有房间的列表,然后从那里找到每个方向上最近房间的简单数学。 – Taelsin
谢谢Taelsin,我将在下面的答案中使用它。 – Marky