Refactor crPos to be a V3
This commit is contained in:
@@ -3,16 +3,17 @@ module Dodge.Creature.ChooseTarget where
|
||||
import Control.Lens
|
||||
import Dodge.Base
|
||||
import Dodge.Data.World
|
||||
import Linear
|
||||
|
||||
targetYouLOS :: Creature -> World -> Maybe Creature
|
||||
{-# INLINE targetYouLOS #-}
|
||||
targetYouLOS cr w
|
||||
| hasLOS (_crPos cr) (_crPos $ you w) w = Just $ you w
|
||||
| hasLOS (cr ^. crPos . _xy) ( you w ^. crPos . _xy) w = Just $ you w
|
||||
| otherwise = Nothing
|
||||
|
||||
targetYouCognizant :: Creature -> World -> Maybe Creature
|
||||
targetYouCognizant cr w
|
||||
| hasLOS (_crPos cr) (_crPos $ you w) w
|
||||
| hasLOS (cr ^. crPos . _xy) (you w ^. crPos . _xy) w
|
||||
&& isCog (cr ^? crPerception . cpAwareness . ix 0) =
|
||||
Just $ you w
|
||||
| otherwise = Nothing
|
||||
|
||||
Reference in New Issue
Block a user