aboutsummaryrefslogtreecommitdiff
path: root/src/Game/Entities/Slime.hs
diff options
context:
space:
mode:
authorJuan J. Martinez <jjm@usebox.net>2023-02-24 22:51:42 +0000
committerJuan J. Martinez <jjm@usebox.net>2023-02-24 22:51:42 +0000
commite066422b950a06873efb6a884b47155c867b7acf (patch)
tree833c0ac83cdb66ec50f3ef882598d3b93004cf12 /src/Game/Entities/Slime.hs
parentcf01ddef562c64dbcffa2770f50825cd97f02e3f (diff)
downloadspace-plat-hs-e066422b950a06873efb6a884b47155c867b7acf.tar.gz
space-plat-hs-e066422b950a06873efb6a884b47155c867b7acf.zip
Cleaned passing the collision detection function to the entities
Diffstat (limited to 'src/Game/Entities/Slime.hs')
-rw-r--r--src/Game/Entities/Slime.hs7
1 files changed, 3 insertions, 4 deletions
diff --git a/src/Game/Entities/Slime.hs b/src/Game/Entities/Slime.hs
index d87f735..5ca6fe7 100644
--- a/src/Game/Entities/Slime.hs
+++ b/src/Game/Entities/Slime.hs
@@ -1,14 +1,13 @@
module Game.Entities.Slime (mkSlime) where
import Data.Bits (Bits (..))
-import Data.IORef
import Game.Entities.Common
import Game.Entities.Const
import Game.Entities.Types
import qualified Game.Sprites as S
-mkSlime :: S.SpriteSheet -> Int -> Int -> IORef Entity -> IsBlocked -> IO () -> IO Entity
-mkSlime sprites x y playerRef isBlocked hitPlayer' = do
+mkSlime :: S.SpriteSheet -> Int -> Int -> Collision -> IsBlocked -> IO () -> IO Entity
+mkSlime sprites x y playerCollision isBlocked hitPlayer' = do
s <- S.get sprites "slime"
pure
Entity
@@ -21,7 +20,7 @@ mkSlime sprites x y playerRef isBlocked hitPlayer' = do
gravity = gravityOff,
dir = DirRight,
sprite = s,
- update = updateSlime (collision playerRef 16) isBlocked hitPlayer',
+ update = updateSlime playerCollision isBlocked hitPlayer',
destroy = False,
spawns = []
}