Board logo

标题: SLG样的曹操传中的移动的公式是怎么样的? [打印本页]

作者: qwe4678    时间: 2009-9-14 17:28     标题: SLG样的曹操传中的移动的公式是怎么样的?

SLG样的曹操传中的移动的公式是怎么样的?有哪位大大知道啊???!
作者: 阿尔法孝直    时间: 2009-9-14 17:43

什么叫“移动的公式”?我们步区从来没有人说过这样的术语。
作者: qwe4678    时间: 2009-9-14 17:47

比如骑兵的行动各上下左右各三格,计算出这个结果的公式,好让程序计算,
移动公式,A为当前单位所在的X坐标,B为为当前单位所在的Y坐标
Z=行动距离数
(A-X)=C取正值
(B-y)=d取正值
当C+D=Z时,该坐标是可以行动的
上面是我想的笨方法,但我想曹操传中应该是每个兵种的基本行动力都是写死的吧,没有公式的吧!
作者: 阿尔法孝直    时间: 2009-9-14 18:05

在单击部队之后显示移动范围之前,系统肯定要检测地图上每一格是否属于移动范围中的一格,不是则画阴影。
0、如果定身,则退出检测,否则转下一步。
1、先检测部队周围4格是否是敌军或障碍物(消耗移动力为255),若上面(下面、左边、右边)不是则以将上(下、左、右)一格改为当前格,同时剩余移动力自减该格的移动力后转到第2步检测。
2、在没有赤兔马的情况下,检测周围4格是否存在敌军,有则剩余移动力减为0退出该轮检测,没有则转到第3步。
3、检测周围4格是否是敌军或障碍物(若有赤兔马,则敌军当做障碍物处理),若上面(下面、左边、右边)不是则以将上(下、左、右)一格改为当前格,同时剩余移动力自减该格的移动力后,如果大于等于0转到第2步检测,如果小于0则退出该轮检测。
4、这是一个递归算法,可能某些格子会重复检测多次,只要有一次检测出该格可移动,那么该格就是移动范围中的一格。


以上只是一种可行算法,但是具体系统用的是什么算法,我也不知道。
作者: qwe4678    时间: 2009-9-15 17:02

好的,谢谢阿尔法孝直的详细解答,感谢啊!
作者: rainxy2000    时间: 2009-12-1 15:47

参考A*路径算法,经过的点会进入关闭节点,不会重复。
参考:http://www.vckbase.com/document/viewdoc/?id=1422
作者: 阿尔法孝直    时间: 2009-12-4 17:07

传送门:http://www.xycq.net/forum/viewth ... p;page=1#pid2772511




欢迎光临 轩辕春秋文化论坛 (http://www.xycq.org.cn/forum/) Powered by Discuz! 5.0.0