This commit is contained in:
2024-09-30 12:03:23 +01:00
parent 9ad1b8cc5b
commit 65564c993b
11 changed files with 147 additions and 290 deletions
+6 -65
View File
@@ -1,5 +1,5 @@
{-# LANGUAGE DeriveAnyClass #-}
{-# LANGUAGE DeriveGeneric #-}
--{-# LANGUAGE DeriveGeneric #-}
{-# LANGUAGE StrictData #-}
{-# LANGUAGE TemplateHaskell #-}
@@ -16,17 +16,9 @@ import Dodge.Data.Item.Use.Consumption
data ItemType = ItemType
{ _iyBase :: ItemBaseType
-- , _iyModules :: M.Map ModuleSlot ItemModuleType
}
deriving (Eq, Ord, Show, Read)
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data Stack = NoStack | Stack ItAmount
deriving (Eq, Ord, Show, Read)
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data CraftType
= PIPE
| TUBE
@@ -72,17 +64,15 @@ data CraftType
| GASINJECTOR
| FLAKCRAFT
| FRAGCRAFT
| ENERGYBALLCRAFT EnergyBallType
| BULBODYCRAFT BulletEffect
-- | ENERGYBALLCRAFT EnergyBallType
-- | BULBODYCRAFT BulletEffect
| TELEPORTMODULE
| TIMEMODULE
| SIZEMODULE
| GRAVITYMODULE
| TARGETMODULE TargetingType
-- | TARGETMODULE TargetingType
deriving (Eq, Ord, Show, Read)
--deriving (Eq, Ord, Show, Enum, Read) --Generic, Flat)
data ItemBaseType
= HELD {_ibtHeld :: HeldItemType}
| LEFT {_ibtLeft :: LeftItemType}
@@ -95,17 +85,12 @@ data ItemBaseType
| BULLETMOD {_ibtBulletMod :: BulletMod}
deriving (Eq, Ord, Show, Read)
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data AttachType
= ZOOMSCOPE
| BULLETSYNTHESIZER
| REMOTESCREEN
| HOMINGMODULE
| AUGMENTEDHUD
-- | FLETCHINGMODULE
-- | BULPAYLOADATTACH
-- | BULTRAJECTORYATTACH
deriving (Eq, Ord, Show, Read)
data AmmoMagType
@@ -124,8 +109,6 @@ data ConsumableItemType
| EXPLOSIVES
deriving (Eq, Ord, Show, Read)
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data EquipItemType
= MAGSHIELD
| FLAMESHIELD
@@ -147,8 +130,6 @@ data EquipItemType
| AUTODETECTOR Detector
deriving (Eq, Ord, Show, Read)
--deriving (Eq, Ord, Show, Read) --Generic, Flat)
data LeftItemType
= BOOSTER
| STOPWATCH
@@ -172,7 +153,6 @@ data HeldItemType
| MINIGUNX {_xNum :: Int}
| VOLLEYGUN {_xNum :: Int}
| RIFLE
-- | REPEATER
| AUTORIFLE
| BURSTRIFLE
| BANGROD
@@ -180,7 +160,6 @@ data HeldItemType
| AMR
| AUTOAMR
| SNIPERRIFLE
-- | MACHINEGUN
| FLAMESPITTER
| FLAMETHROWER
| FLAMETORRENT
@@ -189,13 +168,9 @@ data HeldItemType
| SPARKGUN
| TESLAGUN
| LASGUN
-- | LASCIRCLE
-- | DUALBEAM
-- | LASWIDE {_xNum :: Int}
| TRACTORGUN
| LAUNCHER
| LAUNCHERX {_xNum :: Int}
-- | REMOTELAUNCHER
| POISONSPRAYER
| DRONELAUNCHER
| SHATTERGUN
@@ -206,47 +181,16 @@ data HeldItemType
| KEYCARD Int
deriving (Eq, Ord, Show, Read) --Generic, Flat)
--data ItemModuleType
-- = EMPTYMODULE
-- | MAGNETMAG
-- | BULPAY BulletPayload
-- | BULBODY BulletEffect
-- | BULTRAJ {_imtBulletTrajectoryType :: BulletTrajectoryType}
-- | TARGET {_imtTargetType :: TargetingType}
-- | INCENDLAS
-- | SPLITLAS
-- | STATICLAS
---- | WEPTELE
-- | LAUNCHHOME
-- | ATTACHTORCH
-- deriving (Eq, Ord, Show, Read) --Generic, Flat)
data Detector
= ITEMDETECTOR
| CREATUREDETECTOR
| WALLDETECTOR
deriving (Eq, Ord, Show, Read) --Generic, Flat)
data ModuleSlot
= ModBulletCollision
| ModBulletPayload
| ModRifleMag
| ModAutoMag
| ModTarget
| ModBulletTrajectory
| ModLauncherHoming
| ModBattery
| ModTeleport
| ModDualBeam
| ModHeldAttach
deriving (Eq, Ord, Show, Read) --Generic, Flat)
makeLenses ''ItemType
makeLenses ''ItemBaseType
makeLenses ''HeldItemType
--makeLenses ''ItemModuleType
makeLenses ''AttachType
deriveJSON defaultOptions ''Stack
deriveJSON defaultOptions ''CraftType
deriveJSON defaultOptions ''ConsumableItemType
deriveJSON defaultOptions ''AmmoMagType
@@ -255,11 +199,8 @@ deriveJSON defaultOptions ''Detector
deriveJSON defaultOptions ''EquipItemType
deriveJSON defaultOptions ''LeftItemType
deriveJSON defaultOptions ''HeldItemType
--deriveJSON defaultOptions ''ItemModuleType
deriveJSON defaultOptions ''ModuleSlot
deriveJSON defaultOptions ''ItemBaseType
deriveJSON defaultOptions ''ItemType
instance ToJSONKey ModuleSlot
instance FromJSONKey ModuleSlot
--instance ToJSONKey ModuleSlot
--instance FromJSONKey ModuleSlot