summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-09-27 10:31:16 +0200
committerNathanael Sensfelder <SpamShield0@MultiAgentSystems.org>2017-09-27 10:31:16 +0200
commit2c9b2af9ac011a871c5c02d3e2258fca73a98880 (patch)
tree653db3959f444f1065f05658650c6ec81863d627 /elm/battlemap/src/Battlemap/Tile.elm
parent33e57128d48a012533c42635f52037fcdedd4c56 (diff)
Splits client and server into two repositories.
Diffstat (limited to 'elm/battlemap/src/Battlemap/Tile.elm')
-rw-r--r--elm/battlemap/src/Battlemap/Tile.elm45
1 files changed, 45 insertions, 0 deletions
diff --git a/elm/battlemap/src/Battlemap/Tile.elm b/elm/battlemap/src/Battlemap/Tile.elm
new file mode 100644
index 0000000..986cb2a
--- /dev/null
+++ b/elm/battlemap/src/Battlemap/Tile.elm
@@ -0,0 +1,45 @@
+module Battlemap.Tile exposing
+ (
+ Type,
+ TileModifier(..),
+ set_direction,
+ set_navigation,
+ reset_tile
+ )
+
+import Battlemap.Direction
+import Battlemap.Location
+
+import Character
+
+type TileModifier =
+ CanBeReached
+ | CanBeAttacked
+
+type alias Type =
+ {
+ location : Battlemap.Location.Ref,
+ floor_level : Int,
+ nav_level : Battlemap.Direction.Type,
+ char_level : (Maybe Character.Ref),
+ mod_level : (Maybe TileModifier)
+ }
+
+set_direction : Battlemap.Direction.Type -> Type -> Type
+set_direction d t =
+ {t |
+ nav_level = d
+ }
+
+set_navigation : Battlemap.Direction.Type -> Type -> Type
+set_navigation dir t =
+ {t |
+ nav_level = dir
+ }
+
+reset_tile : Type -> Type
+reset_tile t =
+ {t |
+ nav_level = Battlemap.Direction.None,
+ mod_level = Nothing
+ }