Explicitly store list of barrels for weapons

This commit is contained in:
2023-05-20 17:48:51 +01:00
parent 03611c6b95
commit 4cfb7d431a
9 changed files with 73 additions and 98 deletions
+19 -19
View File
@@ -48,7 +48,7 @@ data ItemParams
{ _muzVel :: Float
, _rifling :: Float
, _bore :: Float
, _gunBarrels :: GunBarrels
, _gunBarrels :: [GunBarrel]
, _recoil :: Float
, _torqueAfter :: Float
, _randomOffset :: Float
@@ -82,15 +82,15 @@ data GunBarrel = GunBarrel
, _barlInaccuracy :: Float
}
data GunBarrels
= MultiBarrel
{ _brlSpread :: BarrelSpread
, _brlNum :: Int
, _brlInaccuracy :: Float
}
| BarrelList
{ _brlList :: [GunBarrel]
}
--data GunBarrels
---- = MultiBarrel
---- { _brlSpread :: BarrelSpread
---- , _brlNum :: Int
---- , _brlInaccuracy :: Float
---- }
-- = BarrelList
-- { _brlList :: [GunBarrel]
-- }
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data Nozzle = Nozzle
@@ -103,21 +103,21 @@ data Nozzle = Nozzle
}
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data BarrelSpread
= AlignedBarrels
| SpreadBarrels {_spreadAngle :: Float}
| RotatingBarrels {_rotatingBarrelInaccuracy :: Float}
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
--data BarrelSpread
-- = AlignedBarrels
-- | SpreadBarrels {_spreadAngle :: Float}
-- | RotatingBarrels {_rotatingBarrelInaccuracy :: Float}
-- --deriving (Eq, Ord, Show, Read) --Generic, Flat)
makeLenses ''BarrelSpread
--makeLenses ''BarrelSpread
makeLenses ''ItemParams
makeLenses ''Nozzle
makeLenses ''GunBarrels
--makeLenses ''GunBarrels
makeLenses ''GunBarrel
deriveJSON defaultOptions ''ShrinkGunStatus
deriveJSON defaultOptions ''PreviousArcEffect
deriveJSON defaultOptions ''Nozzle
deriveJSON defaultOptions ''BarrelSpread
--deriveJSON defaultOptions ''BarrelSpread
deriveJSON defaultOptions ''GunBarrel
deriveJSON defaultOptions ''GunBarrels
--deriveJSON defaultOptions ''GunBarrels
deriveJSON defaultOptions ''ItemParams