diff options
author | Juan J. Martinez <jjm@usebox.net> | 2023-04-25 22:18:54 +0100 |
---|---|---|
committer | Juan J. Martinez <jjm@usebox.net> | 2023-04-25 22:18:54 +0100 |
commit | 1cd60a951b2c2f83b927a6b6961cbd3206bf5316 (patch) | |
tree | 59861ba4125ed15ff8711ccd55e4b5a24fd3235c /src/Game/Map.hs | |
parent | a5ac165b1e9adbdf459ebc9df42edc024389e9b8 (diff) | |
download | space-plat-hs-1cd60a951b2c2f83b927a6b6961cbd3206bf5316.tar.gz space-plat-hs-1cd60a951b2c2f83b927a6b6961cbd3206bf5316.zip |
Added "tracker" enemy
Diffstat (limited to 'src/Game/Map.hs')
-rw-r--r-- | src/Game/Map.hs | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/Game/Map.hs b/src/Game/Map.hs index 6c01061..2a85dbe 100644 --- a/src/Game/Map.hs +++ b/src/Game/Map.hs @@ -45,6 +45,7 @@ data Object | RobotEntity Int Int Dir | ShooterEntity Int Int Dir | RunnerEntity Int Int Dir + | TrackerEntity Int Int Dir deriving (Show, Eq, Ord) data JsonMapData = JsonMapData @@ -92,6 +93,8 @@ instance JSON Object where ShooterEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirRight Just "Runner" -> RunnerEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirRight + Just "Tracker" -> + TrackerEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirRight Just "Slime-l" -> SlimeEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirLeft Just "Robot-l" -> @@ -100,6 +103,8 @@ instance JSON Object where ShooterEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirLeft Just "Runner-l" -> RunnerEntity <$> valFromObj "x" obj <*> valFromObj "y" obj <*> pure DirLeft + Just "Tracker-l" -> + TrackerEntity <$> 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 |