summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2018-02-26 17:16:08 +0100
committernsensfel <SpamShield0@noot-noot.org>2018-02-26 17:16:08 +0100
commit6494b74a45e27085fd81836f7b8c969431e8ff3c (patch)
treee344a24fa2e9a2ee198314c0552c46b235072009 /src/battlemap
parentfd4d031ab5b31763d376c663cc049f62ee389243 (diff)
Got it to work, I think.
Diffstat (limited to 'src/battlemap')
-rw-r--r--src/battlemap/movement.erl8
1 files changed, 5 insertions, 3 deletions
diff --git a/src/battlemap/movement.erl b/src/battlemap/movement.erl
index 7fc5db1..513d032 100644
--- a/src/battlemap/movement.erl
+++ b/src/battlemap/movement.erl
@@ -41,12 +41,13 @@ location_to_array_index (ArrayWidth, X, Y) ->
cross (_Battlemap, _ForbiddenLocations, [], Cost, X, Y) ->
{{X, Y}, Cost};
cross (Battlemap, ForbiddenLocations, [Step|NextSteps], Cost, X, Y) ->
- BattlemapTiles = battlemap:get_tiles(Battlemap),
+ BattlemapWidth = battlemap:get_width(Battlemap),
+ BattlemapTiles = battlemap:get_tile_ids(Battlemap),
{NextX, NextY} = location_after_step(Step, X, Y),
NextTileIX =
- location_to_array_index(array:size(BattlemapTiles), NextX, NextY),
- NextTile = array:get(array:get(NextTileIX, BattlemapTiles)),
+ location_to_array_index(BattlemapWidth, NextX, NextY),
+ NextTile = array:get(NextTileIX, BattlemapTiles),
NextCost = (Cost + tile:get_cost(NextTile)),
IsForbidden =
array:foldl
@@ -54,6 +55,7 @@ cross (Battlemap, ForbiddenLocations, [Step|NextSteps], Cost, X, Y) ->
fun (_IX, Location, Prev) ->
(Prev or ({NextX, NextY} == Location))
end,
+ false,
ForbiddenLocations
),