Use circles instead of points for zome wall zones
This commit is contained in:
@@ -25,7 +25,7 @@ import qualified IntMapHelp as IM
|
||||
|
||||
zoneOfCirc :: Float -> Point2 -> Float -> [Int2]
|
||||
{-# INLINE zoneOfCirc #-}
|
||||
zoneOfCirc zsize p r = zoneOfRect zsize (p +.+ V2 r r) (p -.- V2 r r)
|
||||
zoneOfCirc zsize p r = zoneOfRect zsize (p + V2 r r) (p - V2 r r)
|
||||
|
||||
zoneOfRect :: Float -> Point2 -> Point2 -> [Int2]
|
||||
{-# INLINE zoneOfRect #-}
|
||||
|
||||
@@ -31,7 +31,7 @@ crixsNearSeg :: Point2 -> Point2 -> World -> IS.IntSet
|
||||
crixsNearSeg = nearSeg crZoneSize _crZoning
|
||||
|
||||
crIXsNearCirc :: Point2 -> Float -> World -> IS.IntSet
|
||||
crIXsNearCirc p r = crsNearRect (p +.+ V2 r r) (p -.- V2 r r)
|
||||
crIXsNearCirc p r = crsNearRect (p + V2 r r) (p - V2 r r)
|
||||
|
||||
crsNearCirc :: Point2 -> Float -> World -> [Creature]
|
||||
crsNearCirc p r w = mapMaybe (\cid -> w ^? cWorld . lWorld . creatures . ix cid) . IS.toList
|
||||
|
||||
Reference in New Issue
Block a user