我在这个网站上有一个问题:http://www.dark-project.cz/wesnoth/map-view/1(点击单元)。在我的Javascript来源http://www.dark-project.cz/wesnoth/js/map/base.js(最后$('div.unitImg').click(function()
函数)我想标记单位不能去的所有六边形。六边形图上的移动算法
我有一个相当复杂的算法,当运动为1时正常工作,但是如果它高一些则不起作用(尝试运动2)。
对于找到正确的格子的算法你有一些想法吗?
这里是坐标的编号的例子:http://www.dark-project.cz/wesnoth/coor.png
感谢您的所有答复。
谢谢你的回答。我从来没有与这些复杂的事情和algorytms工作。到目前为止,我只是在PHP中编写一些应用程序(例如电子商店,某些俱乐部使用的OOP的复杂通信网络),并且在JavaScript中也只是一些更简单的事情。所以我没有像BFS这样的algorytms的经验和他们在JavaScript中的实现。你知道关于js中这个algorytms的任何教程和他们在这个问题上的应用或类似的东西吗? – Darkry
不幸的是,我不知道这些链接,因为我在俄罗斯学校学习,所以我无法提供一个可信的链接到英语资源。你可以谷歌。我可以建议你尽量不要找到一般的图形算法(作为链接的维基页面),而是一些使用BFS从迷宫中退出的例子。它会给你一些我相信的见解。这很容易,如果你不考虑图表太多,而是关于骑士和龙和/或迷宫:) – unkulunkulu
BFS在这里是非常自然的,因为它确保节点按照距离增加的顺序遍历,因此它可以很容易修改为仅找到距离某些固定距离的节点。 –