Add flavour text, start smoke, support for different reload sounds
This commit is contained in:
@@ -0,0 +1,106 @@
|
||||
module Dodge.SoundLogic.LoadSound where
|
||||
import qualified Data.IntMap.Strict as IM
|
||||
import qualified SDL.Mixer as Mix
|
||||
|
||||
loadSounds :: IO (IM.IntMap Mix.Chunk)
|
||||
loadSounds = do
|
||||
Mix.openAudio Mix.defaultAudio 128
|
||||
pFireSound <- Mix.load "./data/sound/tap3.wav"
|
||||
click <- Mix.load "./data/sound/click1.wav"
|
||||
reloadSound' <- Mix.load "./data/sound/reload1.wav"
|
||||
tone440 <- Mix.load "./data/sound/tone440.wav"
|
||||
pickupSound' <- Mix.load "./data/sound/pickUp.wav"
|
||||
putdownSound' <- Mix.load "./data/sound/whiteNoiseFadeOut.wav"
|
||||
fireSound' <- Mix.load "./data/sound/fire1.wav"
|
||||
grenadeBang' <- Mix.load "./data/sound/grenade.wav"
|
||||
tapQuiet' <- Mix.load "./data/sound/tapQuiet.wav"
|
||||
twoStep' <- Mix.load "./data/sound/twoStep.wav"
|
||||
healSound' <- Mix.load "./data/sound/heal.wav"
|
||||
doorSound' <- Mix.load "./data/sound/slideDoor.wav"
|
||||
twoStepSlow' <- Mix.load "./data/sound/twoStepSlow.wav"
|
||||
knifeSound' <- Mix.load "./data/sound/knife.wav"
|
||||
buzzSound' <- Mix.load "./data/sound/buzz.wav"
|
||||
hitSound' <- Mix.load "./data/sound/hit1.wav"
|
||||
autoGunSound' <- Mix.load "./data/sound/autoGun.wav"
|
||||
shotgunSound' <- Mix.load "./data/sound/shotgun.wav"
|
||||
teleSound' <- Mix.load "./data/sound/tele.wav"
|
||||
longGunSound' <- Mix.load "./data/sound/longTap.wav"
|
||||
launcherSound' <- Mix.load "./data/sound/tap4.wav"
|
||||
smokeTrailSound' <- Mix.load "./data/sound/missileLaunch.wav"
|
||||
foot1Sound' <- Mix.load "./data/sound/foot1.wav"
|
||||
foot2Sound' <- Mix.load "./data/sound/foot2.wav"
|
||||
lasSound' <- Mix.load "./data/sound/tone440sawtooth.wav"
|
||||
teslaSound' <- Mix.load "./data/sound/Electrical-Welding.wav"
|
||||
crankSlow' <- Mix.load "./data/sound/crankSlow.wav"
|
||||
autoB' <- Mix.load "./data/sound/autoB.wav"
|
||||
mini' <- Mix.load "./data/sound/mini1.wav"
|
||||
impactA' <- Mix.load "./data/sound/Impact-A.wav"
|
||||
impactB' <- Mix.load "./data/sound/Impact-B.wav"
|
||||
impactC' <- Mix.load "./data/sound/Impact-C.wav"
|
||||
impactD' <- Mix.load "./data/sound/Impact-D.wav"
|
||||
glassShat1' <- Mix.load "./data/sound/Glass-Bottle-Shattering-A1.wav"
|
||||
glassShat2' <- Mix.load "./data/sound/Glass-Bottle-Shattering-A2.wav"
|
||||
glassShat3' <- Mix.load "./data/sound/Glass-Bottle-Shattering-A3.wav"
|
||||
glassShat4' <- Mix.load "./data/sound/Glass-Bottle-Shattering-A4.wav"
|
||||
glass1' <- Mix.load "./data/sound/Small-Piece-Of-Glass-Shattering-A1.wav"
|
||||
glass2' <- Mix.load "./data/sound/Small-Piece-Of-Glass-Shattering-A2.wav"
|
||||
glass3' <- Mix.load "./data/sound/Small-Piece-Of-Glass-Shattering-A3.wav"
|
||||
glass4' <- Mix.load "./data/sound/Small-Piece-Of-Glass-Shattering-A4.wav"
|
||||
foamSpray' <- Mix.load "./data/sound/foamSprayLoop.wav"
|
||||
foamSprayFadeOut <- Mix.load "./data/sound/foamSprayFadeOut.wav"
|
||||
sineRaisePitchOneSec <- Mix.load "./data/sound/sineRaisePitchOneSec.wav"
|
||||
sineRaisePitchTwoSec <- Mix.load "./data/sound/sineRaisePitchTwoSec.wav"
|
||||
return $ IM.fromList $ zip [0..]
|
||||
[ pFireSound
|
||||
, click
|
||||
, reloadSound'
|
||||
, tone440
|
||||
, pickupSound'
|
||||
, putdownSound'
|
||||
, fireSound'
|
||||
, grenadeBang'
|
||||
, tapQuiet'
|
||||
, twoStep'
|
||||
, healSound'
|
||||
, doorSound'
|
||||
, twoStepSlow'
|
||||
, knifeSound'
|
||||
, buzzSound'
|
||||
, hitSound' --15
|
||||
, autoGunSound'
|
||||
, shotgunSound'
|
||||
, teleSound'
|
||||
, longGunSound'
|
||||
, launcherSound'
|
||||
, smokeTrailSound'
|
||||
, foot1Sound'
|
||||
, foot2Sound'
|
||||
, lasSound'
|
||||
, teslaSound' --25
|
||||
, crankSlow'
|
||||
, autoB'
|
||||
, mini'
|
||||
, impactA'
|
||||
, impactB' --30
|
||||
, impactC'
|
||||
, impactD'
|
||||
, glassShat1' --33
|
||||
, glassShat2'
|
||||
, glassShat3'
|
||||
, glassShat4'
|
||||
, glass1' --37
|
||||
, glass2'
|
||||
, glass3'
|
||||
, glass4' --40
|
||||
, foamSpray'
|
||||
, foamSprayFadeOut
|
||||
, sineRaisePitchOneSec
|
||||
, sineRaisePitchTwoSec
|
||||
]
|
||||
|
||||
loadMusic :: IO (IM.IntMap Mix.Music)
|
||||
loadMusic = do
|
||||
undercity <- Mix.load "./data/music/firstCompo.mid"
|
||||
return $ IM.fromList $ zip [0..]
|
||||
[ undercity
|
||||
]
|
||||
Reference in New Issue
Block a user