Cleanup scope zooming

This commit is contained in:
2023-01-07 10:43:53 +00:00
parent 87ea7da1d4
commit 6b259fa200
8 changed files with 54 additions and 74 deletions
+1
View File
@@ -115,6 +115,7 @@ heldItemSPic ht it = case ht of
SHATTERGUN -> shatterGunSPic
HELDDETECTOR dt -> noPic (colorSH (detectorColor dt) $ upperPrismPoly 3 $ rectWH 2 2)
KEYCARD _ -> noShape (setDepth 0 $ translate (-5) (-5) $ rotate (pi / 2.5) keyPic)
BINOCULARS -> mempty -- TODO
torchShape :: Shape
torchShape =
+1
View File
@@ -26,6 +26,7 @@ itemFromHeldType :: HeldItemType -> Item
itemFromHeldType ht = case ht of
KEYCARD i -> keyCard i
TORCH -> torch
BINOCULARS -> binoculars
SHATTERGUN -> shatterGun
BANGSTICK i -> bangStick i
PISTOL -> pistol
+1 -2
View File
@@ -69,11 +69,10 @@ sniperRifle =
elephantGun
& itType . iyBase .~ HELD SNIPERRIFLE
& itParams . gunBarrels .~ SingleBarrel 0
& itUse . heldAim . aimZoom .~ defaultItZoom{_izMax = 0.5, _izMin = 0.5}
& itUse . heldAim . aimZoom .~ defaultItZoom{_izMax = 0.5, _izMin = 0.5,_izFac = 1}
& itUse . heldScroll .~ HeldScrollZoom -- zoomLongGun
& itScope .~ ZoomScope (V2 0 0) 0 1 0.5 False
& itUse . useTargeting ?~ TargetLaser
& itUse . heldAim . aimZoom .~ defaultItZoom{_izFac = 1}
machineGun :: Item
machineGun =
+13
View File
@@ -4,6 +4,7 @@ import Dodge.Default.Item
import Color
import Control.Lens
import Dodge.Data.Item
import Geometry.Data
flatShield :: Item
flatShield =
@@ -32,6 +33,18 @@ latchkey _ =
defaultHeldItem
& itInvColor .~ yellow
binoculars :: Item
binoculars =
defaultHeldItem
& itScope .~ ZoomScope (V2 0 0) 0 1 0.5 False
& itType . iyBase .~ HELD BINOCULARS
& itUse . heldAim . aimHandlePos .~ 5
& itUse . heldAim . aimMuzPos .~ 10
& itUse . heldAim . aimStance .~ TwoHandFlat
& itUse . heldScroll .~ HeldScrollZoom -- zoomLongGun
& itUse . heldAim . aimZoom .~ defaultItZoom{_izMax = 0.5, _izMin = 0.5, _izFac = 1}
torch :: Item
torch =
defaultHeldItem
+1
View File
@@ -80,6 +80,7 @@ heldInfo hit = case hit of
FORCEFIELDGUN -> "A DEVICE THAT PRODUCES A DURABLE FORCEFIELD."
HELDDETECTOR d -> "A DEVICE THAT DETECTS "++detectorInfo d ++" IN AN EXPANDING RADIUS."
TORCH -> "A STICK WITH A LIGHT ON THE END."
BINOCULARS -> "TWO CYLINDERS WITH LENSES. SCROLL TO ZOOM."
FLATSHIELD -> "A PANEL OF METAL THAT BLOCKS UNWANTED OBJECTS FROM THE FRONT OF THE USER."
KEYCARD i -> "A KEYCARD. IT IS LABELLED " ++ show i++ "."