Files
loop/src/Dodge/Item/Weapon/Targeting.hs
T
2022-02-22 22:07:55 +00:00

21 lines
503 B
Haskell

module Dodge.Item.Weapon.Targeting
( useTargetPos
, removeItTarget
) where
import Dodge.Data
import Geometry.Data
import Control.Lens
--import qualified Data.IntMap.Strict as IM
useTargetPos
:: (Maybe Point2 -> Creature -> World -> World)
-> Creature
-> World
-> World
useTargetPos f cr w = case cr ^? crInv . ix (_crInvSel cr) . itTargeting . tgPos of
Nothing -> w
Just p -> f p cr w
removeItTarget :: Item -> Item
removeItTarget = itTargeting . tgPos .~ Nothing