module EnemyState where import Enemy (..) import Player (..) import Geometry (distance) type EnemyState = { enemies : [Enemy] , spawn : Float , lastSpawn : Float } initEnemyState : EnemyState initEnemyState = let spawn = 200 in { enemies = [] , spawn = spawn , lastSpawn = -spawn } playerEnemyCollision : Float -> Player -> Enemy -> Bool playerEnemyCollision time player enemy = let enemyPos = enemyMove enemy time in (distance enemyPos player.pos) < enemySize + playerSize playerEnemiesCollision : Float -> Player -> [Enemy] -> Bool playerEnemiesCollision time player enemies = let collision = playerEnemyCollision time player in length (filter collision enemies) > 0