summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-09-18 19:12:54 +0200
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-09-18 19:12:54 +0200
commit36344e727e45b6a1d39f372a6a39ab973e023bdf (patch)
tree740a524f94b2ce846dcd7a920848139c5caa4e38 /client/elm/battlemap/src/Battlemap.elm
parent0b9096ed0c66db403c244a4720bac60326a40394 (diff)
Characters can actually move.
Diffstat (limited to 'client/elm/battlemap/src/Battlemap.elm')
-rw-r--r--client/elm/battlemap/src/Battlemap.elm19
1 files changed, 19 insertions, 0 deletions
diff --git a/client/elm/battlemap/src/Battlemap.elm b/client/elm/battlemap/src/Battlemap.elm
index d6c0017..ef24c80 100644
--- a/client/elm/battlemap/src/Battlemap.elm
+++ b/client/elm/battlemap/src/Battlemap.elm
@@ -3,6 +3,7 @@ module Battlemap exposing
Battlemap,
random,
apply_to_tile,
+ apply_to_tile_unsafe,
has_location,
apply_to_all_tiles
)
@@ -67,3 +68,21 @@ apply_to_tile bmap loc fun =
)
}
)
+
+apply_to_tile_unsafe : Battlemap -> Location -> (Tile -> Tile) -> Battlemap
+apply_to_tile_unsafe bmap loc fun =
+ let
+ index = (location_to_index bmap loc)
+ at_index = (get index bmap.content)
+ in
+ case at_index of
+ Nothing -> bmap
+ (Just tile) ->
+ {bmap |
+ content =
+ (set
+ index
+ (fun tile)
+ bmap.content
+ )
+ }