8bit時代のロートルぷろぐらまだす。

 なんか漏れ的に懐かしい話題のスレのようなので、
俺が大昔に書いた経路選択処理を書くっす。

a.マップ(スクエアマップで斜め移動は1.4倍コスト)と同じサイズの整数2次元配列を用意し、「未到達」値で初期化
 (以後の処理は全てこの配列を対象とする)
b.移動目標とするべき地点に、その重みに応じた「重要度」数値をプロット(小さいほうが重要箇所)
c.配列全てをスキャンし、「重要度」がプロットされている地点の
 隣接スクエアに「元の地点の重要度+スクエア間移動コスト」を重要度としてプロットする。
 (既に重要度がプロットされている場合は、新しい値が小さくなるときだけプロットする)
d.移動させたいユニットのスクエアが「未到達」でなくなるまでcを繰り返す
e.ユニットは値の「重要度」値の小さいほうに移動する

 ってやって、目標設定も一緒にやってた。
データ処理量の問題とかありそうだけど、ま、何かの参考になれば・・・・

#思考ルーチンスレにも似たこと書いたけど、
#こっちのが具体的に書いたので重複許して。