21 lines
615 B
Haskell
21 lines
615 B
Haskell
module Dodge.Euse where
|
|
import Dodge.Data
|
|
import Dodge.Item.Weapon.ExtraEffect
|
|
import Dodge.Item.Weapon.Radar
|
|
import Dodge.SoundLogic.ExternallyGeneratedSounds
|
|
import Dodge.Item.Equipment
|
|
import LensHelp
|
|
|
|
useE :: Euse -> Item -> Creature -> World -> World
|
|
useE eo = case eo of
|
|
EDoNothing -> const $ const id
|
|
EDetector dt -> autoEffect (detectorEffect dt) 100 click1S
|
|
EMagShield -> useMagShield
|
|
EWristShield -> setWristShieldPos
|
|
EHeadLamp -> createHeadLamp
|
|
ECamouflage vis -> overCID (crCamouflage .~ vis)
|
|
|
|
EonWristShield -> onEquipWristShield
|
|
|
|
EoffWristShield -> onRemoveWristShield
|