Refactor, try to limit dependencies
This commit is contained in:
+28
-33
@@ -1,17 +1,12 @@
|
||||
module Dodge.Module
|
||||
( moduleSizes
|
||||
, moduleStrings
|
||||
, moduleName
|
||||
) where
|
||||
import Dodge.Data
|
||||
--import Dodge.Combine.Module
|
||||
module Dodge.Module (
|
||||
moduleSizes,
|
||||
moduleStrings,
|
||||
moduleName,
|
||||
) where
|
||||
|
||||
import qualified Data.Map.Strict as M
|
||||
--import Control.Lens
|
||||
--import Data.Maybe
|
||||
import Dodge.Data.Item
|
||||
|
||||
--moduleSizes :: Item -> Int
|
||||
--moduleSizes = moduleFold (+) (^? modSize) 0
|
||||
moduleSizes :: Item -> Int
|
||||
moduleSizes = sum . fmap moduleSize . _iyModules . _itType
|
||||
|
||||
@@ -26,30 +21,30 @@ moduleStrings = M.elems . M.mapMaybe moduleName . _iyModules . _itType
|
||||
moduleName :: ItemModuleType -> Maybe String
|
||||
moduleName imt = case imt of
|
||||
EMPTYMODULE -> Nothing
|
||||
DRUMMAG -> Just "+DRUM MAG"
|
||||
BELTMAG -> Just "+BELT FEED"
|
||||
MAGNETMAG -> Just "+MAGNET FEED"
|
||||
INCENDBUL -> Just "+INCENDIARY"
|
||||
BOUNCEBUL -> Just "+BOUNCE"
|
||||
PENBUL -> Just "+PENETRATE"
|
||||
STATICBUL -> Just "+STATIC"
|
||||
CONCUSBUL -> Just "+CONCUSS"
|
||||
TARGCR -> Just "+CREATURETARGETING"
|
||||
TARGLAS -> Just "+LASERTARGETING"
|
||||
TARGPOS -> Just "+POSTIONALTARGETING"
|
||||
MAGNETTRAJ -> Just "+MAGNETTRAJECTORY"
|
||||
FLECHETRAJ -> Just "+FLECHETTETRAJECTORY"
|
||||
BEZIERTRAJ -> Just "+BEZIERTRAJECTORY"
|
||||
INCENDLAS -> Just "+INCENDIARY"
|
||||
SPLITLAS -> Just "+SPLIT"
|
||||
STATICLAS -> Just "+STATIC"
|
||||
WEPTELE -> Just "+DIRECTEDTELE"
|
||||
LAUNCHHOME -> Just "+TARGET HOMING"
|
||||
DRUMMAG -> Just "+DRUM MAG"
|
||||
BELTMAG -> Just "+BELT FEED"
|
||||
MAGNETMAG -> Just "+MAGNET FEED"
|
||||
INCENDBUL -> Just "+INCENDIARY"
|
||||
BOUNCEBUL -> Just "+BOUNCE"
|
||||
PENBUL -> Just "+PENETRATE"
|
||||
STATICBUL -> Just "+STATIC"
|
||||
CONCUSBUL -> Just "+CONCUSS"
|
||||
TARGCR -> Just "+CREATURETARGETING"
|
||||
TARGLAS -> Just "+LASERTARGETING"
|
||||
TARGPOS -> Just "+POSTIONALTARGETING"
|
||||
MAGNETTRAJ -> Just "+MAGNETTRAJECTORY"
|
||||
FLECHETRAJ -> Just "+FLECHETTETRAJECTORY"
|
||||
BEZIERTRAJ -> Just "+BEZIERTRAJECTORY"
|
||||
INCENDLAS -> Just "+INCENDIARY"
|
||||
SPLITLAS -> Just "+SPLIT"
|
||||
STATICLAS -> Just "+STATIC"
|
||||
WEPTELE -> Just "+DIRECTEDTELE"
|
||||
LAUNCHHOME -> Just "+TARGET HOMING"
|
||||
EXTRABATTERY -> Just "+BATTERY"
|
||||
ATTACHTORCH -> Just "+TORCH"
|
||||
ATTACHTORCH -> Just "+TORCH"
|
||||
|
||||
--moduleFold :: (m -> m -> m) -> (ItemModule -> Maybe m) -> m -> Item -> m
|
||||
--moduleFold g f e = foldr (g . fromMaybe e . f) e
|
||||
-- . fmap fromModuleType
|
||||
--moduleFold g f e = foldr (g . fromMaybe e . f) e
|
||||
-- . fmap fromModuleType
|
||||
-- . _iyModules
|
||||
-- . _itType
|
||||
|
||||
Reference in New Issue
Block a user