29 lines
788 B
Haskell
29 lines
788 B
Haskell
module Dodge.Item.Scope (
|
|
zoomScope,
|
|
targetingScope,
|
|
remoteScreen,
|
|
) where
|
|
|
|
import Control.Lens
|
|
import Dodge.Data.Item
|
|
import Dodge.Default.Item
|
|
|
|
zoomScope :: Item
|
|
zoomScope =
|
|
defaultHeldItem
|
|
& itType . iyBase .~ ATTACH ZOOMSCOPE
|
|
-- & itUse .~ AttachUse (ScrollAttachParams (ZoomScrollParams{_opticPos = 0, _opticZoom = 1, _opticDefaultZoom = 0.5}))
|
|
& itUse .~ ScopeUse OpticScope{_opticPos = 0, _opticZoom = 1, _opticDefaultZoom = 0.5}
|
|
|
|
targetingScope :: TargetType -> Item
|
|
targetingScope tt =
|
|
defaultHeldItem
|
|
& itType . iyBase .~ ATTACH (TARGETATTACH tt)
|
|
& itUse .~ AttachUse Nothing
|
|
|
|
remoteScreen :: Item
|
|
remoteScreen =
|
|
defaultHeldItem
|
|
& itType . iyBase .~ ATTACH REMOTESCREEN
|
|
& itUse .~ AttachUse Nothing
|