我正在为 Bukkit 开发这个,但我愿意移植一个纯 java 解决方案。
现在,我在一个房间里有一个角色,这个房间有一个暴露在外面的开口,以便辐射像这样渗入:
(对不起,糟糕的绘画技巧)在这张图片中,算法应该返回 false,但是如果白色部分被覆盖,它会返回 true。
我需要一种检测角色是否在房间内的方法。请记住,房间可以是任意大小,不一定是长方体。
我希望它的工作方式是我在屋顶上方有一个任意位置,如果这个迷宫算法能够到达这个位置,我就会知道这个角色没有被完全覆盖。
编辑:实际上,如果导出距离超过 20 个单位,我不会介意算法超时。
这本身并不是一个答案,但它可能是一个很好的起点。
- 房间的定义:
a part or division of a building enclosed by walls, floor, and
ceiling.
- 建筑的定义:
a structure with a roof and walls
- 结构的定义:
a building or other object constructed from several parts
你能看出这些定义有多糟糕吗? (建筑和结构的定义是递归的!)直到你能为你认为是房间的东西想出一个清晰的、黑白分明的定义,你(和我们)想出一个好的解决方案的希望很小.