71 lines
2.1 KiB
Haskell
71 lines
2.1 KiB
Haskell
module Dodge.Item.Held.Rod (
|
|
bangRod,
|
|
elephantGun,
|
|
amr,
|
|
autoAmr,
|
|
sniperRifle,
|
|
-- machineGun,
|
|
) where
|
|
|
|
--import Dodge.SoundLogic.ExternallyGeneratedSounds
|
|
import Dodge.Data.Item
|
|
import Dodge.Default
|
|
--import Dodge.Item.Weapon.Bullet
|
|
--import Dodge.Reloading.Action
|
|
import Geometry
|
|
import LensHelp
|
|
|
|
bangRod :: Item
|
|
bangRod =
|
|
defaultBulletWeapon
|
|
-- & itUse . heldParams . recoil .~ 50
|
|
& itUse . heldParams . torqueAfter .~ 0.3
|
|
-- & itUse . heldParams . bulGunSound ?~ (bangEchoS,0)
|
|
& itUse . heldDelay . rateMax .~ 12
|
|
& itType .~ HELD BANGROD
|
|
-- & itUse . heldAim . aimZoom .~ defaultItZoom{_izFac = 1.5}
|
|
-- & itUse . heldAim . aimHandlePos .~ 5
|
|
& itUse . heldMuzzles . ix 0 . mzPos .~ V2 30 0
|
|
& itUse . heldMuzzles . ix 0 . mzFlareType .~ HeavySmokeFlare
|
|
-- & itUse . heldConsumption . laAmmoType .~ hvBulletAmmo
|
|
|
|
elephantGun :: Item
|
|
elephantGun =
|
|
bangRod
|
|
& itType .~ HELD ELEPHANTGUN
|
|
& itUse . heldMuzzles . ix 0 . mzInaccuracy .~ 0.05
|
|
-- & itUse . heldParams . recoil .~ 50
|
|
|
|
amr :: Item
|
|
amr =
|
|
elephantGun
|
|
& itType .~ HELD AMR
|
|
|
|
autoAmr :: Item
|
|
autoAmr =
|
|
amr
|
|
& itType .~ HELD AUTOAMR
|
|
|
|
sniperRifle :: Item
|
|
sniperRifle =
|
|
elephantGun
|
|
& itType .~ HELD SNIPERRIFLE
|
|
& itUse . heldMuzzles . ix 0 . mzInaccuracy .~ 0
|
|
-- & itUse . heldAim . aimZoom .~ defaultItZoom{_izMax = 0.5, _izMin = 0.5,_izFac = 1}
|
|
|
|
--machineGun :: Item
|
|
--machineGun =
|
|
-- bangRod
|
|
-- & itType . iyBase .~ HELD MACHINEGUN
|
|
---- & itUse . heldMods .~ MachineGunMod
|
|
-- & itUse . heldMods .~ PistolMod
|
|
-- & itUse . heldAim . aimWeight .~ 8
|
|
-- & itUse . heldAim . aimRange .~ 1
|
|
-- & itUse . heldAim . aimStance .~ TwoHandUnder
|
|
-- & itUse . heldAim . aimZoom .~ defaultItZoom{_izFac = 1.5}
|
|
-- & itUse . heldDelay .~ VariableRate
|
|
-- {_rateMax = 25, _rateMaxMax = 24, _rateMinMax = 7, _rateTime = 0}
|
|
-- & itInvSize .~ 3
|
|
-- & itUse . heldParams . torqueAfter .~ 0.2 -- not sure if this is necessary?
|
|
-- & itUse . heldTriggerType .~ AutoTrigger
|