Stop empty module display

This commit is contained in:
2022-06-08 13:10:04 +01:00
parent bcbfd7d2fa
commit d15f4b441c
9 changed files with 16 additions and 24 deletions
+1 -1
View File
@@ -13,7 +13,7 @@ import Dodge.Data
import Dodge.Item.Amount import Dodge.Item.Amount
import Dodge.Inventory.ItemSpace import Dodge.Inventory.ItemSpace
import Dodge.Combine.Module import Dodge.Combine.Module
import Dodge.Combine.Data --import Dodge.Combine.Data
import Multiset import Multiset
import SimpleTrie import SimpleTrie
+1
View File
@@ -41,6 +41,7 @@ defaultItem = Item
} }
{- | Displays the item name, ammo if loaded, and any selected '_itCharMode'. -} {- | Displays the item name, ammo if loaded, and any selected '_itCharMode'. -}
-- TODO make work on remote launchers
basicItemDisplay :: Item -> [String] basicItemDisplay :: Item -> [String]
basicItemDisplay it = Prelude.take (itSlotsTaken it) $ basicItemDisplay it = Prelude.take (itSlotsTaken it) $
(midPadL 15 ' ' thename (' ' : thenumber) ++ theparam) (midPadL 15 ' ' thename (' ' : thenumber) ++ theparam)
-1
View File
@@ -2,7 +2,6 @@ module Dodge.Default.Weapon
where where
import Dodge.Data import Dodge.Data
import Dodge.Default.Item import Dodge.Default.Item
import Dodge.Item.Weapon.InventoryDisplay
import Dodge.Item.Draw import Dodge.Item.Draw
import Picture import Picture
import ShapePicture import ShapePicture
-1
View File
@@ -2,7 +2,6 @@ module Dodge.Item.Equipment where
import Dodge.Data import Dodge.Data
import Dodge.Item.Draw import Dodge.Item.Draw
import Dodge.Item.Equipment.Shape import Dodge.Item.Equipment.Shape
import Dodge.Item.Weapon.InventoryDisplay
import Dodge.LightSource import Dodge.LightSource
import Dodge.Default import Dodge.Default
import Dodge.Default.Wall import Dodge.Default.Wall
-1
View File
@@ -15,7 +15,6 @@ import Dodge.Item.Weapon.BulletGun.Clip
import Dodge.Data import Dodge.Data
--import Dodge.ChainEffect --import Dodge.ChainEffect
import Dodge.Default.Weapon import Dodge.Default.Weapon
import Dodge.Item.Weapon.InventoryDisplay
import Dodge.Default import Dodge.Default
--import Dodge.Item.Attachment --import Dodge.Item.Attachment
--import Dodge.Item.Weapon.ExtraEffect --import Dodge.Item.Weapon.ExtraEffect
-1
View File
@@ -9,7 +9,6 @@ module Dodge.Item.Weapon.BulletGun.Rod
import Dodge.Data import Dodge.Data
import Dodge.Default.Item import Dodge.Default.Item
import Dodge.Item.Weapon.BulletGun.Clip import Dodge.Item.Weapon.BulletGun.Clip
import Dodge.Item.Weapon.InventoryDisplay
import Dodge.Particle.HitEffect import Dodge.Particle.HitEffect
import Dodge.Particle.Damage import Dodge.Particle.Damage
--import Dodge.ChainEffect --import Dodge.ChainEffect
-14
View File
@@ -1,14 +0,0 @@
{- |
Display of weapon strings in the inventory.
-}
module Dodge.Item.Weapon.InventoryDisplay
where
import Dodge.Data
import Padding
import Dodge.Inventory.ItemSpace
import Dodge.Module
import Data.Maybe
import Data.Sequence
import Control.Lens
-1
View File
@@ -7,7 +7,6 @@ module Dodge.Item.Weapon.Launcher
import Dodge.Data import Dodge.Data
import Dodge.Default import Dodge.Default
import Dodge.Default.Weapon import Dodge.Default.Weapon
import Dodge.Item.Weapon.InventoryDisplay
import Dodge.Item.Location import Dodge.Item.Location
import Dodge.SoundLogic.LoadSound import Dodge.SoundLogic.LoadSound
import Dodge.WorldEvent.Explosion import Dodge.WorldEvent.Explosion
+14 -4
View File
@@ -6,18 +6,28 @@ import Dodge.Data
--import Dodge.Combine.Module --import Dodge.Combine.Module
import qualified Data.Map.Strict as M import qualified Data.Map.Strict as M
import Control.Lens --import Control.Lens
import Data.Maybe --import Data.Maybe
--moduleSizes :: Item -> Int --moduleSizes :: Item -> Int
--moduleSizes = moduleFold (+) (^? modSize) 0 --moduleSizes = moduleFold (+) (^? modSize) 0
moduleSizes :: Item -> Int moduleSizes :: Item -> Int
moduleSizes = length . _iyModules . _itType moduleSizes = sum . fmap moduleSize . _iyModules . _itType
moduleSize :: ItemModuleType -> Int
moduleSize imt = case imt of
EMPTYMODULE -> 0
_ -> 1
--moduleStrings :: Item -> [String] --moduleStrings :: Item -> [String]
--moduleStrings = moduleFold (++) (^? modName) [] --moduleStrings = moduleFold (++) (^? modName) []
moduleStrings :: Item -> [String] moduleStrings :: Item -> [String]
moduleStrings = map show . M.elems . _iyModules . _itType moduleStrings = map moduleName . M.elems . _iyModules . _itType
moduleName :: ItemModuleType -> String
moduleName imt = case imt of
EMPTYMODULE -> ""
_ -> '+':show imt
--moduleFold :: (m -> m -> m) -> (ItemModule -> Maybe m) -> m -> Item -> m --moduleFold :: (m -> m -> m) -> (ItemModule -> Maybe m) -> m -> Item -> m
--moduleFold g f e = foldr (g . fromMaybe e . f) e --moduleFold g f e = foldr (g . fromMaybe e . f) e