summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authornsensfel <SpamShield0@noot-noot.org>2017-10-18 13:48:58 +0200
committernsensfel <SpamShield0@noot-noot.org>2017-10-18 13:48:58 +0200
commit2805c647010cbcca126ebf162fcbdd691fc72488 (patch)
tree2e05d66c8177cc5ff5125e2cbc23fdd4b1d05e36 /elm/battlemap/src/Model/RequestDirection.elm
parentd0dc7f665ba90d126e41048b2d7b992c3e804163 (diff)
Correcting whatever the compiler tells me is wrong.
Diffstat (limited to 'elm/battlemap/src/Model/RequestDirection.elm')
-rw-r--r--elm/battlemap/src/Model/RequestDirection.elm27
1 files changed, 24 insertions, 3 deletions
diff --git a/elm/battlemap/src/Model/RequestDirection.elm b/elm/battlemap/src/Model/RequestDirection.elm
index f47a902..cf600e6 100644
--- a/elm/battlemap/src/Model/RequestDirection.elm
+++ b/elm/battlemap/src/Model/RequestDirection.elm
@@ -4,6 +4,10 @@ import Dict
import Battlemap
import Battlemap.Direction
+import Battlemap.Location
+
+
+import Character
import Model
import Error
@@ -14,17 +18,34 @@ make_it_so model dir =
(Model.SelectedCharacter char_id) ->
let
new_bmap =
- (Battlemap.add_step_to_navigator
+ (Battlemap.try_adding_step_to_navigator
model.battlemap
+ (\loc ->
+ (List.all
+ (\char ->
+ (
+ ((Character.get_ref char) == char_id)
+ ||
+ (
+ (Battlemap.Location.get_ref
+ (Character.get_location char)
+ )
+ /=
+ (Battlemap.Location.get_ref loc)
+ )
+ )
+ )
+ (Dict.values model.characters)
+ )
+ )
dir
- (Dict.values model.characters)
)
in
case new_bmap of
(Just bmap) ->
{model |
state = Model.MovingCharacterWithButtons,
- battlemap = new_bmap
+ battlemap = bmap
}
Nothing ->