aboutsummaryrefslogtreecommitdiff
path: root/src/Game/Map.hs
diff options
context:
space:
mode:
authorJuan J. Martinez <jjm@usebox.net>2023-04-19 23:16:22 +0100
committerJuan J. Martinez <jjm@usebox.net>2023-04-19 23:19:37 +0100
commit9ffa3f57067598acfbe5196a4452b225ab295b83 (patch)
treed893d9eba5a51f5a831e287bf1724e1f93a48026 /src/Game/Map.hs
parent7a1d4eb4481fa54753673e67532039da2b9c0b2f (diff)
downloadspace-plat-hs-9ffa3f57067598acfbe5196a4452b225ab295b83.tar.gz
space-plat-hs-9ffa3f57067598acfbe5196a4452b225ab295b83.zip
Added "runner" enemy
Diffstat (limited to 'src/Game/Map.hs')
-rw-r--r--src/Game/Map.hs5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Game/Map.hs b/src/Game/Map.hs
index 1d395dc..6c01061 100644
--- a/src/Game/Map.hs
+++ b/src/Game/Map.hs
@@ -44,6 +44,7 @@ data Object
| SlimeEntity Int Int Dir
| RobotEntity Int Int Dir
| ShooterEntity Int Int Dir
+ | RunnerEntity Int Int Dir
deriving (Show, Eq, Ord)
data JsonMapData = JsonMapData
@@ -89,12 +90,16 @@ instance JSON Object where
RobotEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirRight
Just "Shooter" ->
ShooterEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirRight
+ Just "Runner" ->
+ RunnerEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirRight
Just "Slime-l" ->
SlimeEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirLeft
Just "Robot-l" ->
RobotEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirLeft
Just "Shooter-l" ->
ShooterEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirLeft
+ Just "Runner-l" ->
+ RunnerEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirLeft
Just (JSString (JSONString s)) -> Error $ "unsupported entity " ++ show s
e -> Error $ "unsupported entity in " ++ show e
readJSON _ = mzero