Files
loop/src/Dodge/Item/Weapon/Radar.hs
T

24 lines
798 B
Haskell

module Dodge.Item.Weapon.Radar where
import Control.Lens
import Dodge.Data.World
import Dodge.Default
import Dodge.RadarSweep
autoDetector :: Detector -> Item
autoDetector dt =
defaultEquipment
& itUse . equipEffect . eeSite .~ GoesOnWrist
& itUse . equipEffect . eeUse .~ EDetector dt --autoEffect (detectorEffect dt) 100 click1S
& itUse . equipEffect . eeParams .~ EquipCounter 0
& itUse . equipEffect . eeViewDist ?~ 350
& itType . iyBase .~ EQUIP (AUTODETECTOR dt)
-- , _itEffect = autoRadarEffect
detectorEffect :: Detector -> Item -> Creature -> World -> World
detectorEffect dt = case dt of
ITEMDETECTOR -> const (aRadarPulse ObItem)
CREATUREDETECTOR -> const (aRadarPulse ObCreature)
WALLDETECTOR -> const (aRadarPulse ObWall)