Files
loop/src/Dodge/Zone/Object.hs
T

16 lines
461 B
Haskell

module Dodge.Zone.Object where
import Dodge.Data
import Geometry.Zone
import Geometry.Data
import StreamingHelp
import qualified Streaming.Prelude as S
zoneOfCreature :: Float -> Creature -> StreamOf Int2
zoneOfCreature x cr = zoneInsideCirc x (_crPos cr) (_crRad cr)
zoneOfWall :: Float -> Wall -> StreamOf Int2
zoneOfWall x = uncurry (zoneOfSeg x) . _wlLine
zonePos :: (a -> Point2) -> Float -> a -> StreamOf Int2
zonePos f x = S.yield . zoneOfPoint x . f