Make ammo magazines into own item type

This commit is contained in:
2024-06-22 12:03:32 +01:00
parent 35a56eef56
commit 8e127f0603
17 changed files with 258 additions and 255 deletions
+4 -4
View File
@@ -90,13 +90,13 @@ data ItemBaseType
| CONSUMABLE {_ibtConsumable :: ConsumableItemType}
| CRAFT CraftType
| ATTACH {_ibtAttach :: AttachType}
| AMMOMAG {_ibtAmmoMag :: AmmoMagType}
deriving (Eq, Ord, Show, Read)
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data AttachType
= SCROLLATTACH ScrollAttachType
| AMMOATTACH AmmoAttachType
| TARGETATTACH {_ibtAttachTarget :: TargetType}
-- | BULPAYLOADATTACH
-- | BULTRAJECTORYATTACH
@@ -106,11 +106,11 @@ data ScrollAttachType
= ZOOMSCOPE
deriving (Eq, Ord, Show, Read)
data AmmoAttachType
data AmmoMagType
= REVOLVEMAG
| TINMAG
| DRUMMAG
| BULLETBELT
| BELTMAG
| SHELLMAG
deriving (Eq, Ord, Show, Read)
@@ -246,7 +246,7 @@ makeLenses ''AttachType
deriveJSON defaultOptions ''Stack
deriveJSON defaultOptions ''CraftType
deriveJSON defaultOptions ''ConsumableItemType
deriveJSON defaultOptions ''AmmoAttachType
deriveJSON defaultOptions ''AmmoMagType
deriveJSON defaultOptions ''ScrollAttachType
deriveJSON defaultOptions ''AttachType
deriveJSON defaultOptions ''Detector
+3 -4
View File
@@ -55,6 +55,9 @@ data ItemUse
{_useAmount :: ItAmount}
| AttachUse
{_attachParams :: AttachParams}
| AmmoMagUse
{ _amagLoadStatus :: InternalAmmo
, _amagParams :: AmmoParams }
--deriving (Eq, Show, Read) --Generic, Flat)
data HeldParams
@@ -69,10 +72,6 @@ data HeldParams
data AttachParams
= ScrollAttachParams {_scrollAttachParams :: ScrollAttachParams}
| AmmoAttachParams
{_ammoLoadStatus :: InternalAmmo
,_ammoParams :: AmmoParams
}
| TargetAttachParams
data AmmoParams = BulletParams {_ampBullet :: Bullet}