Files
loop/src/Dodge/CullBox.hs
T
2022-06-17 18:24:24 +01:00

24 lines
721 B
Haskell

module Dodge.CullBox
(cullBox
) where
import Dodge.Data
import Dodge.GameRoom
import Dodge.Base
import Dodge.Zone
import Geometry
import Dodge.Update.Camera
import Shape
import Data.Maybe (mapMaybe)
cullBox :: Configuration -> World -> [Point2]
--cullBox cfig w = farWallPoints cp w
cullBox cfig w' = let (n,s,e,w) = farWallDistDirection (_cameraCenter w') cfig w'
in map ((+.+ _cameraCenter w') . rotateV (_cameraRot w') ) $ rectNSWE n (negate s) (negate w) e
-- --mapMaybe (fmap (fst . _wlLine . snd) . f) $ screenPolygon cfig w
-- where
-- grs = filter (pointInOrOnPolygon cp . _grBound) (_gameRooms w)
-- cp = _cameraCenter w
-- f p = collidePointWallsWall cp p $ wallsAlongLine cp p w
--