Cleanup (remove) _soundData, _musicData

This commit is contained in:
2025-06-03 09:08:13 +01:00
parent e952f2abea
commit 8da3e75ac5
6 changed files with 11 additions and 27 deletions
+3 -4
View File
@@ -22,7 +22,6 @@ import Dodge.TestString
import Dodge.Update
--import qualified IntMapHelp as IM
import Loop
import Music
--import Picture
import Preload
import Preload.Render
@@ -121,7 +120,7 @@ playSoundUnlessRewinding u = case w ^. timeFlow of
doSideEffects :: Universe -> IO Universe
doSideEffects u = do
newPlayingSounds <- playSoundUnlessRewinding u
playSoundQueue (_loadedChunks . _soundData $ _preloadData u) (fmap _getSoundID $ u ^. uvSoundQueue)
playSoundQueue (_soundData $ _preloadData u) (fmap _getSoundID $ u ^. uvSoundQueue)
u' <- _uvIOEffects u u
endTicks <- SDL.ticks
return $
@@ -146,7 +145,7 @@ doPreload = do
return
PreloadData
{ _renderData = rData
, _soundData = SoundData{_loadedChunks = lChunks}
, _soundData = lChunks
--, _musicData = MusicData{_loadedMusic = lMusic}
, _musicData = MusicData{_loadedMusic = undefined}
, _musicData = mempty
}
+4 -4
View File
@@ -3,14 +3,14 @@
module Data.Preload where
import Control.Lens
import Data.IntMap.Strict
import Data.Preload.Render
import Music
import Sound.Data
import SDL.Mixer
data PreloadData = PreloadData
{ _renderData :: RenderData
, _soundData :: SoundData
, _musicData :: MusicData
, _soundData :: IntMap Chunk
, _musicData :: IntMap Chunk
}
makeLenses ''PreloadData
-9
View File
@@ -1,9 +0,0 @@
module Music
( MusicData (..)
) where
import qualified SDL.Mixer as Mix
import qualified IntMapHelp as IM
newtype MusicData = MusicData
{ _loadedMusic :: IM.IntMap Mix.Music
}
+2 -2
View File
@@ -2,15 +2,15 @@ module Preload (
cleanUpPreload,
) where
import qualified Data.IntMap.Strict as IM
import Data.Preload
import Preload.Render
import qualified SDL.Mixer as Mix
import Sound.Data
cleanUpPreload :: PreloadData -> IO ()
cleanUpPreload pd = do
cleanUpRenderPreload $ _renderData pd
cleanUpSoundPreload $ _soundData pd
cleanUpSoundPreload :: SoundData -> IO ()
cleanUpSoundPreload :: IM.IntMap Mix.Chunk -> IO ()
cleanUpSoundPreload _ = Mix.closeAudio >> putStrLn "Audio closed"
+2 -2
View File
@@ -52,9 +52,9 @@ In the update:
4. remove sounds that have stopped playing from the map.
-}
playSoundAndUpdate
:: Ord a => SoundData -> M.Map a Sound -> M.Map a Sound -> IO (M.Map a Sound)
:: Ord a => IM.IntMap Mix.Chunk -> M.Map a Sound -> M.Map a Sound -> IO (M.Map a Sound)
playSoundAndUpdate sData oldSounds newSounds
= updateSounds (_loadedChunks sData) (M.unionWith mergeSound oldSounds newSounds)
= updateSounds sData (M.unionWith mergeSound oldSounds newSounds)
mergeSound :: Sound -> Sound -> Sound
mergeSound oldS newS
-6
View File
@@ -11,7 +11,6 @@ import Data.Aeson.TH
import Data.Int (Int16)
import Data.Word (Word8)
import Geometry.Data
import qualified IntMapHelp as IM
import qualified SDL.Mixer as Mix
data SoundStatus = SoundStatus
@@ -33,10 +32,6 @@ data PlayStatus
newtype SoundID = SoundID {_getSoundID :: Int}
deriving (Eq, Ord, Show, Read) --Generic, Flat)
newtype SoundData = SoundData
{ _loadedChunks :: IM.IntMap Mix.Chunk
}
data ToPlaySound = ToPlaySound
{ _toPlaySoundTime :: Maybe Int
, _toPlaySoundStatus :: SoundStatus
@@ -59,7 +54,6 @@ data Sound = Sound
}
deriving (Eq, Ord, Show)
makeLenses ''SoundData
makeLenses ''Sound
makeLenses ''SoundID
makeLenses ''SoundStatus