diff options
Diffstat (limited to 'src/Xanthous/Data')
-rw-r--r-- | src/Xanthous/Data/EntityMap/Graphics.hs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/src/Xanthous/Data/EntityMap/Graphics.hs b/src/Xanthous/Data/EntityMap/Graphics.hs index 21a380a72c0a..9dcc02b8e88f 100644 --- a/src/Xanthous/Data/EntityMap/Graphics.hs +++ b/src/Xanthous/Data/EntityMap/Graphics.hs @@ -1,6 +1,9 @@ {-# LANGUAGE ViewPatterns #-} -------------------------------------------------------------------------------- -module Xanthous.Data.EntityMap.Graphics where +module Xanthous.Data.EntityMap.Graphics + ( visiblePositions + , visibleEntities + ) where -------------------------------------------------------------------------------- import Xanthous.Prelude -------------------------------------------------------------------------------- @@ -11,6 +14,10 @@ import Xanthous.Entities import Xanthous.Util.Graphics (circle, line) -------------------------------------------------------------------------------- +visiblePositions :: Position -> Word -> EntityMap SomeEntity -> Set Position +visiblePositions pos radius = setFromList . positions . visibleEntities pos radius + + -- | Given a point and a radius of vision, returns a list of all entities that -- are *visible* (eg, not blocked by an entity that obscures vision) from that -- point |