diff --git a/P3D/Battle/BattleSystemV2/BattleScreen.vb b/P3D/Battle/BattleSystemV2/BattleScreen.vb
index c75838ece..86b99d874 100644
--- a/P3D/Battle/BattleSystemV2/BattleScreen.vb
+++ b/P3D/Battle/BattleSystemV2/BattleScreen.vb
@@ -184,16 +184,16 @@
If CustomBattleMusic = "" OrElse MusicManager.SongExists(CustomBattleMusic) = False Then
If RoamingBattle = True AndAlso RoamingPokemonStorage.MusicLoop <> "" AndAlso MusicManager.SongExists(RoamingPokemonStorage.MusicLoop) = True Then
- MusicManager.PlayMusic(RoamingPokemonStorage.MusicLoop, True, 0.0F, 0.0F)
+ MusicManager.Play(RoamingPokemonStorage.MusicLoop, True, 0.0F)
Else
If MusicManager.SongExists(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild") = True Then
- MusicManager.PlayMusic(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild", True, 0.0F, 0.0F)
+ MusicManager.Play(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild", True, 0.0F)
Else
- MusicManager.PlayMusic("johto_wild", True, 0.0F, 0.0F)
+ MusicManager.Play("johto_wild", True, 0.0F)
End If
End If
Else
- MusicManager.PlayMusic(CustomBattleMusic, True, 0.0F, 0.0F)
+ MusicManager.Play(CustomBattleMusic, True, 0.0F)
End If
Me.defaultMapType = defaultMapType
@@ -325,9 +325,9 @@
End If
If IsPVPBattle = True Then
- MusicManager.PlayMusic("pvp", True, 0.0F, 0.0F)
+ MusicManager.Play("pvp", True, 0.0F)
Else
- MusicManager.PlayMusic(Trainer.GetBattleMusicName(), True, 0.0F, 0.0F)
+ MusicManager.Play(Trainer.GetBattleMusicName(), True, 0.0F)
End If
Me.defaultMapType = defaultMapType
@@ -473,9 +473,9 @@
PlayerStatistics.Track("Safari battles", 1)
If MusicManager.SongExists(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild") = True Then
- MusicManager.PlayMusic(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild", True, 0.0F, 0.0F)
+ MusicManager.Play(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild", True, 0.0F)
Else
- MusicManager.PlayMusic("johto_wild", True, 0.0F, 0.0F)
+ MusicManager.Play("johto_wild", True, 0.0F)
End If
Me.defaultMapType = defaultMapType
@@ -590,9 +590,9 @@
PlayerStatistics.Track("Bug-Catching contest battles", 1)
If MusicManager.SongExists(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild") = True Then
- MusicManager.PlayMusic(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild", True, 0.0F, 0.0F)
+ MusicManager.Play(SavedOverworld.Level.CurrentRegion.Split(CChar(","))(0) & "_wild", True, 0.0F)
Else
- MusicManager.PlayMusic("johto_wild", True, 0.0F, 0.0F)
+ MusicManager.Play("johto_wild", True, 0.0F)
End If
Me.defaultMapType = defaultMapType
diff --git a/P3D/Battle/BattleSystemV2/QueryObjects/PlayMusicQueryObject.vb b/P3D/Battle/BattleSystemV2/QueryObjects/PlayMusicQueryObject.vb
index fadc1b9c2..6933c420c 100644
--- a/P3D/Battle/BattleSystemV2/QueryObjects/PlayMusicQueryObject.vb
+++ b/P3D/Battle/BattleSystemV2/QueryObjects/PlayMusicQueryObject.vb
@@ -15,9 +15,9 @@
Public Overrides Sub Update(BV2Screen As BattleScreen)
If fade = True Then
- MusicManager.PlayMusic(Me._music, True)
+ MusicManager.Play(Me._music, True)
Else
- MusicManager.PlayMusic(Me._music, True, 0.0F, 0.0F)
+ MusicManager.Play(Me._music, True, 0.0F)
End If
End Sub
diff --git a/P3D/Content/Songs/Goldenrod.mp3 b/P3D/Content/Songs/Goldenrod.mp3
new file mode 100644
index 000000000..9bb2c6c72
Binary files /dev/null and b/P3D/Content/Songs/Goldenrod.mp3 differ
diff --git a/P3D/Content/Songs/Goldenrod.ogg b/P3D/Content/Songs/Goldenrod.ogg
deleted file mode 100644
index ea18b5bfa..000000000
Binary files a/P3D/Content/Songs/Goldenrod.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/HallofFame.mp3 b/P3D/Content/Songs/HallofFame.mp3
new file mode 100644
index 000000000..e5a8e034e
Binary files /dev/null and b/P3D/Content/Songs/HallofFame.mp3 differ
diff --git a/P3D/Content/Songs/HallofFame.ogg b/P3D/Content/Songs/HallofFame.ogg
deleted file mode 100644
index 9baa02a23..000000000
Binary files a/P3D/Content/Songs/HallofFame.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/IlexForest.mp3 b/P3D/Content/Songs/IlexForest.mp3
new file mode 100644
index 000000000..b09964ba7
Binary files /dev/null and b/P3D/Content/Songs/IlexForest.mp3 differ
diff --git a/P3D/Content/Songs/IlexForest.ogg b/P3D/Content/Songs/IlexForest.ogg
deleted file mode 100644
index f332b4f61..000000000
Binary files a/P3D/Content/Songs/IlexForest.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/Johto_champion_intro.mp3 b/P3D/Content/Songs/Johto_champion_intro.mp3
new file mode 100644
index 000000000..5a3eaf435
Binary files /dev/null and b/P3D/Content/Songs/Johto_champion_intro.mp3 differ
diff --git a/P3D/Content/Songs/Johto_champion_intro.ogg b/P3D/Content/Songs/Johto_champion_intro.ogg
deleted file mode 100644
index 7aca1217f..000000000
Binary files a/P3D/Content/Songs/Johto_champion_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/Looker_encounter.mp3 b/P3D/Content/Songs/Looker_encounter.mp3
new file mode 100644
index 000000000..4d9443f7d
Binary files /dev/null and b/P3D/Content/Songs/Looker_encounter.mp3 differ
diff --git a/P3D/Content/Songs/Looker_encounter.ogg b/P3D/Content/Songs/Looker_encounter.ogg
deleted file mode 100644
index 347b72198..000000000
Binary files a/P3D/Content/Songs/Looker_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic0.mp3 b/P3D/Content/Songs/RouteMusic0.mp3
new file mode 100644
index 000000000..e53b46920
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic0.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic0.ogg b/P3D/Content/Songs/RouteMusic0.ogg
deleted file mode 100644
index 73937fe0b..000000000
Binary files a/P3D/Content/Songs/RouteMusic0.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic1.mp3 b/P3D/Content/Songs/RouteMusic1.mp3
new file mode 100644
index 000000000..0d821c966
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic1.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic1.ogg b/P3D/Content/Songs/RouteMusic1.ogg
deleted file mode 100644
index 7a839bbab..000000000
Binary files a/P3D/Content/Songs/RouteMusic1.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic10.mp3 b/P3D/Content/Songs/RouteMusic10.mp3
new file mode 100644
index 000000000..917c39637
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic10.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic10.ogg b/P3D/Content/Songs/RouteMusic10.ogg
deleted file mode 100644
index 5d1e01bdf..000000000
Binary files a/P3D/Content/Songs/RouteMusic10.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic11.mp3 b/P3D/Content/Songs/RouteMusic11.mp3
new file mode 100644
index 000000000..4b432f8a2
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic11.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic11.ogg b/P3D/Content/Songs/RouteMusic11.ogg
deleted file mode 100644
index 93d80bb8e..000000000
Binary files a/P3D/Content/Songs/RouteMusic11.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic2.mp3 b/P3D/Content/Songs/RouteMusic2.mp3
new file mode 100644
index 000000000..949281189
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic2.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic2.ogg b/P3D/Content/Songs/RouteMusic2.ogg
deleted file mode 100644
index 329b1853a..000000000
Binary files a/P3D/Content/Songs/RouteMusic2.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic3.mp3 b/P3D/Content/Songs/RouteMusic3.mp3
new file mode 100644
index 000000000..392593d48
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic3.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic3.ogg b/P3D/Content/Songs/RouteMusic3.ogg
deleted file mode 100644
index 9dd19f51e..000000000
Binary files a/P3D/Content/Songs/RouteMusic3.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic4.mp3 b/P3D/Content/Songs/RouteMusic4.mp3
new file mode 100644
index 000000000..288e657a3
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic4.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic4.ogg b/P3D/Content/Songs/RouteMusic4.ogg
deleted file mode 100644
index 93892111f..000000000
Binary files a/P3D/Content/Songs/RouteMusic4.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic5.mp3 b/P3D/Content/Songs/RouteMusic5.mp3
new file mode 100644
index 000000000..102223a8b
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic5.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic5.ogg b/P3D/Content/Songs/RouteMusic5.ogg
deleted file mode 100644
index c79abcdd1..000000000
Binary files a/P3D/Content/Songs/RouteMusic5.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic6.mp3 b/P3D/Content/Songs/RouteMusic6.mp3
new file mode 100644
index 000000000..6acd7e001
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic6.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic6.ogg b/P3D/Content/Songs/RouteMusic6.ogg
deleted file mode 100644
index 43b15338a..000000000
Binary files a/P3D/Content/Songs/RouteMusic6.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic7.mp3 b/P3D/Content/Songs/RouteMusic7.mp3
new file mode 100644
index 000000000..d553527bd
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic7.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic7.ogg b/P3D/Content/Songs/RouteMusic7.ogg
deleted file mode 100644
index f160e892f..000000000
Binary files a/P3D/Content/Songs/RouteMusic7.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic8.mp3 b/P3D/Content/Songs/RouteMusic8.mp3
new file mode 100644
index 000000000..c7c125223
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic8.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic8.ogg b/P3D/Content/Songs/RouteMusic8.ogg
deleted file mode 100644
index a14e42ef3..000000000
Binary files a/P3D/Content/Songs/RouteMusic8.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/RouteMusic9.mp3 b/P3D/Content/Songs/RouteMusic9.mp3
new file mode 100644
index 000000000..5540b18dd
Binary files /dev/null and b/P3D/Content/Songs/RouteMusic9.mp3 differ
diff --git a/P3D/Content/Songs/RouteMusic9.ogg b/P3D/Content/Songs/RouteMusic9.ogg
deleted file mode 100644
index 7f11b4b9e..000000000
Binary files a/P3D/Content/Songs/RouteMusic9.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/alph.mp3 b/P3D/Content/Songs/alph.mp3
new file mode 100644
index 000000000..50c7b750a
Binary files /dev/null and b/P3D/Content/Songs/alph.mp3 differ
diff --git a/P3D/Content/Songs/alph.ogg b/P3D/Content/Songs/alph.ogg
deleted file mode 100644
index 15c678684..000000000
Binary files a/P3D/Content/Songs/alph.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/ancient_ruins.mp3 b/P3D/Content/Songs/ancient_ruins.mp3
new file mode 100644
index 000000000..7001f14c7
Binary files /dev/null and b/P3D/Content/Songs/ancient_ruins.mp3 differ
diff --git a/P3D/Content/Songs/ancient_ruins.ogg b/P3D/Content/Songs/ancient_ruins.ogg
deleted file mode 100644
index 3964bc0e5..000000000
Binary files a/P3D/Content/Songs/ancient_ruins.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/azalea.mp3 b/P3D/Content/Songs/azalea.mp3
new file mode 100644
index 000000000..3f1303214
Binary files /dev/null and b/P3D/Content/Songs/azalea.mp3 differ
diff --git a/P3D/Content/Songs/azalea.ogg b/P3D/Content/Songs/azalea.ogg
deleted file mode 100644
index c617f872f..000000000
Binary files a/P3D/Content/Songs/azalea.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/barktown.mp3 b/P3D/Content/Songs/barktown.mp3
new file mode 100644
index 000000000..25a9786c3
Binary files /dev/null and b/P3D/Content/Songs/barktown.mp3 differ
diff --git a/P3D/Content/Songs/barktown.ogg b/P3D/Content/Songs/barktown.ogg
deleted file mode 100644
index 8068f3576..000000000
Binary files a/P3D/Content/Songs/barktown.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/battlefactory.mp3 b/P3D/Content/Songs/battlefactory.mp3
new file mode 100644
index 000000000..50125b1d0
Binary files /dev/null and b/P3D/Content/Songs/battlefactory.mp3 differ
diff --git a/P3D/Content/Songs/battlefactory.ogg b/P3D/Content/Songs/battlefactory.ogg
deleted file mode 100644
index 4f00251d3..000000000
Binary files a/P3D/Content/Songs/battlefactory.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/battletower.mp3 b/P3D/Content/Songs/battletower.mp3
new file mode 100644
index 000000000..b4fdffd45
Binary files /dev/null and b/P3D/Content/Songs/battletower.mp3 differ
diff --git a/P3D/Content/Songs/battletower.ogg b/P3D/Content/Songs/battletower.ogg
deleted file mode 100644
index b4b2018a2..000000000
Binary files a/P3D/Content/Songs/battletower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/brain_battle.mp3 b/P3D/Content/Songs/brain_battle.mp3
new file mode 100644
index 000000000..d33acf313
Binary files /dev/null and b/P3D/Content/Songs/brain_battle.mp3 differ
diff --git a/P3D/Content/Songs/brain_battle.ogg b/P3D/Content/Songs/brain_battle.ogg
deleted file mode 100644
index 8b68147ef..000000000
Binary files a/P3D/Content/Songs/brain_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/brain_battle_intro.mp3 b/P3D/Content/Songs/brain_battle_intro.mp3
new file mode 100644
index 000000000..56ac580bc
Binary files /dev/null and b/P3D/Content/Songs/brain_battle_intro.mp3 differ
diff --git a/P3D/Content/Songs/brain_battle_intro.ogg b/P3D/Content/Songs/brain_battle_intro.ogg
deleted file mode 100644
index 032d9c43d..000000000
Binary files a/P3D/Content/Songs/brain_battle_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/bugcontest.mp3 b/P3D/Content/Songs/bugcontest.mp3
new file mode 100644
index 000000000..ec91f4af5
Binary files /dev/null and b/P3D/Content/Songs/bugcontest.mp3 differ
diff --git a/P3D/Content/Songs/bugcontest.ogg b/P3D/Content/Songs/bugcontest.ogg
deleted file mode 100644
index f3333b361..000000000
Binary files a/P3D/Content/Songs/bugcontest.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/burnedtower.mp3 b/P3D/Content/Songs/burnedtower.mp3
new file mode 100644
index 000000000..fb7ed56b2
Binary files /dev/null and b/P3D/Content/Songs/burnedtower.mp3 differ
diff --git a/P3D/Content/Songs/burnedtower.ogg b/P3D/Content/Songs/burnedtower.ogg
deleted file mode 100644
index 9ac90540b..000000000
Binary files a/P3D/Content/Songs/burnedtower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/celadon.mp3 b/P3D/Content/Songs/celadon.mp3
new file mode 100644
index 000000000..59349074b
Binary files /dev/null and b/P3D/Content/Songs/celadon.mp3 differ
diff --git a/P3D/Content/Songs/celadon.ogg b/P3D/Content/Songs/celadon.ogg
deleted file mode 100644
index be73393b3..000000000
Binary files a/P3D/Content/Songs/celadon.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/center.mp3 b/P3D/Content/Songs/center.mp3
new file mode 100644
index 000000000..6381d8722
Binary files /dev/null and b/P3D/Content/Songs/center.mp3 differ
diff --git a/P3D/Content/Songs/center.ogg b/P3D/Content/Songs/center.ogg
deleted file mode 100644
index 09f1b4c0d..000000000
Binary files a/P3D/Content/Songs/center.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/cerulean.mp3 b/P3D/Content/Songs/cerulean.mp3
new file mode 100644
index 000000000..89e86095f
Binary files /dev/null and b/P3D/Content/Songs/cerulean.mp3 differ
diff --git a/P3D/Content/Songs/cerulean.ogg b/P3D/Content/Songs/cerulean.ogg
deleted file mode 100644
index 5520e64d1..000000000
Binary files a/P3D/Content/Songs/cerulean.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/cerulean_cave.mp3 b/P3D/Content/Songs/cerulean_cave.mp3
new file mode 100644
index 000000000..1c50e35f7
Binary files /dev/null and b/P3D/Content/Songs/cerulean_cave.mp3 differ
diff --git a/P3D/Content/Songs/cerulean_cave.ogg b/P3D/Content/Songs/cerulean_cave.ogg
deleted file mode 100644
index 7ad14a7f4..000000000
Binary files a/P3D/Content/Songs/cerulean_cave.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/champion_defeat.mp3 b/P3D/Content/Songs/champion_defeat.mp3
new file mode 100644
index 000000000..60bc608a2
Binary files /dev/null and b/P3D/Content/Songs/champion_defeat.mp3 differ
diff --git a/P3D/Content/Songs/champion_defeat.ogg b/P3D/Content/Songs/champion_defeat.ogg
deleted file mode 100644
index 7e18600b0..000000000
Binary files a/P3D/Content/Songs/champion_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/cherrygrove.mp3 b/P3D/Content/Songs/cherrygrove.mp3
new file mode 100644
index 000000000..5bf338877
Binary files /dev/null and b/P3D/Content/Songs/cherrygrove.mp3 differ
diff --git a/P3D/Content/Songs/cherrygrove.ogg b/P3D/Content/Songs/cherrygrove.ogg
deleted file mode 100644
index 5cd89ecc5..000000000
Binary files a/P3D/Content/Songs/cherrygrove.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/cinnabar.mp3 b/P3D/Content/Songs/cinnabar.mp3
new file mode 100644
index 000000000..fb754e3e4
Binary files /dev/null and b/P3D/Content/Songs/cinnabar.mp3 differ
diff --git a/P3D/Content/Songs/cinnabar.ogg b/P3D/Content/Songs/cinnabar.ogg
deleted file mode 100644
index 50da6705b..000000000
Binary files a/P3D/Content/Songs/cinnabar.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/credits.mp3 b/P3D/Content/Songs/credits.mp3
new file mode 100644
index 000000000..79ee8f0ef
Binary files /dev/null and b/P3D/Content/Songs/credits.mp3 differ
diff --git a/P3D/Content/Songs/credits.ogg b/P3D/Content/Songs/credits.ogg
deleted file mode 100644
index 18319bc69..000000000
Binary files a/P3D/Content/Songs/credits.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/dark_cave.mp3 b/P3D/Content/Songs/dark_cave.mp3
new file mode 100644
index 000000000..2db159629
Binary files /dev/null and b/P3D/Content/Songs/dark_cave.mp3 differ
diff --git a/P3D/Content/Songs/dark_cave.ogg b/P3D/Content/Songs/dark_cave.ogg
deleted file mode 100644
index e61499508..000000000
Binary files a/P3D/Content/Songs/dark_cave.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/diglettscave.mp3 b/P3D/Content/Songs/diglettscave.mp3
new file mode 100644
index 000000000..72bdbfdac
Binary files /dev/null and b/P3D/Content/Songs/diglettscave.mp3 differ
diff --git a/P3D/Content/Songs/diglettscave.ogg b/P3D/Content/Songs/diglettscave.ogg
deleted file mode 100644
index 39c01f57f..000000000
Binary files a/P3D/Content/Songs/diglettscave.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/dragonsden.mp3 b/P3D/Content/Songs/dragonsden.mp3
new file mode 100644
index 000000000..240ef14f3
Binary files /dev/null and b/P3D/Content/Songs/dragonsden.mp3 differ
diff --git a/P3D/Content/Songs/dragonsden.ogg b/P3D/Content/Songs/dragonsden.ogg
deleted file mode 100644
index 8532b18d0..000000000
Binary files a/P3D/Content/Songs/dragonsden.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/ecruteak.mp3 b/P3D/Content/Songs/ecruteak.mp3
new file mode 100644
index 000000000..5b7400ef9
Binary files /dev/null and b/P3D/Content/Songs/ecruteak.mp3 differ
diff --git a/P3D/Content/Songs/ecruteak.ogg b/P3D/Content/Songs/ecruteak.ogg
deleted file mode 100644
index 055b2f113..000000000
Binary files a/P3D/Content/Songs/ecruteak.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/elite_defeat.mp3 b/P3D/Content/Songs/elite_defeat.mp3
new file mode 100644
index 000000000..60bc608a2
Binary files /dev/null and b/P3D/Content/Songs/elite_defeat.mp3 differ
diff --git a/P3D/Content/Songs/elite_defeat.ogg b/P3D/Content/Songs/elite_defeat.ogg
deleted file mode 100644
index 1c279809b..000000000
Binary files a/P3D/Content/Songs/elite_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/elmslab.mp3 b/P3D/Content/Songs/elmslab.mp3
new file mode 100644
index 000000000..2f0935ec8
Binary files /dev/null and b/P3D/Content/Songs/elmslab.mp3 differ
diff --git a/P3D/Content/Songs/elmslab.ogg b/P3D/Content/Songs/elmslab.ogg
deleted file mode 100644
index f99e37cf5..000000000
Binary files a/P3D/Content/Songs/elmslab.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/entei_battle.mp3 b/P3D/Content/Songs/entei_battle.mp3
new file mode 100644
index 000000000..0a55dd711
Binary files /dev/null and b/P3D/Content/Songs/entei_battle.mp3 differ
diff --git a/P3D/Content/Songs/entei_battle.ogg b/P3D/Content/Songs/entei_battle.ogg
deleted file mode 100644
index e1613af29..000000000
Binary files a/P3D/Content/Songs/entei_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/entei_battle_intro.mp3 b/P3D/Content/Songs/entei_battle_intro.mp3
new file mode 100644
index 000000000..9f0819348
Binary files /dev/null and b/P3D/Content/Songs/entei_battle_intro.mp3 differ
diff --git a/P3D/Content/Songs/entei_battle_intro.ogg b/P3D/Content/Songs/entei_battle_intro.ogg
deleted file mode 100644
index 53814477d..000000000
Binary files a/P3D/Content/Songs/entei_battle_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/eusine_encounter.mp3 b/P3D/Content/Songs/eusine_encounter.mp3
new file mode 100644
index 000000000..8b8d8237e
Binary files /dev/null and b/P3D/Content/Songs/eusine_encounter.mp3 differ
diff --git a/P3D/Content/Songs/eusine_encounter.ogg b/P3D/Content/Songs/eusine_encounter.ogg
deleted file mode 100644
index 3fdbb7d5b..000000000
Binary files a/P3D/Content/Songs/eusine_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/evolution.mp3 b/P3D/Content/Songs/evolution.mp3
new file mode 100644
index 000000000..6268848da
Binary files /dev/null and b/P3D/Content/Songs/evolution.mp3 differ
diff --git a/P3D/Content/Songs/evolution.ogg b/P3D/Content/Songs/evolution.ogg
deleted file mode 100644
index 822d6fc4d..000000000
Binary files a/P3D/Content/Songs/evolution.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/frontier.mp3 b/P3D/Content/Songs/frontier.mp3
new file mode 100644
index 000000000..b9fc8c533
Binary files /dev/null and b/P3D/Content/Songs/frontier.mp3 differ
diff --git a/P3D/Content/Songs/frontier.ogg b/P3D/Content/Songs/frontier.ogg
deleted file mode 100644
index c98a5ec33..000000000
Binary files a/P3D/Content/Songs/frontier.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/gamecorner.mp3 b/P3D/Content/Songs/gamecorner.mp3
new file mode 100644
index 000000000..137ab0a8d
Binary files /dev/null and b/P3D/Content/Songs/gamecorner.mp3 differ
diff --git a/P3D/Content/Songs/gamecorner.ogg b/P3D/Content/Songs/gamecorner.ogg
deleted file mode 100644
index ab7e734d1..000000000
Binary files a/P3D/Content/Songs/gamecorner.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/gameintro.mp3 b/P3D/Content/Songs/gameintro.mp3
new file mode 100644
index 000000000..4c9f9b97f
Binary files /dev/null and b/P3D/Content/Songs/gameintro.mp3 differ
diff --git a/P3D/Content/Songs/gameintro.ogg b/P3D/Content/Songs/gameintro.ogg
deleted file mode 100644
index 6943a6606..000000000
Binary files a/P3D/Content/Songs/gameintro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/gts.mp3 b/P3D/Content/Songs/gts.mp3
new file mode 100644
index 000000000..0c34aa640
Binary files /dev/null and b/P3D/Content/Songs/gts.mp3 differ
diff --git a/P3D/Content/Songs/gts.ogg b/P3D/Content/Songs/gts.ogg
deleted file mode 100644
index d76bc4580..000000000
Binary files a/P3D/Content/Songs/gts.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/gym.mp3 b/P3D/Content/Songs/gym.mp3
new file mode 100644
index 000000000..d07bfc703
Binary files /dev/null and b/P3D/Content/Songs/gym.mp3 differ
diff --git a/P3D/Content/Songs/gym.ogg b/P3D/Content/Songs/gym.ogg
deleted file mode 100644
index 59ef8f39d..000000000
Binary files a/P3D/Content/Songs/gym.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/ho-oh_battle.mp3 b/P3D/Content/Songs/ho-oh_battle.mp3
new file mode 100644
index 000000000..2a6f17a9c
Binary files /dev/null and b/P3D/Content/Songs/ho-oh_battle.mp3 differ
diff --git a/P3D/Content/Songs/ho-oh_battle.ogg b/P3D/Content/Songs/ho-oh_battle.ogg
deleted file mode 100644
index fc966c2d6..000000000
Binary files a/P3D/Content/Songs/ho-oh_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/ho-oh_battle_intro.mp3 b/P3D/Content/Songs/ho-oh_battle_intro.mp3
new file mode 100644
index 000000000..8ab478d5c
Binary files /dev/null and b/P3D/Content/Songs/ho-oh_battle_intro.mp3 differ
diff --git a/P3D/Content/Songs/ho-oh_battle_intro.ogg b/P3D/Content/Songs/ho-oh_battle_intro.ogg
deleted file mode 100644
index b5f5b28d4..000000000
Binary files a/P3D/Content/Songs/ho-oh_battle_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/indigo.mp3 b/P3D/Content/Songs/indigo.mp3
new file mode 100644
index 000000000..2be10d7d2
Binary files /dev/null and b/P3D/Content/Songs/indigo.mp3 differ
diff --git a/P3D/Content/Songs/indigo.ogg b/P3D/Content/Songs/indigo.ogg
deleted file mode 100644
index 2b18ffd03..000000000
Binary files a/P3D/Content/Songs/indigo.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/Goldenrod.ogg b/P3D/Content/Songs/intro/Goldenrod.ogg
deleted file mode 100644
index 7ae4b8267..000000000
Binary files a/P3D/Content/Songs/intro/Goldenrod.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/IlexForest.mp3 b/P3D/Content/Songs/intro/IlexForest.mp3
new file mode 100644
index 000000000..74249e874
Binary files /dev/null and b/P3D/Content/Songs/intro/IlexForest.mp3 differ
diff --git a/P3D/Content/Songs/intro/IlexForest.ogg b/P3D/Content/Songs/intro/IlexForest.ogg
deleted file mode 100644
index afe76d903..000000000
Binary files a/P3D/Content/Songs/intro/IlexForest.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic1.mp3 b/P3D/Content/Songs/intro/RouteMusic1.mp3
new file mode 100644
index 000000000..490db9d26
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic1.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic1.ogg b/P3D/Content/Songs/intro/RouteMusic1.ogg
deleted file mode 100644
index 90b6a342c..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic1.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic10.mp3 b/P3D/Content/Songs/intro/RouteMusic10.mp3
new file mode 100644
index 000000000..7ec817515
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic10.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic10.ogg b/P3D/Content/Songs/intro/RouteMusic10.ogg
deleted file mode 100644
index 57b5bb1a0..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic10.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic11.mp3 b/P3D/Content/Songs/intro/RouteMusic11.mp3
new file mode 100644
index 000000000..c4f119bfb
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic11.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic11.ogg b/P3D/Content/Songs/intro/RouteMusic11.ogg
deleted file mode 100644
index 48734031e..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic11.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic2.mp3 b/P3D/Content/Songs/intro/RouteMusic2.mp3
new file mode 100644
index 000000000..3facaa3f7
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic2.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic2.ogg b/P3D/Content/Songs/intro/RouteMusic2.ogg
deleted file mode 100644
index 992486b74..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic2.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic3.mp3 b/P3D/Content/Songs/intro/RouteMusic3.mp3
new file mode 100644
index 000000000..881fb1497
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic3.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic3.ogg b/P3D/Content/Songs/intro/RouteMusic3.ogg
deleted file mode 100644
index e349b0f79..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic3.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic4.mp3 b/P3D/Content/Songs/intro/RouteMusic4.mp3
new file mode 100644
index 000000000..4671c95fd
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic4.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic4.ogg b/P3D/Content/Songs/intro/RouteMusic4.ogg
deleted file mode 100644
index bb2c89edb..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic4.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic5.mp3 b/P3D/Content/Songs/intro/RouteMusic5.mp3
new file mode 100644
index 000000000..ba7237eb7
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic5.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic5.ogg b/P3D/Content/Songs/intro/RouteMusic5.ogg
deleted file mode 100644
index b08732195..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic5.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic6.mp3 b/P3D/Content/Songs/intro/RouteMusic6.mp3
new file mode 100644
index 000000000..89042bc92
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic6.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic6.ogg b/P3D/Content/Songs/intro/RouteMusic6.ogg
deleted file mode 100644
index 6df1ee42d..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic6.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic7.mp3 b/P3D/Content/Songs/intro/RouteMusic7.mp3
new file mode 100644
index 000000000..66f12350c
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic7.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic7.ogg b/P3D/Content/Songs/intro/RouteMusic7.ogg
deleted file mode 100644
index 98f3ae2d7..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic7.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/RouteMusic8.mp3 b/P3D/Content/Songs/intro/RouteMusic8.mp3
new file mode 100644
index 000000000..5cff81323
Binary files /dev/null and b/P3D/Content/Songs/intro/RouteMusic8.mp3 differ
diff --git a/P3D/Content/Songs/intro/RouteMusic8.ogg b/P3D/Content/Songs/intro/RouteMusic8.ogg
deleted file mode 100644
index 02fcbb22b..000000000
Binary files a/P3D/Content/Songs/intro/RouteMusic8.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/azalea.mp3 b/P3D/Content/Songs/intro/azalea.mp3
new file mode 100644
index 000000000..fdd43e930
Binary files /dev/null and b/P3D/Content/Songs/intro/azalea.mp3 differ
diff --git a/P3D/Content/Songs/intro/azalea.ogg b/P3D/Content/Songs/intro/azalea.ogg
deleted file mode 100644
index 7ba7463c9..000000000
Binary files a/P3D/Content/Songs/intro/azalea.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/barktown.mp3 b/P3D/Content/Songs/intro/barktown.mp3
new file mode 100644
index 000000000..2e5a9e38d
Binary files /dev/null and b/P3D/Content/Songs/intro/barktown.mp3 differ
diff --git a/P3D/Content/Songs/intro/barktown.ogg b/P3D/Content/Songs/intro/barktown.ogg
deleted file mode 100644
index 8d90c963d..000000000
Binary files a/P3D/Content/Songs/intro/barktown.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/battlefactory.mp3 b/P3D/Content/Songs/intro/battlefactory.mp3
new file mode 100644
index 000000000..cc45b4242
Binary files /dev/null and b/P3D/Content/Songs/intro/battlefactory.mp3 differ
diff --git a/P3D/Content/Songs/intro/battlefactory.ogg b/P3D/Content/Songs/intro/battlefactory.ogg
deleted file mode 100644
index 756b7aca3..000000000
Binary files a/P3D/Content/Songs/intro/battlefactory.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/bugcontest.mp3 b/P3D/Content/Songs/intro/bugcontest.mp3
new file mode 100644
index 000000000..fedd331ab
Binary files /dev/null and b/P3D/Content/Songs/intro/bugcontest.mp3 differ
diff --git a/P3D/Content/Songs/intro/bugcontest.ogg b/P3D/Content/Songs/intro/bugcontest.ogg
deleted file mode 100644
index 7c69a4009..000000000
Binary files a/P3D/Content/Songs/intro/bugcontest.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/burnedtower.mp3 b/P3D/Content/Songs/intro/burnedtower.mp3
new file mode 100644
index 000000000..6f2da8133
Binary files /dev/null and b/P3D/Content/Songs/intro/burnedtower.mp3 differ
diff --git a/P3D/Content/Songs/intro/burnedtower.ogg b/P3D/Content/Songs/intro/burnedtower.ogg
deleted file mode 100644
index dff3900b6..000000000
Binary files a/P3D/Content/Songs/intro/burnedtower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/celadon.mp3 b/P3D/Content/Songs/intro/celadon.mp3
new file mode 100644
index 000000000..b60544f39
Binary files /dev/null and b/P3D/Content/Songs/intro/celadon.mp3 differ
diff --git a/P3D/Content/Songs/intro/celadon.ogg b/P3D/Content/Songs/intro/celadon.ogg
deleted file mode 100644
index deb28fa81..000000000
Binary files a/P3D/Content/Songs/intro/celadon.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/cerulean.mp3 b/P3D/Content/Songs/intro/cerulean.mp3
new file mode 100644
index 000000000..f273e8193
Binary files /dev/null and b/P3D/Content/Songs/intro/cerulean.mp3 differ
diff --git a/P3D/Content/Songs/intro/cerulean.ogg b/P3D/Content/Songs/intro/cerulean.ogg
deleted file mode 100644
index e73d10bcd..000000000
Binary files a/P3D/Content/Songs/intro/cerulean.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/cerulean_cave.mp3 b/P3D/Content/Songs/intro/cerulean_cave.mp3
new file mode 100644
index 000000000..ed00fe972
Binary files /dev/null and b/P3D/Content/Songs/intro/cerulean_cave.mp3 differ
diff --git a/P3D/Content/Songs/intro/cerulean_cave.ogg b/P3D/Content/Songs/intro/cerulean_cave.ogg
deleted file mode 100644
index 7fc1704e6..000000000
Binary files a/P3D/Content/Songs/intro/cerulean_cave.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/champion_defeat.mp3 b/P3D/Content/Songs/intro/champion_defeat.mp3
new file mode 100644
index 000000000..1f8605100
Binary files /dev/null and b/P3D/Content/Songs/intro/champion_defeat.mp3 differ
diff --git a/P3D/Content/Songs/intro/champion_defeat.ogg b/P3D/Content/Songs/intro/champion_defeat.ogg
deleted file mode 100644
index e423adc55..000000000
Binary files a/P3D/Content/Songs/intro/champion_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/cherrygrove.mp3 b/P3D/Content/Songs/intro/cherrygrove.mp3
new file mode 100644
index 000000000..5b5730ce1
Binary files /dev/null and b/P3D/Content/Songs/intro/cherrygrove.mp3 differ
diff --git a/P3D/Content/Songs/intro/cherrygrove.ogg b/P3D/Content/Songs/intro/cherrygrove.ogg
deleted file mode 100644
index 01b2e6f3c..000000000
Binary files a/P3D/Content/Songs/intro/cherrygrove.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/diglettscave.mp3 b/P3D/Content/Songs/intro/diglettscave.mp3
new file mode 100644
index 000000000..42dc85173
Binary files /dev/null and b/P3D/Content/Songs/intro/diglettscave.mp3 differ
diff --git a/P3D/Content/Songs/intro/diglettscave.ogg b/P3D/Content/Songs/intro/diglettscave.ogg
deleted file mode 100644
index afe3a33ff..000000000
Binary files a/P3D/Content/Songs/intro/diglettscave.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/elite_defeat.mp3 b/P3D/Content/Songs/intro/elite_defeat.mp3
new file mode 100644
index 000000000..d19291fb3
Binary files /dev/null and b/P3D/Content/Songs/intro/elite_defeat.mp3 differ
diff --git a/P3D/Content/Songs/intro/elite_defeat.ogg b/P3D/Content/Songs/intro/elite_defeat.ogg
deleted file mode 100644
index 903a4f61c..000000000
Binary files a/P3D/Content/Songs/intro/elite_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/elmslab.mp3 b/P3D/Content/Songs/intro/elmslab.mp3
new file mode 100644
index 000000000..ea33faa30
Binary files /dev/null and b/P3D/Content/Songs/intro/elmslab.mp3 differ
diff --git a/P3D/Content/Songs/intro/elmslab.ogg b/P3D/Content/Songs/intro/elmslab.ogg
deleted file mode 100644
index 0f863d7a9..000000000
Binary files a/P3D/Content/Songs/intro/elmslab.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/entei_battle.mp3 b/P3D/Content/Songs/intro/entei_battle.mp3
new file mode 100644
index 000000000..28f486a4a
Binary files /dev/null and b/P3D/Content/Songs/intro/entei_battle.mp3 differ
diff --git a/P3D/Content/Songs/intro/entei_battle.ogg b/P3D/Content/Songs/intro/entei_battle.ogg
deleted file mode 100644
index 64c123586..000000000
Binary files a/P3D/Content/Songs/intro/entei_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/evolution.mp3 b/P3D/Content/Songs/intro/evolution.mp3
new file mode 100644
index 000000000..67a337b7e
Binary files /dev/null and b/P3D/Content/Songs/intro/evolution.mp3 differ
diff --git a/P3D/Content/Songs/intro/evolution.ogg b/P3D/Content/Songs/intro/evolution.ogg
deleted file mode 100644
index c8aa0b3c3..000000000
Binary files a/P3D/Content/Songs/intro/evolution.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/frontier.mp3 b/P3D/Content/Songs/intro/frontier.mp3
new file mode 100644
index 000000000..ab0ee341c
Binary files /dev/null and b/P3D/Content/Songs/intro/frontier.mp3 differ
diff --git a/P3D/Content/Songs/intro/frontier.ogg b/P3D/Content/Songs/intro/frontier.ogg
deleted file mode 100644
index e52b9f3c9..000000000
Binary files a/P3D/Content/Songs/intro/frontier.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/gamecorner.mp3 b/P3D/Content/Songs/intro/gamecorner.mp3
new file mode 100644
index 000000000..64a179e10
Binary files /dev/null and b/P3D/Content/Songs/intro/gamecorner.mp3 differ
diff --git a/P3D/Content/Songs/intro/gamecorner.ogg b/P3D/Content/Songs/intro/gamecorner.ogg
deleted file mode 100644
index d72d283b1..000000000
Binary files a/P3D/Content/Songs/intro/gamecorner.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/goldenrod.mp3 b/P3D/Content/Songs/intro/goldenrod.mp3
new file mode 100644
index 000000000..1fb53a4ac
Binary files /dev/null and b/P3D/Content/Songs/intro/goldenrod.mp3 differ
diff --git a/P3D/Content/Songs/intro/gts.mp3 b/P3D/Content/Songs/intro/gts.mp3
new file mode 100644
index 000000000..592911db3
Binary files /dev/null and b/P3D/Content/Songs/intro/gts.mp3 differ
diff --git a/P3D/Content/Songs/intro/gts.ogg b/P3D/Content/Songs/intro/gts.ogg
deleted file mode 100644
index a5d06553f..000000000
Binary files a/P3D/Content/Songs/intro/gts.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/ho-oh_battle.mp3 b/P3D/Content/Songs/intro/ho-oh_battle.mp3
new file mode 100644
index 000000000..44b334743
Binary files /dev/null and b/P3D/Content/Songs/intro/ho-oh_battle.mp3 differ
diff --git a/P3D/Content/Songs/intro/ho-oh_battle.ogg b/P3D/Content/Songs/intro/ho-oh_battle.ogg
deleted file mode 100644
index 1586f4fa3..000000000
Binary files a/P3D/Content/Songs/intro/ho-oh_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/johto_elite.mp3 b/P3D/Content/Songs/intro/johto_elite.mp3
new file mode 100644
index 000000000..47c05abe4
Binary files /dev/null and b/P3D/Content/Songs/intro/johto_elite.mp3 differ
diff --git a/P3D/Content/Songs/intro/johto_elite.ogg b/P3D/Content/Songs/intro/johto_elite.ogg
deleted file mode 100644
index 8fb7348c0..000000000
Binary files a/P3D/Content/Songs/intro/johto_elite.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/johto_leader.mp3 b/P3D/Content/Songs/intro/johto_leader.mp3
new file mode 100644
index 000000000..2396c56e8
Binary files /dev/null and b/P3D/Content/Songs/intro/johto_leader.mp3 differ
diff --git a/P3D/Content/Songs/intro/johto_leader.ogg b/P3D/Content/Songs/intro/johto_leader.ogg
deleted file mode 100644
index 190a8dceb..000000000
Binary files a/P3D/Content/Songs/intro/johto_leader.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/johto_rival_encounter.mp3 b/P3D/Content/Songs/intro/johto_rival_encounter.mp3
new file mode 100644
index 000000000..9a1549dab
Binary files /dev/null and b/P3D/Content/Songs/intro/johto_rival_encounter.mp3 differ
diff --git a/P3D/Content/Songs/intro/johto_rival_encounter.ogg b/P3D/Content/Songs/intro/johto_rival_encounter.ogg
deleted file mode 100644
index 9ef0f2ec8..000000000
Binary files a/P3D/Content/Songs/intro/johto_rival_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/johto_rocket.mp3 b/P3D/Content/Songs/intro/johto_rocket.mp3
new file mode 100644
index 000000000..43d2a88b5
Binary files /dev/null and b/P3D/Content/Songs/intro/johto_rocket.mp3 differ
diff --git a/P3D/Content/Songs/intro/johto_rocket.ogg b/P3D/Content/Songs/intro/johto_rocket.ogg
deleted file mode 100644
index f6a1d91bd..000000000
Binary files a/P3D/Content/Songs/intro/johto_rocket.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/johto_trainer.mp3 b/P3D/Content/Songs/intro/johto_trainer.mp3
new file mode 100644
index 000000000..7debedf2f
Binary files /dev/null and b/P3D/Content/Songs/intro/johto_trainer.mp3 differ
diff --git a/P3D/Content/Songs/intro/johto_trainer.ogg b/P3D/Content/Songs/intro/johto_trainer.ogg
deleted file mode 100644
index 8c01bf195..000000000
Binary files a/P3D/Content/Songs/intro/johto_trainer.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/johto_wild.mp3 b/P3D/Content/Songs/intro/johto_wild.mp3
new file mode 100644
index 000000000..946c48a3a
Binary files /dev/null and b/P3D/Content/Songs/intro/johto_wild.mp3 differ
diff --git a/P3D/Content/Songs/intro/johto_wild.ogg b/P3D/Content/Songs/intro/johto_wild.ogg
deleted file mode 100644
index 99eb89af4..000000000
Binary files a/P3D/Content/Songs/intro/johto_wild.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/kanto_leader.mp3 b/P3D/Content/Songs/intro/kanto_leader.mp3
new file mode 100644
index 000000000..9c3c26d8e
Binary files /dev/null and b/P3D/Content/Songs/intro/kanto_leader.mp3 differ
diff --git a/P3D/Content/Songs/intro/kanto_leader.ogg b/P3D/Content/Songs/intro/kanto_leader.ogg
deleted file mode 100644
index ea9c03d76..000000000
Binary files a/P3D/Content/Songs/intro/kanto_leader.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/kanto_trainer.mp3 b/P3D/Content/Songs/intro/kanto_trainer.mp3
new file mode 100644
index 000000000..04390463c
Binary files /dev/null and b/P3D/Content/Songs/intro/kanto_trainer.mp3 differ
diff --git a/P3D/Content/Songs/intro/kanto_trainer.ogg b/P3D/Content/Songs/intro/kanto_trainer.ogg
deleted file mode 100644
index e1176c734..000000000
Binary files a/P3D/Content/Songs/intro/kanto_trainer.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/lavender.mp3 b/P3D/Content/Songs/intro/lavender.mp3
new file mode 100644
index 000000000..483140387
Binary files /dev/null and b/P3D/Content/Songs/intro/lavender.mp3 differ
diff --git a/P3D/Content/Songs/intro/lavender.ogg b/P3D/Content/Songs/intro/lavender.ogg
deleted file mode 100644
index 1c794e2b0..000000000
Binary files a/P3D/Content/Songs/intro/lavender.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/leader_defeat.mp3 b/P3D/Content/Songs/intro/leader_defeat.mp3
new file mode 100644
index 000000000..80266f3ec
Binary files /dev/null and b/P3D/Content/Songs/intro/leader_defeat.mp3 differ
diff --git a/P3D/Content/Songs/intro/leader_defeat.ogg b/P3D/Content/Songs/intro/leader_defeat.ogg
deleted file mode 100644
index 0277e5979..000000000
Binary files a/P3D/Content/Songs/intro/leader_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/lobby.mp3 b/P3D/Content/Songs/intro/lobby.mp3
new file mode 100644
index 000000000..f25057145
Binary files /dev/null and b/P3D/Content/Songs/intro/lobby.mp3 differ
diff --git a/P3D/Content/Songs/intro/lobby.ogg b/P3D/Content/Songs/intro/lobby.ogg
deleted file mode 100644
index 03781d3d0..000000000
Binary files a/P3D/Content/Songs/intro/lobby.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/lugia_battle.mp3 b/P3D/Content/Songs/intro/lugia_battle.mp3
new file mode 100644
index 000000000..4abf18371
Binary files /dev/null and b/P3D/Content/Songs/intro/lugia_battle.mp3 differ
diff --git a/P3D/Content/Songs/intro/lugia_battle.ogg b/P3D/Content/Songs/intro/lugia_battle.ogg
deleted file mode 100644
index c6b1c4a36..000000000
Binary files a/P3D/Content/Songs/intro/lugia_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/mart.mp3 b/P3D/Content/Songs/intro/mart.mp3
new file mode 100644
index 000000000..600dd3e68
Binary files /dev/null and b/P3D/Content/Songs/intro/mart.mp3 differ
diff --git a/P3D/Content/Songs/intro/mart.ogg b/P3D/Content/Songs/intro/mart.ogg
deleted file mode 100644
index 290b2fe2d..000000000
Binary files a/P3D/Content/Songs/intro/mart.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/mary_encounter.mp3 b/P3D/Content/Songs/intro/mary_encounter.mp3
new file mode 100644
index 000000000..217189c75
Binary files /dev/null and b/P3D/Content/Songs/intro/mary_encounter.mp3 differ
diff --git a/P3D/Content/Songs/intro/mary_encounter.ogg b/P3D/Content/Songs/intro/mary_encounter.ogg
deleted file mode 100644
index 163866953..000000000
Binary files a/P3D/Content/Songs/intro/mary_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/oak_encounter.mp3 b/P3D/Content/Songs/intro/oak_encounter.mp3
new file mode 100644
index 000000000..4713d516f
Binary files /dev/null and b/P3D/Content/Songs/intro/oak_encounter.mp3 differ
diff --git a/P3D/Content/Songs/intro/oak_encounter.ogg b/P3D/Content/Songs/intro/oak_encounter.ogg
deleted file mode 100644
index 81794455f..000000000
Binary files a/P3D/Content/Songs/intro/oak_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/oakslab.mp3 b/P3D/Content/Songs/intro/oakslab.mp3
new file mode 100644
index 000000000..c05b89935
Binary files /dev/null and b/P3D/Content/Songs/intro/oakslab.mp3 differ
diff --git a/P3D/Content/Songs/intro/oakslab.ogg b/P3D/Content/Songs/intro/oakslab.ogg
deleted file mode 100644
index 29ba306d2..000000000
Binary files a/P3D/Content/Songs/intro/oakslab.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/pokeflute.mp3 b/P3D/Content/Songs/intro/pokeflute.mp3
new file mode 100644
index 000000000..931956b78
Binary files /dev/null and b/P3D/Content/Songs/intro/pokeflute.mp3 differ
diff --git a/P3D/Content/Songs/intro/pokeflute.ogg b/P3D/Content/Songs/intro/pokeflute.ogg
deleted file mode 100644
index 519c832f7..000000000
Binary files a/P3D/Content/Songs/intro/pokeflute.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/pokemon_lullaby.mp3 b/P3D/Content/Songs/intro/pokemon_lullaby.mp3
new file mode 100644
index 000000000..b4926059e
Binary files /dev/null and b/P3D/Content/Songs/intro/pokemon_lullaby.mp3 differ
diff --git a/P3D/Content/Songs/intro/pokemon_lullaby.ogg b/P3D/Content/Songs/intro/pokemon_lullaby.ogg
deleted file mode 100644
index d1e3506be..000000000
Binary files a/P3D/Content/Songs/intro/pokemon_lullaby.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/pokemon_march.mp3 b/P3D/Content/Songs/intro/pokemon_march.mp3
new file mode 100644
index 000000000..13a0df58f
Binary files /dev/null and b/P3D/Content/Songs/intro/pokemon_march.mp3 differ
diff --git a/P3D/Content/Songs/intro/pokemon_march.ogg b/P3D/Content/Songs/intro/pokemon_march.ogg
deleted file mode 100644
index ec84a8a8a..000000000
Binary files a/P3D/Content/Songs/intro/pokemon_march.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/pvp.mp3 b/P3D/Content/Songs/intro/pvp.mp3
new file mode 100644
index 000000000..5880ac929
Binary files /dev/null and b/P3D/Content/Songs/intro/pvp.mp3 differ
diff --git a/P3D/Content/Songs/intro/pvp.ogg b/P3D/Content/Songs/intro/pvp.ogg
deleted file mode 100644
index 3680eac60..000000000
Binary files a/P3D/Content/Songs/intro/pvp.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/raikou_battle.mp3 b/P3D/Content/Songs/intro/raikou_battle.mp3
new file mode 100644
index 000000000..28f486a4a
Binary files /dev/null and b/P3D/Content/Songs/intro/raikou_battle.mp3 differ
diff --git a/P3D/Content/Songs/intro/raikou_battle.ogg b/P3D/Content/Songs/intro/raikou_battle.ogg
deleted file mode 100644
index 85bbbaa92..000000000
Binary files a/P3D/Content/Songs/intro/raikou_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/ride.mp3 b/P3D/Content/Songs/intro/ride.mp3
new file mode 100644
index 000000000..901745b7f
Binary files /dev/null and b/P3D/Content/Songs/intro/ride.mp3 differ
diff --git a/P3D/Content/Songs/intro/ride.ogg b/P3D/Content/Songs/intro/ride.ogg
deleted file mode 100644
index 23442887d..000000000
Binary files a/P3D/Content/Songs/intro/ride.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/safari.mp3 b/P3D/Content/Songs/intro/safari.mp3
new file mode 100644
index 000000000..66070ee87
Binary files /dev/null and b/P3D/Content/Songs/intro/safari.mp3 differ
diff --git a/P3D/Content/Songs/intro/safari.ogg b/P3D/Content/Songs/intro/safari.ogg
deleted file mode 100644
index 851551c6d..000000000
Binary files a/P3D/Content/Songs/intro/safari.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/show_me_around.mp3 b/P3D/Content/Songs/intro/show_me_around.mp3
new file mode 100644
index 000000000..1023b253f
Binary files /dev/null and b/P3D/Content/Songs/intro/show_me_around.mp3 differ
diff --git a/P3D/Content/Songs/intro/show_me_around.ogg b/P3D/Content/Songs/intro/show_me_around.ogg
deleted file mode 100644
index ed48bda60..000000000
Binary files a/P3D/Content/Songs/intro/show_me_around.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/space_legend_battle.mp3 b/P3D/Content/Songs/intro/space_legend_battle.mp3
new file mode 100644
index 000000000..d6859cb18
Binary files /dev/null and b/P3D/Content/Songs/intro/space_legend_battle.mp3 differ
diff --git a/P3D/Content/Songs/intro/space_legend_battle.ogg b/P3D/Content/Songs/intro/space_legend_battle.ogg
deleted file mode 100644
index 041a11352..000000000
Binary files a/P3D/Content/Songs/intro/space_legend_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/sprout_tower.mp3 b/P3D/Content/Songs/intro/sprout_tower.mp3
new file mode 100644
index 000000000..1e26489b4
Binary files /dev/null and b/P3D/Content/Songs/intro/sprout_tower.mp3 differ
diff --git a/P3D/Content/Songs/intro/sprout_tower.ogg b/P3D/Content/Songs/intro/sprout_tower.ogg
deleted file mode 100644
index 6f793fce7..000000000
Binary files a/P3D/Content/Songs/intro/sprout_tower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/ssaqua.mp3 b/P3D/Content/Songs/intro/ssaqua.mp3
new file mode 100644
index 000000000..e8a182125
Binary files /dev/null and b/P3D/Content/Songs/intro/ssaqua.mp3 differ
diff --git a/P3D/Content/Songs/intro/ssaqua.ogg b/P3D/Content/Songs/intro/ssaqua.ogg
deleted file mode 100644
index da1fe49c3..000000000
Binary files a/P3D/Content/Songs/intro/ssaqua.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/startower.mp3 b/P3D/Content/Songs/intro/startower.mp3
new file mode 100644
index 000000000..d774c0329
Binary files /dev/null and b/P3D/Content/Songs/intro/startower.mp3 differ
diff --git a/P3D/Content/Songs/intro/startower.ogg b/P3D/Content/Songs/intro/startower.ogg
deleted file mode 100644
index e4ba7dc67..000000000
Binary files a/P3D/Content/Songs/intro/startower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/suicune_battle.mp3 b/P3D/Content/Songs/intro/suicune_battle.mp3
new file mode 100644
index 000000000..28f486a4a
Binary files /dev/null and b/P3D/Content/Songs/intro/suicune_battle.mp3 differ
diff --git a/P3D/Content/Songs/intro/suicune_battle.ogg b/P3D/Content/Songs/intro/suicune_battle.ogg
deleted file mode 100644
index 7e37260b6..000000000
Binary files a/P3D/Content/Songs/intro/suicune_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/trainer_encounter.mp3 b/P3D/Content/Songs/intro/trainer_encounter.mp3
new file mode 100644
index 000000000..6fa734fbf
Binary files /dev/null and b/P3D/Content/Songs/intro/trainer_encounter.mp3 differ
diff --git a/P3D/Content/Songs/intro/trainer_encounter.ogg b/P3D/Content/Songs/intro/trainer_encounter.ogg
deleted file mode 100644
index b68711e7e..000000000
Binary files a/P3D/Content/Songs/intro/trainer_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/vermilion.mp3 b/P3D/Content/Songs/intro/vermilion.mp3
new file mode 100644
index 000000000..2cc1d6d9d
Binary files /dev/null and b/P3D/Content/Songs/intro/vermilion.mp3 differ
diff --git a/P3D/Content/Songs/intro/vermilion.ogg b/P3D/Content/Songs/intro/vermilion.ogg
deleted file mode 100644
index b53e3d5fd..000000000
Binary files a/P3D/Content/Songs/intro/vermilion.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/intro/violet.mp3 b/P3D/Content/Songs/intro/violet.mp3
new file mode 100644
index 000000000..a1553cb11
Binary files /dev/null and b/P3D/Content/Songs/intro/violet.mp3 differ
diff --git a/P3D/Content/Songs/intro/violet.ogg b/P3D/Content/Songs/intro/violet.ogg
deleted file mode 100644
index c98e9213a..000000000
Binary files a/P3D/Content/Songs/intro/violet.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_champion.mp3 b/P3D/Content/Songs/johto_champion.mp3
new file mode 100644
index 000000000..83d374170
Binary files /dev/null and b/P3D/Content/Songs/johto_champion.mp3 differ
diff --git a/P3D/Content/Songs/johto_champion.ogg b/P3D/Content/Songs/johto_champion.ogg
deleted file mode 100644
index d336bb6b5..000000000
Binary files a/P3D/Content/Songs/johto_champion.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_elite.mp3 b/P3D/Content/Songs/johto_elite.mp3
new file mode 100644
index 000000000..cd91eacca
Binary files /dev/null and b/P3D/Content/Songs/johto_elite.mp3 differ
diff --git a/P3D/Content/Songs/johto_elite.ogg b/P3D/Content/Songs/johto_elite.ogg
deleted file mode 100644
index beec34f8d..000000000
Binary files a/P3D/Content/Songs/johto_elite.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_elite_intro.mp3 b/P3D/Content/Songs/johto_elite_intro.mp3
new file mode 100644
index 000000000..2065298ff
Binary files /dev/null and b/P3D/Content/Songs/johto_elite_intro.mp3 differ
diff --git a/P3D/Content/Songs/johto_elite_intro.ogg b/P3D/Content/Songs/johto_elite_intro.ogg
deleted file mode 100644
index a77e6f4cd..000000000
Binary files a/P3D/Content/Songs/johto_elite_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_leader.mp3 b/P3D/Content/Songs/johto_leader.mp3
new file mode 100644
index 000000000..f5f3c73be
Binary files /dev/null and b/P3D/Content/Songs/johto_leader.mp3 differ
diff --git a/P3D/Content/Songs/johto_leader.ogg b/P3D/Content/Songs/johto_leader.ogg
deleted file mode 100644
index fd5070df3..000000000
Binary files a/P3D/Content/Songs/johto_leader.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_leader_intro.mp3 b/P3D/Content/Songs/johto_leader_intro.mp3
new file mode 100644
index 000000000..8573a7c35
Binary files /dev/null and b/P3D/Content/Songs/johto_leader_intro.mp3 differ
diff --git a/P3D/Content/Songs/johto_leader_intro.ogg b/P3D/Content/Songs/johto_leader_intro.ogg
deleted file mode 100644
index d05daf876..000000000
Binary files a/P3D/Content/Songs/johto_leader_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_rival.mp3 b/P3D/Content/Songs/johto_rival.mp3
new file mode 100644
index 000000000..8724c23e5
Binary files /dev/null and b/P3D/Content/Songs/johto_rival.mp3 differ
diff --git a/P3D/Content/Songs/johto_rival.ogg b/P3D/Content/Songs/johto_rival.ogg
deleted file mode 100644
index 134638d9e..000000000
Binary files a/P3D/Content/Songs/johto_rival.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_rival_encounter.mp3 b/P3D/Content/Songs/johto_rival_encounter.mp3
new file mode 100644
index 000000000..f3e7e3820
Binary files /dev/null and b/P3D/Content/Songs/johto_rival_encounter.mp3 differ
diff --git a/P3D/Content/Songs/johto_rival_encounter.ogg b/P3D/Content/Songs/johto_rival_encounter.ogg
deleted file mode 100644
index ac55f5854..000000000
Binary files a/P3D/Content/Songs/johto_rival_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_rivalintro.mp3 b/P3D/Content/Songs/johto_rivalintro.mp3
new file mode 100644
index 000000000..0cb49980d
Binary files /dev/null and b/P3D/Content/Songs/johto_rivalintro.mp3 differ
diff --git a/P3D/Content/Songs/johto_rivalintro.ogg b/P3D/Content/Songs/johto_rivalintro.ogg
deleted file mode 100644
index 4d6b528c2..000000000
Binary files a/P3D/Content/Songs/johto_rivalintro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_rocket.mp3 b/P3D/Content/Songs/johto_rocket.mp3
new file mode 100644
index 000000000..53d7c01ca
Binary files /dev/null and b/P3D/Content/Songs/johto_rocket.mp3 differ
diff --git a/P3D/Content/Songs/johto_rocket.ogg b/P3D/Content/Songs/johto_rocket.ogg
deleted file mode 100644
index 4afba6db1..000000000
Binary files a/P3D/Content/Songs/johto_rocket.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_rocket_encounter.mp3 b/P3D/Content/Songs/johto_rocket_encounter.mp3
new file mode 100644
index 000000000..b17326378
Binary files /dev/null and b/P3D/Content/Songs/johto_rocket_encounter.mp3 differ
diff --git a/P3D/Content/Songs/johto_rocket_encounter.ogg b/P3D/Content/Songs/johto_rocket_encounter.ogg
deleted file mode 100644
index 018a8dacf..000000000
Binary files a/P3D/Content/Songs/johto_rocket_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_rocket_intro.mp3 b/P3D/Content/Songs/johto_rocket_intro.mp3
new file mode 100644
index 000000000..44987b93d
Binary files /dev/null and b/P3D/Content/Songs/johto_rocket_intro.mp3 differ
diff --git a/P3D/Content/Songs/johto_rocket_intro.ogg b/P3D/Content/Songs/johto_rocket_intro.ogg
deleted file mode 100644
index f4b865600..000000000
Binary files a/P3D/Content/Songs/johto_rocket_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_trainer.mp3 b/P3D/Content/Songs/johto_trainer.mp3
new file mode 100644
index 000000000..7c7a98ed7
Binary files /dev/null and b/P3D/Content/Songs/johto_trainer.mp3 differ
diff --git a/P3D/Content/Songs/johto_trainer.ogg b/P3D/Content/Songs/johto_trainer.ogg
deleted file mode 100644
index b9f07ab23..000000000
Binary files a/P3D/Content/Songs/johto_trainer.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_trainer_intro.mp3 b/P3D/Content/Songs/johto_trainer_intro.mp3
new file mode 100644
index 000000000..cb4c941c4
Binary files /dev/null and b/P3D/Content/Songs/johto_trainer_intro.mp3 differ
diff --git a/P3D/Content/Songs/johto_trainer_intro.ogg b/P3D/Content/Songs/johto_trainer_intro.ogg
deleted file mode 100644
index 1444ed899..000000000
Binary files a/P3D/Content/Songs/johto_trainer_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_wild.mp3 b/P3D/Content/Songs/johto_wild.mp3
new file mode 100644
index 000000000..b81fada30
Binary files /dev/null and b/P3D/Content/Songs/johto_wild.mp3 differ
diff --git a/P3D/Content/Songs/johto_wild.ogg b/P3D/Content/Songs/johto_wild.ogg
deleted file mode 100644
index ceb1c6d48..000000000
Binary files a/P3D/Content/Songs/johto_wild.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/johto_wild_intro.mp3 b/P3D/Content/Songs/johto_wild_intro.mp3
new file mode 100644
index 000000000..51c17def3
Binary files /dev/null and b/P3D/Content/Songs/johto_wild_intro.mp3 differ
diff --git a/P3D/Content/Songs/johto_wild_intro.ogg b/P3D/Content/Songs/johto_wild_intro.ogg
deleted file mode 100644
index 185da76cb..000000000
Binary files a/P3D/Content/Songs/johto_wild_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kanto_leader.mp3 b/P3D/Content/Songs/kanto_leader.mp3
new file mode 100644
index 000000000..c66d8ad34
Binary files /dev/null and b/P3D/Content/Songs/kanto_leader.mp3 differ
diff --git a/P3D/Content/Songs/kanto_leader.ogg b/P3D/Content/Songs/kanto_leader.ogg
deleted file mode 100644
index 6d54bef4b..000000000
Binary files a/P3D/Content/Songs/kanto_leader.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kanto_leader_intro.mp3 b/P3D/Content/Songs/kanto_leader_intro.mp3
new file mode 100644
index 000000000..183be902a
Binary files /dev/null and b/P3D/Content/Songs/kanto_leader_intro.mp3 differ
diff --git a/P3D/Content/Songs/kanto_leader_intro.ogg b/P3D/Content/Songs/kanto_leader_intro.ogg
deleted file mode 100644
index 535443dd0..000000000
Binary files a/P3D/Content/Songs/kanto_leader_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kanto_trainer.mp3 b/P3D/Content/Songs/kanto_trainer.mp3
new file mode 100644
index 000000000..918dbad6d
Binary files /dev/null and b/P3D/Content/Songs/kanto_trainer.mp3 differ
diff --git a/P3D/Content/Songs/kanto_trainer.ogg b/P3D/Content/Songs/kanto_trainer.ogg
deleted file mode 100644
index e7a2bed1a..000000000
Binary files a/P3D/Content/Songs/kanto_trainer.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kanto_trainer_intro.mp3 b/P3D/Content/Songs/kanto_trainer_intro.mp3
new file mode 100644
index 000000000..c8809a5d4
Binary files /dev/null and b/P3D/Content/Songs/kanto_trainer_intro.mp3 differ
diff --git a/P3D/Content/Songs/kanto_trainer_intro.ogg b/P3D/Content/Songs/kanto_trainer_intro.ogg
deleted file mode 100644
index 318d9fe3b..000000000
Binary files a/P3D/Content/Songs/kanto_trainer_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kanto_wild.mp3 b/P3D/Content/Songs/kanto_wild.mp3
new file mode 100644
index 000000000..3759e6f18
Binary files /dev/null and b/P3D/Content/Songs/kanto_wild.mp3 differ
diff --git a/P3D/Content/Songs/kanto_wild.ogg b/P3D/Content/Songs/kanto_wild.ogg
deleted file mode 100644
index ede9531fa..000000000
Binary files a/P3D/Content/Songs/kanto_wild.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kanto_wild_intro.mp3 b/P3D/Content/Songs/kanto_wild_intro.mp3
new file mode 100644
index 000000000..c7bcdb8ed
Binary files /dev/null and b/P3D/Content/Songs/kanto_wild_intro.mp3 differ
diff --git a/P3D/Content/Songs/kanto_wild_intro.ogg b/P3D/Content/Songs/kanto_wild_intro.ogg
deleted file mode 100644
index 7d2aaad2b..000000000
Binary files a/P3D/Content/Songs/kanto_wild_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kimono.mp3 b/P3D/Content/Songs/kimono.mp3
new file mode 100644
index 000000000..4f7afda6d
Binary files /dev/null and b/P3D/Content/Songs/kimono.mp3 differ
diff --git a/P3D/Content/Songs/kimono.ogg b/P3D/Content/Songs/kimono.ogg
deleted file mode 100644
index e91dc7586..000000000
Binary files a/P3D/Content/Songs/kimono.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/kvictoryroad.mp3 b/P3D/Content/Songs/kvictoryroad.mp3
new file mode 100644
index 000000000..55b081b63
Binary files /dev/null and b/P3D/Content/Songs/kvictoryroad.mp3 differ
diff --git a/P3D/Content/Songs/kvictoryroad.ogg b/P3D/Content/Songs/kvictoryroad.ogg
deleted file mode 100644
index d1f13a9df..000000000
Binary files a/P3D/Content/Songs/kvictoryroad.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/lavender.mp3 b/P3D/Content/Songs/lavender.mp3
new file mode 100644
index 000000000..9f714b5b5
Binary files /dev/null and b/P3D/Content/Songs/lavender.mp3 differ
diff --git a/P3D/Content/Songs/lavender.ogg b/P3D/Content/Songs/lavender.ogg
deleted file mode 100644
index eedb9ce46..000000000
Binary files a/P3D/Content/Songs/lavender.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/leader_defeat.mp3 b/P3D/Content/Songs/leader_defeat.mp3
new file mode 100644
index 000000000..f0c7d2ee7
Binary files /dev/null and b/P3D/Content/Songs/leader_defeat.mp3 differ
diff --git a/P3D/Content/Songs/leader_defeat.ogg b/P3D/Content/Songs/leader_defeat.ogg
deleted file mode 100644
index ac08ff35e..000000000
Binary files a/P3D/Content/Songs/leader_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/lighthouse.mp3 b/P3D/Content/Songs/lighthouse.mp3
new file mode 100644
index 000000000..91ef58c19
Binary files /dev/null and b/P3D/Content/Songs/lighthouse.mp3 differ
diff --git a/P3D/Content/Songs/lighthouse.ogg b/P3D/Content/Songs/lighthouse.ogg
deleted file mode 100644
index cdae05c61..000000000
Binary files a/P3D/Content/Songs/lighthouse.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/lobby.mp3 b/P3D/Content/Songs/lobby.mp3
new file mode 100644
index 000000000..c88e6bdbe
Binary files /dev/null and b/P3D/Content/Songs/lobby.mp3 differ
diff --git a/P3D/Content/Songs/lobby.ogg b/P3D/Content/Songs/lobby.ogg
deleted file mode 100644
index 0ea9fd979..000000000
Binary files a/P3D/Content/Songs/lobby.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/lugia_battle.mp3 b/P3D/Content/Songs/lugia_battle.mp3
new file mode 100644
index 000000000..f09469ed6
Binary files /dev/null and b/P3D/Content/Songs/lugia_battle.mp3 differ
diff --git a/P3D/Content/Songs/lugia_battle.ogg b/P3D/Content/Songs/lugia_battle.ogg
deleted file mode 100644
index 1eef4ab02..000000000
Binary files a/P3D/Content/Songs/lugia_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/lugia_battle_intro.mp3 b/P3D/Content/Songs/lugia_battle_intro.mp3
new file mode 100644
index 000000000..7fe0c2b64
Binary files /dev/null and b/P3D/Content/Songs/lugia_battle_intro.mp3 differ
diff --git a/P3D/Content/Songs/lugia_battle_intro.ogg b/P3D/Content/Songs/lugia_battle_intro.ogg
deleted file mode 100644
index 10a713cdd..000000000
Binary files a/P3D/Content/Songs/lugia_battle_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/mart.mp3 b/P3D/Content/Songs/mart.mp3
new file mode 100644
index 000000000..f4c59a02e
Binary files /dev/null and b/P3D/Content/Songs/mart.mp3 differ
diff --git a/P3D/Content/Songs/mart.ogg b/P3D/Content/Songs/mart.ogg
deleted file mode 100644
index 0552d1e72..000000000
Binary files a/P3D/Content/Songs/mart.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/mary_encounter.mp3 b/P3D/Content/Songs/mary_encounter.mp3
new file mode 100644
index 000000000..6053f7da1
Binary files /dev/null and b/P3D/Content/Songs/mary_encounter.mp3 differ
diff --git a/P3D/Content/Songs/mary_encounter.ogg b/P3D/Content/Songs/mary_encounter.ogg
deleted file mode 100644
index fc3f1266c..000000000
Binary files a/P3D/Content/Songs/mary_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/mtmoonsq.mp3 b/P3D/Content/Songs/mtmoonsq.mp3
new file mode 100644
index 000000000..6ced17097
Binary files /dev/null and b/P3D/Content/Songs/mtmoonsq.mp3 differ
diff --git a/P3D/Content/Songs/mtmoonsq.ogg b/P3D/Content/Songs/mtmoonsq.ogg
deleted file mode 100644
index 95c236e92..000000000
Binary files a/P3D/Content/Songs/mtmoonsq.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/nationalpark.mp3 b/P3D/Content/Songs/nationalpark.mp3
new file mode 100644
index 000000000..f296d514e
Binary files /dev/null and b/P3D/Content/Songs/nationalpark.mp3 differ
diff --git a/P3D/Content/Songs/nationalpark.ogg b/P3D/Content/Songs/nationalpark.ogg
deleted file mode 100644
index a2ca48e86..000000000
Binary files a/P3D/Content/Songs/nationalpark.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/oak_encounter.mp3 b/P3D/Content/Songs/oak_encounter.mp3
new file mode 100644
index 000000000..10410111b
Binary files /dev/null and b/P3D/Content/Songs/oak_encounter.mp3 differ
diff --git a/P3D/Content/Songs/oak_encounter.ogg b/P3D/Content/Songs/oak_encounter.ogg
deleted file mode 100644
index 35453324c..000000000
Binary files a/P3D/Content/Songs/oak_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/oakslab.mp3 b/P3D/Content/Songs/oakslab.mp3
new file mode 100644
index 000000000..933485449
Binary files /dev/null and b/P3D/Content/Songs/oakslab.mp3 differ
diff --git a/P3D/Content/Songs/oakslab.ogg b/P3D/Content/Songs/oakslab.ogg
deleted file mode 100644
index ab05baf6b..000000000
Binary files a/P3D/Content/Songs/oakslab.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/pallet.mp3 b/P3D/Content/Songs/pallet.mp3
new file mode 100644
index 000000000..ab05927dc
Binary files /dev/null and b/P3D/Content/Songs/pallet.mp3 differ
diff --git a/P3D/Content/Songs/pallet.ogg b/P3D/Content/Songs/pallet.ogg
deleted file mode 100644
index 5f03e59f5..000000000
Binary files a/P3D/Content/Songs/pallet.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/pokeflute.mp3 b/P3D/Content/Songs/pokeflute.mp3
new file mode 100644
index 000000000..50044834e
Binary files /dev/null and b/P3D/Content/Songs/pokeflute.mp3 differ
diff --git a/P3D/Content/Songs/pokeflute.ogg b/P3D/Content/Songs/pokeflute.ogg
deleted file mode 100644
index e4ac350b1..000000000
Binary files a/P3D/Content/Songs/pokeflute.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/pokemon_lullaby.mp3 b/P3D/Content/Songs/pokemon_lullaby.mp3
new file mode 100644
index 000000000..af91ff44d
Binary files /dev/null and b/P3D/Content/Songs/pokemon_lullaby.mp3 differ
diff --git a/P3D/Content/Songs/pokemon_lullaby.ogg b/P3D/Content/Songs/pokemon_lullaby.ogg
deleted file mode 100644
index fb2f36793..000000000
Binary files a/P3D/Content/Songs/pokemon_lullaby.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/pokemon_march.mp3 b/P3D/Content/Songs/pokemon_march.mp3
new file mode 100644
index 000000000..7153d37be
Binary files /dev/null and b/P3D/Content/Songs/pokemon_march.mp3 differ
diff --git a/P3D/Content/Songs/pokemon_march.ogg b/P3D/Content/Songs/pokemon_march.ogg
deleted file mode 100644
index a2175fa0e..000000000
Binary files a/P3D/Content/Songs/pokemon_march.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/pvp.mp3 b/P3D/Content/Songs/pvp.mp3
new file mode 100644
index 000000000..65393ccbe
Binary files /dev/null and b/P3D/Content/Songs/pvp.mp3 differ
diff --git a/P3D/Content/Songs/pvp.ogg b/P3D/Content/Songs/pvp.ogg
deleted file mode 100644
index 6ee609155..000000000
Binary files a/P3D/Content/Songs/pvp.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/rHideout.mp3 b/P3D/Content/Songs/rHideout.mp3
new file mode 100644
index 000000000..1e86d2c74
Binary files /dev/null and b/P3D/Content/Songs/rHideout.mp3 differ
diff --git a/P3D/Content/Songs/rHideout.ogg b/P3D/Content/Songs/rHideout.ogg
deleted file mode 100644
index bc16a0f91..000000000
Binary files a/P3D/Content/Songs/rHideout.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/raikou_battle.mp3 b/P3D/Content/Songs/raikou_battle.mp3
new file mode 100644
index 000000000..0a55dd711
Binary files /dev/null and b/P3D/Content/Songs/raikou_battle.mp3 differ
diff --git a/P3D/Content/Songs/raikou_battle.ogg b/P3D/Content/Songs/raikou_battle.ogg
deleted file mode 100644
index 111134dc9..000000000
Binary files a/P3D/Content/Songs/raikou_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/raikou_battle_intro.mp3 b/P3D/Content/Songs/raikou_battle_intro.mp3
new file mode 100644
index 000000000..9f0819348
Binary files /dev/null and b/P3D/Content/Songs/raikou_battle_intro.mp3 differ
diff --git a/P3D/Content/Songs/raikou_battle_intro.ogg b/P3D/Content/Songs/raikou_battle_intro.ogg
deleted file mode 100644
index 5a97b2d85..000000000
Binary files a/P3D/Content/Songs/raikou_battle_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/ride.mp3 b/P3D/Content/Songs/ride.mp3
new file mode 100644
index 000000000..a6c333013
Binary files /dev/null and b/P3D/Content/Songs/ride.mp3 differ
diff --git a/P3D/Content/Songs/ride.ogg b/P3D/Content/Songs/ride.ogg
deleted file mode 100644
index fa847c87f..000000000
Binary files a/P3D/Content/Songs/ride.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/rocket_broadcast.mp3 b/P3D/Content/Songs/rocket_broadcast.mp3
new file mode 100644
index 000000000..1ad7f3a22
Binary files /dev/null and b/P3D/Content/Songs/rocket_broadcast.mp3 differ
diff --git a/P3D/Content/Songs/rocket_broadcast.ogg b/P3D/Content/Songs/rocket_broadcast.ogg
deleted file mode 100644
index 9ec779d2b..000000000
Binary files a/P3D/Content/Songs/rocket_broadcast.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/safari.mp3 b/P3D/Content/Songs/safari.mp3
new file mode 100644
index 000000000..0c6f5399d
Binary files /dev/null and b/P3D/Content/Songs/safari.mp3 differ
diff --git a/P3D/Content/Songs/safari.ogg b/P3D/Content/Songs/safari.ogg
deleted file mode 100644
index 970a923f4..000000000
Binary files a/P3D/Content/Songs/safari.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/safarigate.mp3 b/P3D/Content/Songs/safarigate.mp3
new file mode 100644
index 000000000..5579d67b2
Binary files /dev/null and b/P3D/Content/Songs/safarigate.mp3 differ
diff --git a/P3D/Content/Songs/safarigate.ogg b/P3D/Content/Songs/safarigate.ogg
deleted file mode 100644
index 8e73c3a01..000000000
Binary files a/P3D/Content/Songs/safarigate.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/show_me_around.mp3 b/P3D/Content/Songs/show_me_around.mp3
new file mode 100644
index 000000000..426244639
Binary files /dev/null and b/P3D/Content/Songs/show_me_around.mp3 differ
diff --git a/P3D/Content/Songs/show_me_around.ogg b/P3D/Content/Songs/show_me_around.ogg
deleted file mode 100644
index 1dc7a2746..000000000
Binary files a/P3D/Content/Songs/show_me_around.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/space_legend_battle.mp3 b/P3D/Content/Songs/space_legend_battle.mp3
new file mode 100644
index 000000000..fda5be1c3
Binary files /dev/null and b/P3D/Content/Songs/space_legend_battle.mp3 differ
diff --git a/P3D/Content/Songs/space_legend_battle.ogg b/P3D/Content/Songs/space_legend_battle.ogg
deleted file mode 100644
index c17b6786b..000000000
Binary files a/P3D/Content/Songs/space_legend_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/space_legend_battle_intro.mp3 b/P3D/Content/Songs/space_legend_battle_intro.mp3
new file mode 100644
index 000000000..abe0d2bc8
Binary files /dev/null and b/P3D/Content/Songs/space_legend_battle_intro.mp3 differ
diff --git a/P3D/Content/Songs/space_legend_battle_intro.ogg b/P3D/Content/Songs/space_legend_battle_intro.ogg
deleted file mode 100644
index 2de1418c6..000000000
Binary files a/P3D/Content/Songs/space_legend_battle_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/sprout_tower.mp3 b/P3D/Content/Songs/sprout_tower.mp3
new file mode 100644
index 000000000..bbe9f9fa2
Binary files /dev/null and b/P3D/Content/Songs/sprout_tower.mp3 differ
diff --git a/P3D/Content/Songs/sprout_tower.ogg b/P3D/Content/Songs/sprout_tower.ogg
deleted file mode 100644
index 5aa93b179..000000000
Binary files a/P3D/Content/Songs/sprout_tower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/ssaqua.mp3 b/P3D/Content/Songs/ssaqua.mp3
new file mode 100644
index 000000000..94b7af0f1
Binary files /dev/null and b/P3D/Content/Songs/ssaqua.mp3 differ
diff --git a/P3D/Content/Songs/ssaqua.ogg b/P3D/Content/Songs/ssaqua.ogg
deleted file mode 100644
index ebd1931d5..000000000
Binary files a/P3D/Content/Songs/ssaqua.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/startower.mp3 b/P3D/Content/Songs/startower.mp3
new file mode 100644
index 000000000..b231c2814
Binary files /dev/null and b/P3D/Content/Songs/startower.mp3 differ
diff --git a/P3D/Content/Songs/startower.ogg b/P3D/Content/Songs/startower.ogg
deleted file mode 100644
index cf70fe852..000000000
Binary files a/P3D/Content/Songs/startower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/suicune_battle.mp3 b/P3D/Content/Songs/suicune_battle.mp3
new file mode 100644
index 000000000..0a55dd711
Binary files /dev/null and b/P3D/Content/Songs/suicune_battle.mp3 differ
diff --git a/P3D/Content/Songs/suicune_battle.ogg b/P3D/Content/Songs/suicune_battle.ogg
deleted file mode 100644
index e7df91f19..000000000
Binary files a/P3D/Content/Songs/suicune_battle.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/suicune_battle_intro.mp3 b/P3D/Content/Songs/suicune_battle_intro.mp3
new file mode 100644
index 000000000..9f0819348
Binary files /dev/null and b/P3D/Content/Songs/suicune_battle_intro.mp3 differ
diff --git a/P3D/Content/Songs/suicune_battle_intro.ogg b/P3D/Content/Songs/suicune_battle_intro.ogg
deleted file mode 100644
index 4049f71d0..000000000
Binary files a/P3D/Content/Songs/suicune_battle_intro.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/surf.mp3 b/P3D/Content/Songs/surf.mp3
new file mode 100644
index 000000000..af4a48973
Binary files /dev/null and b/P3D/Content/Songs/surf.mp3 differ
diff --git a/P3D/Content/Songs/surf.ogg b/P3D/Content/Songs/surf.ogg
deleted file mode 100644
index d1cf0c7f7..000000000
Binary files a/P3D/Content/Songs/surf.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/tintower.mp3 b/P3D/Content/Songs/tintower.mp3
new file mode 100644
index 000000000..2a02db986
Binary files /dev/null and b/P3D/Content/Songs/tintower.mp3 differ
diff --git a/P3D/Content/Songs/tintower.ogg b/P3D/Content/Songs/tintower.ogg
deleted file mode 100644
index 2c69416f8..000000000
Binary files a/P3D/Content/Songs/tintower.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/title.mp3 b/P3D/Content/Songs/title.mp3
new file mode 100644
index 000000000..ec5741106
Binary files /dev/null and b/P3D/Content/Songs/title.mp3 differ
diff --git a/P3D/Content/Songs/title.ogg b/P3D/Content/Songs/title.ogg
deleted file mode 100644
index 2aa16d053..000000000
Binary files a/P3D/Content/Songs/title.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/trainer_defeat.mp3 b/P3D/Content/Songs/trainer_defeat.mp3
new file mode 100644
index 000000000..5c439a5dc
Binary files /dev/null and b/P3D/Content/Songs/trainer_defeat.mp3 differ
diff --git a/P3D/Content/Songs/trainer_defeat.ogg b/P3D/Content/Songs/trainer_defeat.ogg
deleted file mode 100644
index 0673e8276..000000000
Binary files a/P3D/Content/Songs/trainer_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/trainer_encounter.mp3 b/P3D/Content/Songs/trainer_encounter.mp3
new file mode 100644
index 000000000..0273a05a5
Binary files /dev/null and b/P3D/Content/Songs/trainer_encounter.mp3 differ
diff --git a/P3D/Content/Songs/trainer_encounter.ogg b/P3D/Content/Songs/trainer_encounter.ogg
deleted file mode 100644
index ffb62ea69..000000000
Binary files a/P3D/Content/Songs/trainer_encounter.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/unown_broadcast.mp3 b/P3D/Content/Songs/unown_broadcast.mp3
new file mode 100644
index 000000000..8d6dd8734
Binary files /dev/null and b/P3D/Content/Songs/unown_broadcast.mp3 differ
diff --git a/P3D/Content/Songs/unown_broadcast.ogg b/P3D/Content/Songs/unown_broadcast.ogg
deleted file mode 100644
index 3ddc374cc..000000000
Binary files a/P3D/Content/Songs/unown_broadcast.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/vermilion.mp3 b/P3D/Content/Songs/vermilion.mp3
new file mode 100644
index 000000000..31bcfc47c
Binary files /dev/null and b/P3D/Content/Songs/vermilion.mp3 differ
diff --git a/P3D/Content/Songs/vermilion.ogg b/P3D/Content/Songs/vermilion.ogg
deleted file mode 100644
index d1e52002c..000000000
Binary files a/P3D/Content/Songs/vermilion.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/violet.mp3 b/P3D/Content/Songs/violet.mp3
new file mode 100644
index 000000000..ad590895e
Binary files /dev/null and b/P3D/Content/Songs/violet.mp3 differ
diff --git a/P3D/Content/Songs/violet.ogg b/P3D/Content/Songs/violet.ogg
deleted file mode 100644
index d4677b42a..000000000
Binary files a/P3D/Content/Songs/violet.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/viridian_forest.mp3 b/P3D/Content/Songs/viridian_forest.mp3
new file mode 100644
index 000000000..a5db0ba15
Binary files /dev/null and b/P3D/Content/Songs/viridian_forest.mp3 differ
diff --git a/P3D/Content/Songs/viridian_forest.ogg b/P3D/Content/Songs/viridian_forest.ogg
deleted file mode 100644
index c03cdcec0..000000000
Binary files a/P3D/Content/Songs/viridian_forest.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/wild_defeat.mp3 b/P3D/Content/Songs/wild_defeat.mp3
new file mode 100644
index 000000000..5ce8f8fc9
Binary files /dev/null and b/P3D/Content/Songs/wild_defeat.mp3 differ
diff --git a/P3D/Content/Songs/wild_defeat.ogg b/P3D/Content/Songs/wild_defeat.ogg
deleted file mode 100644
index ccc538d24..000000000
Binary files a/P3D/Content/Songs/wild_defeat.ogg and /dev/null differ
diff --git a/P3D/Content/Songs/wind.mp3 b/P3D/Content/Songs/wind.mp3
new file mode 100644
index 000000000..8d20da65b
Binary files /dev/null and b/P3D/Content/Songs/wind.mp3 differ
diff --git a/P3D/Content/Songs/wind.ogg b/P3D/Content/Songs/wind.ogg
deleted file mode 100644
index 2e78f65ff..000000000
Binary files a/P3D/Content/Songs/wind.ogg and /dev/null differ
diff --git a/P3D/Core/Core.vb b/P3D/Core/Core.vb
index d9187ecb2..56bd877f7 100644
--- a/P3D/Core/Core.vb
+++ b/P3D/Core/Core.vb
@@ -114,7 +114,6 @@
KeyBindings.LoadKeys()
TextureManager.InitializeTextures()
MusicManager.Setup()
- MusicManager.LoadMusic(False)
Logger.Debug("Loaded content.")
Logger.Debug("Validated files. Result: " & Security.FileValidation.IsValid(True).ToString())
diff --git a/P3D/Core/MainGameFunctions.vb b/P3D/Core/MainGameFunctions.vb
index d8e31f630..116ed0d2c 100644
--- a/P3D/Core/MainGameFunctions.vb
+++ b/P3D/Core/MainGameFunctions.vb
@@ -24,7 +24,7 @@
ElseIf KeyBoardHandler.KeyPressed(KeyBindings.FullScreenKey) AndAlso Core.CurrentScreen.CanGoFullscreen Then
ToggleFullScreen()
ElseIf KeyBoardHandler.KeyPressed(KeyBindings.MuteMusicKey) AndAlso Core.CurrentScreen.CanMuteMusic Then
- MusicManager.Mute(Not MediaPlayer.IsMuted)
+ MusicManager.Muted = Not MediaPlayer.IsMuted
SoundManager.Muted = MediaPlayer.IsMuted
Core.GameOptions.SaveOptions()
Core.CurrentScreen.ToggledMute()
@@ -90,7 +90,7 @@
If Core.GraphicsManager.IsFullScreen = False Then
Dim b As New Drawing.Bitmap(Core.windowSize.Width, Core.windowSize.Height)
Using g As Drawing.Graphics = Drawing.Graphics.FromImage(b)
- g.CopyFromScreen(Core.window.ClientBounds.X, Core.window.ClientBounds.Y, 0, 0, New Drawing.Size(b.Width, b.Height))
+ g.CopyFromScreen(Core.Window.ClientBounds.X, Core.Window.ClientBounds.Y, 0, 0, New Drawing.Size(b.Width, b.Height))
End Using
b.Save(GameController.GamePath & "\screenshots\" & fileName, Drawing.Imaging.ImageFormat.Png)
diff --git a/P3D/Entites/Enviroment/AnimatedBlock.vb b/P3D/Entites/Enviroment/AnimatedBlock.vb
index 18ab1d50a..23396f285 100644
--- a/P3D/Entites/Enviroment/AnimatedBlock.vb
+++ b/P3D/Entites/Enviroment/AnimatedBlock.vb
@@ -211,7 +211,7 @@
SoundManager.PlayPokemonCry(pokemonNumber)
If Screen.Level.IsRadioOn = False OrElse GameJolt.PokegearScreen.StationCanPlay(Screen.Level.SelectedRadioStation) = False Then
- MusicManager.PlayMusic("surf", True)
+ MusicManager.Play("surf", True)
End If
End With
End If
diff --git a/P3D/Entites/Enviroment/Water.vb b/P3D/Entites/Enviroment/Water.vb
index 5a4174bc2..830d0aaf6 100644
--- a/P3D/Entites/Enviroment/Water.vb
+++ b/P3D/Entites/Enviroment/Water.vb
@@ -153,7 +153,7 @@
End If
End Sub
- Protected Overrides Function CalculateCameraDistance(CPosition As Vector3) as Single
+ Protected Overrides Function CalculateCameraDistance(CPosition As Vector3) As Single
Return MyBase.CalculateCameraDistance(CPosition) - 0.2F
End Function
@@ -241,7 +241,7 @@
SoundManager.PlayPokemonCry(pokemonNumber)
If Screen.Level.IsRadioOn = False OrElse GameJolt.PokegearScreen.StationCanPlay(Screen.Level.SelectedRadioStation) = False Then
- MusicManager.PlayMusic("surf", True)
+ MusicManager.Play("surf", True)
End If
End With
End If
diff --git a/P3D/Entites/Other/NPC.vb b/P3D/Entites/Other/NPC.vb
index 2afe175c0..4c7c76574 100644
--- a/P3D/Entites/Other/NPC.vb
+++ b/P3D/Entites/Other/NPC.vb
@@ -377,7 +377,7 @@
CType(Core.CurrentScreen, OverworldScreen).TrainerEncountered = True
If InSightMusic <> "nomusic" And InSightMusic <> "" Then
- MusicManager.PlayMusic(InSightMusic, True, 0.0F, 0.0F)
+ MusicManager.Play(InSightMusic, True, 0.0F)
End If
Screen.Camera.StopMovement()
Me.Movement = Movements.Still
diff --git a/P3D/Network/GameJolt/GTS/GTSMainScreen.vb b/P3D/Network/GameJolt/GTS/GTSMainScreen.vb
index 32e7ad8b2..6d7be1cb8 100644
--- a/P3D/Network/GameJolt/GTS/GTSMainScreen.vb
+++ b/P3D/Network/GameJolt/GTS/GTSMainScreen.vb
@@ -34,7 +34,7 @@
Public Overrides Sub ChangeTo()
PokemonGTSCount = -1
- MusicManager.PlayMusic("gts", True)
+ MusicManager.Play("gts", True)
If GTSVersion <> "1.X" Then
GetGTSPokemonInfo()
diff --git a/P3D/Network/GameJolt/GTS/WonderTradeScreen.vb b/P3D/Network/GameJolt/GTS/WonderTradeScreen.vb
index fe0ac76f1..e65084634 100644
--- a/P3D/Network/GameJolt/GTS/WonderTradeScreen.vb
+++ b/P3D/Network/GameJolt/GTS/WonderTradeScreen.vb
@@ -231,7 +231,7 @@
ownPokemonPosition = Core.windowSize.Height
tState = 0
messageDelay = 220
- MusicManager.PlayMusic("evolution", True)
+ MusicManager.Play("evolution", True)
End If
End Select
End Sub
@@ -409,7 +409,7 @@
Me.ScreenState = ScreenStates.Stopped
Me.DisconnectMessage = "Trade successful. Press any button to exit."
- MusicManager.PlayMusic("gts", True)
+ MusicManager.Play("gts", True)
If Core.Player.Pokemons(Core.Player.Pokemons.Count - 1).CanEvolve(EvolutionCondition.EvolutionTrigger.Trading, "") = True Then
Core.SetScreen(New EvolutionScreen(Me, {Core.Player.Pokemons.Count - 1}.ToList(), Me.SelectedPokemon.Number.ToString(), EvolutionCondition.EvolutionTrigger.Trading))
@@ -425,7 +425,7 @@
End Sub
Public Overrides Sub ChangeTo()
- MusicManager.PlayMusic("gts", True)
+ MusicManager.Play("gts", True)
End Sub
End Class
diff --git a/P3D/Network/GameJolt/RegisterBattleScreen.vb b/P3D/Network/GameJolt/RegisterBattleScreen.vb
index 5da61db56..666f65e74 100644
--- a/P3D/Network/GameJolt/RegisterBattleScreen.vb
+++ b/P3D/Network/GameJolt/RegisterBattleScreen.vb
@@ -37,7 +37,7 @@
Me.MouseVisible = True
Me.CanBePaused = False
- MusicManager.PlayMusic("lobby", True)
+ MusicManager.Play("lobby", True)
Dim APICall As New APICall(AddressOf GotKeys)
APICall.GetKeys(False, "RegisterBattleV" & REGISTERBATTLEVERSION & "|" & Core.GameJoltSave.GameJoltID & "|*")
@@ -646,7 +646,7 @@
Me.OwnTeam.Clear()
Me.TeamDownloaded = False
Me.HasTeamUploaded = False
- MusicManager.PlayMusic("lobby", False)
+ MusicManager.Play("lobby", False)
Core.Player.Pokemons.Clear()
Core.Player.Pokemons.AddRange(TempOriginalTeam.ToArray())
Dim APICall As New APICall(AddressOf GotKeys)
diff --git a/P3D/Network/MysteryEventScreen.vb b/P3D/Network/MysteryEventScreen.vb
index a787fa1ba..edc361703 100644
--- a/P3D/Network/MysteryEventScreen.vb
+++ b/P3D/Network/MysteryEventScreen.vb
@@ -201,7 +201,7 @@
End Sub
Public Overrides Sub ChangeTo()
- MusicManager.PlayMusic("gts", True)
+ MusicManager.Play("gts", True)
End Sub
Public Shared Sub ClearActivatedEvents()
diff --git a/P3D/Network/Servers/DirectTradeScreen.vb b/P3D/Network/Servers/DirectTradeScreen.vb
index 64eea8f9e..03f0cb0b2 100644
--- a/P3D/Network/Servers/DirectTradeScreen.vb
+++ b/P3D/Network/Servers/DirectTradeScreen.vb
@@ -32,7 +32,7 @@
Me.PreScreen = currentScreen
Me.texture = TextureManager.GetTexture("GUI\Menus\General")
- MusicManager.PlayMusic("gts", True)
+ MusicManager.Play("gts", True)
Me.MouseVisible = True
Me.CanBePaused = False
@@ -406,7 +406,7 @@
ownPokemonPosition = Core.windowSize.Height
tState = 0
messageDelay = 220
- MusicManager.PlayMusic("evolution", True)
+ MusicManager.Play("evolution", True)
Me.CanChat = False
PlayerStatistics.Track("Trades", 1)
End Sub
@@ -515,7 +515,7 @@
SentTradeOffer = False
ReceivedTradeOffer = False
- MusicManager.PlayMusic("gts", True)
+ MusicManager.Play("gts", True)
If Core.Player.Pokemons(Core.Player.Pokemons.Count - 1).CanEvolve(EvolutionCondition.EvolutionTrigger.Trading, "") = True Then
Core.SetScreen(New EvolutionScreen(Me, {Core.Player.Pokemons.Count - 1}.ToList(), offeredPokemonID.ToString(), EvolutionCondition.EvolutionTrigger.Trading))
diff --git a/P3D/Network/Servers/PVPLobbyScreen.vb b/P3D/Network/Servers/PVPLobbyScreen.vb
index 845977e99..ab9a31834 100644
--- a/P3D/Network/Servers/PVPLobbyScreen.vb
+++ b/P3D/Network/Servers/PVPLobbyScreen.vb
@@ -38,7 +38,7 @@
Me.Identification = Identifications.PVPLobbyScreen
Me.texture = TextureManager.GetTexture("GUI\Menus\General")
- MusicManager.PlayMusic("lobby", True)
+ MusicManager.Play("lobby", True)
Me.MouseVisible = True
Me.CanBePaused = False
@@ -625,7 +625,7 @@
If BattleSuccessful = True Then
ScreenState = ScreenStates.BattleResults
End If
- MusicManager.PlayMusic("lobby", False)
+ MusicManager.Play("lobby", False)
Core.Player.Pokemons.Clear()
Core.Player.Pokemons.AddRange(TempOriginalTeam.ToArray())
End If
diff --git a/P3D/Overworld/OverworldCamera.vb b/P3D/Overworld/OverworldCamera.vb
index 403b74158..7e37a1560 100644
--- a/P3D/Overworld/OverworldCamera.vb
+++ b/P3D/Overworld/OverworldCamera.vb
@@ -501,7 +501,7 @@ Public Class OverworldCamera
End Sub
Private Sub ClampPitch()
- Pitch = MathHelper.Clamp(Pitch, -1.5f, 1.5f)
+ Pitch = MathHelper.Clamp(Pitch, -1.5F, 1.5F)
End Sub
'Changes the camera's pitch so you can see the stuff that is in front of you. Used when textboxes appear.
@@ -806,7 +806,7 @@ Public Class OverworldCamera
Screen.Level.OverworldPokemon.Visible = False
If Screen.Level.IsRadioOn = False OrElse GameJolt.PokegearScreen.StationCanPlay(Screen.Level.SelectedRadioStation) = False Then
- MusicManager.PlayMusic(Screen.Level.MusicLoop)
+ MusicManager.Play(Screen.Level.MusicLoop)
End If
End If
End If
diff --git a/P3D/Overworld/OverworldScreen.vb b/P3D/Overworld/OverworldScreen.vb
index be54f9768..31499dd91 100644
--- a/P3D/Overworld/OverworldScreen.vb
+++ b/P3D/Overworld/OverworldScreen.vb
@@ -118,12 +118,12 @@ Public Class OverworldScreen
'Play music depending on the player state in the level (surfing and riding):
If Level.Surfing = True Then
- MusicManager.PlayMusic("surf", True) 'Play "surf" when player is surfing.
+ MusicManager.Play("surf", True) 'Play "surf" when player is surfing.
Else
If Level.Riding = True Then
- MusicManager.PlayMusic("ride", True) 'Play "ride" when player is riding.
+ MusicManager.Play("ride", True) 'Play "ride" when player is riding.
Else
- MusicManager.PlayMusic(Level.MusicLoop, True) 'Play default MusicLoop.
+ MusicManager.Play(Level.MusicLoop, True) 'Play default MusicLoop.
End If
End If
@@ -418,7 +418,7 @@ Public Class OverworldScreen
Level.IsRadioOn = False
End If
- MusicManager.PlayMusic(theme, True)
+ MusicManager.Play(theme, True)
End If
End Sub
diff --git a/P3D/Overworld/SecretBase/SecretBaseScreen.vb b/P3D/Overworld/SecretBase/SecretBaseScreen.vb
index 770d5d5b4..38b228b16 100644
--- a/P3D/Overworld/SecretBase/SecretBaseScreen.vb
+++ b/P3D/Overworld/SecretBase/SecretBaseScreen.vb
@@ -23,7 +23,7 @@
Level.Load("|")
Me.SecretBase.LoadSecretBaseFromStore(Screen.Level)
- MusicManager.PlayMusic(Level.MusicLoop, True)
+ MusicManager.Play(Level.MusicLoop, True)
End Sub
Public Overrides Sub Update()
diff --git a/P3D/P3D.vbproj b/P3D/P3D.vbproj
index ac4effe6a..34dac2fd3 100644
--- a/P3D/P3D.vbproj
+++ b/P3D/P3D.vbproj
@@ -85,6 +85,9 @@
..\packages\MonoGame.Framework.DX.3.7.0.1289-develop\lib\net45\MonoGame.Framework.dll
+
+ ..\packages\NAudio.1.8.4\lib\net35\NAudio.dll
+
..\packages\SharpDX.4.0.1\lib\net45\SharpDX.dll
@@ -13480,550 +13483,550 @@
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
-
+
PreserveNewest
@@ -27426,6 +27429,7 @@
+
diff --git a/P3D/Player/Player.vb b/P3D/Player/Player.vb
index bcdff9a2b..fd0d0c724 100644
--- a/P3D/Player/Player.vb
+++ b/P3D/Player/Player.vb
@@ -518,9 +518,6 @@
Localization.ReloadGameModeTokens()
- If GameModeManager.ActiveGameMode.IsDefaultGamemode = False Then
- MusicManager.LoadMusic(True)
- End If
SmashRock.Load()
Badge.Load()
Pokedex.Load()
diff --git a/P3D/Resources/ContentPackManager.vb b/P3D/Resources/ContentPackManager.vb
index f45cd83db..4741e6e92 100644
--- a/P3D/Resources/ContentPackManager.vb
+++ b/P3D/Resources/ContentPackManager.vb
@@ -104,7 +104,7 @@
TextureReplacements.Clear()
TextureResolutions.Clear()
FilesExist.Clear()
- MusicManager.ReloadMusic()
+ MusicManager.Clear()
SoundManager.Clear()
ModelManager.Clear()
TextureManager.TextureList.Clear()
diff --git a/P3D/Resources/Sound/MusicManager.vb b/P3D/Resources/Sound/MusicManager.vb
index e50edd3ab..74642983d 100644
--- a/P3D/Resources/Sound/MusicManager.vb
+++ b/P3D/Resources/Sound/MusicManager.vb
@@ -1,443 +1,407 @@
-Public Class MusicManager
+Imports Microsoft.VisualBasic
+Public Class MusicManager
- Private Shared SongFiles As New Dictionary(Of String, CSong)
+ Private Const NO_MUSIC As String = "*nomusic*" ' contains * as character, which cannot be in a filename
+ Private Const DEFAULT_FADE_SPEED As Single = 0.02F
- Private Shared currentSong As String = ""
+ Private Shared _songs As Dictionary(Of String, SongContainer) = New Dictionary(Of String, SongContainer)()
+ Private Shared _volume As Single = 1.0F
+ Private Shared _lastVolume As Single = 1.0F
+ Private Shared _muted As Boolean = False
- Public Shared SongList As New List(Of String)
+ ' currently playing song
+ Private Shared _currentSongName As String = NO_MUSIC
+ ' if the song in _currentSong is an actual existing song
+ Private Shared _currentSongExists As Boolean = False
+ Private Shared _currentSong As SongContainer = Nothing
+
+ ' time until music playback is paused for sound effect
+ Private Shared _pausedUntil As Date
+ Private Shared _isPausedForSound As Boolean = False
+
+ ' time until the intro of a song plays
+ Private Shared _introEndTime As Date
+ Private Shared _isIntroStarted As Boolean = False
+ ' song that gets played after the intro finished
+ Private Shared _introContinueSong As String
+
+ ' song that plays after fading is finished
+ Private Shared _nextSong As String
+ ' speeds that get added/subtracted from the volume to fade the song
+ Private Shared _fadeSpeed As Single = DEFAULT_FADE_SPEED
+ ' if the song that gets played after fading completed is an intro to another song
+ Private Shared _fadeIntoIntro As Boolean = False
+ Private Shared _isFadingOut As Boolean = False
+ Private Shared _isFadingIn As Boolean = False
+
+ Public Shared Property MasterVolume As Single = 1.0F
+ Public Shared ReadOnly Property CurrentSong As SongContainer
+ Get
+ Return _currentSong
+ End Get
+ End Property
+
+ Public Shared Property Muted As Boolean
+ Get
+ Return _muted
+ End Get
+ Set(value As Boolean)
+ If _muted <> value Then
+ _muted = value
+ MediaPlayer.IsMuted = value
+
+ If _muted = True Then
+ MediaPlayer.Pause()
+ Core.GameMessage.ShowMessage(Localization.GetString("game_message_music_off"), 12, FontManager.MainFont, Color.White)
+ Else
+ ResumePlayback()
+ Core.GameMessage.ShowMessage(Localization.GetString("game_message_music_on"), 12, FontManager.MainFont, Color.White)
+ End If
+ End If
+ End Set
+ End Property
Public Shared Sub Setup()
MasterVolume = 1.0F
MediaPlayer.Volume = MasterVolume
- Volume = 1.0F
- NextSong = ""
- FadeInSpeed = 0.0F
- FadeOutSpeed = 0.0F
- FadeOut = False
- FadeIn = False
- MediaPlayer.IsRepeating = False
- End Sub
-
- Class CSong
-
- Private _song As Song
- Private _origin As String
-
- Public Sub New(ByVal Song As Song, ByVal Origin As String)
- Me._song = Song
- Me._origin = Origin
- End Sub
-
- Public Property Song() As Song
- Get
- Return Me._song
- End Get
- Set(value As Song)
- Me._song = value
- End Set
- End Property
-
- Public Property Origin() As String
- Get
- Return Me._origin
- End Get
- Set(value As String)
- Me._origin = value
- End Set
- End Property
-
- Public ReadOnly Property IsStandardSong() As Boolean
- Get
- Return (Me.Origin = "Content")
- End Get
- End Property
-
- End Class
-
- Private Shared Function AddSong(ByVal Name As String, ByVal forceReplace As Boolean) As Boolean
- Try
- Dim cContent As ContentManager = ContentPackManager.GetContentManager("Songs\" & Name, ".xnb,.mp3,.ogg")
-
- Dim loadSong As Boolean = False
- Dim removeSong As Boolean = False
-
- If SongFiles.ContainsKey(Name.ToLower()) = False Then
- loadSong = True
- ElseIf forceReplace = True And SongFiles(Name.ToLower()).IsStandardSong = True Then
- removeSong = True
- loadSong = True
- End If
-
- If loadSong = True Then
- Dim song As Song = Nothing
-
- If System.IO.File.Exists(GameController.GamePath & "\" & cContent.RootDirectory & "\Songs\" & Name & ".xnb") = False Then
- If System.IO.File.Exists(GameController.GamePath & "\" & cContent.RootDirectory & "\Songs\" & Name & ".mp3") = True Then
- Dim ctor = GetType(Song).GetConstructor(System.Reflection.BindingFlags.NonPublic Or System.Reflection.BindingFlags.Instance, Nothing, {GetType(String), GetType(String), GetType(Integer)}, Nothing)
- Dim filePath As String = GameController.GamePath & "\" & cContent.RootDirectory & "\Songs\" & Name & ".mp3"
- song = CType(ctor.Invoke({Name, filePath, 0}), Song)
- ElseIf System.IO.File.Exists(GameController.GamePath & "\" & cContent.RootDirectory & "\Songs\" & Name & ".ogg") = True Then
- Dim filePath As String = cContent.RootDirectory & "\Songs\" & Name & ".ogg"
- Dim source = New Uri(filePath, UriKind.Relative)
- song = Song.FromUri(Name, source)
- Else
- Logger.Log(Logger.LogTypes.Warning, "MusicManager.vb: Song at """ & GameController.GamePath & "\" & cContent.RootDirectory & "\Songs\" & Name & """ was not found!")
- Return False
- End If
- Else
- song = cContent.Load(Of Song)("Songs\" & Name)
- End If
-
- If Not song Is Nothing Then
- If removeSong = True Then
- SongFiles.Remove(Name.ToLower())
- End If
- SongFiles.Add(Name.ToLower(), New CSong(song, cContent.RootDirectory))
- End If
- End If
- Catch ex As Exception
- Logger.Log(Logger.LogTypes.Warning, "MusicManager.vb: File at ""Songs\" & Name & """ is not a valid song file!")
- Return False
- End Try
- Return True
- End Function
-
- Public Shared Function GetSong(ByVal Name As String, ByVal LogErrors As Boolean) As CSong
- 'Exceptions due to old definitions:
- Select Case Name.ToLower()
- Case "welcome"
- Name = "RouteMusic1"
- Case "battle"
- Name = "johto_wild"
- Case "battleintro", "johto_battle_intro"
- Name = "battle_intro"
- Case "darkcave"
- Name = "dark_cave"
- Case "showmearound"
- Name = "show_me_around"
- Case "sprouttower"
- Name = "sprout_tower"
- Case "johto_rival_intro"
- Name = "johto_rivalintro"
- Case "johto_rival_appear"
- Name = "johto_rival_encounter"
- Case "ilex_forest", "union_cave", "mt_mortar", "whirlpool_islands", "tohjo_falls"
- Name = "IlexForest"
- End Select
-
- If SongFiles.ContainsKey(Name.ToLower()) = True Then
- Return SongFiles(Name.ToLower())
- Else
- If TryAddGameModeMusic(Name) = True Then
- Return SongFiles(Name.ToLower())
- End If
- If Name.ToLower() <> "nomusic" Then
- Logger.Log(Logger.LogTypes.Warning, "MusicManager.vb: Cannot find music file """ & Name & """. Return nothing.")
- End If
- Return Nothing
- End If
- End Function
-
- Private Shared Function TryAddGameModeMusic(ByVal Name As String) As Boolean
- Dim musicfileXNB As String = GameController.GamePath & GameModeManager.ActiveGameMode.ContentPath & "Songs\" & Name & ".xnb"
- Dim musicfileMP3 As String = GameController.GamePath & GameModeManager.ActiveGameMode.ContentPath & "Songs\" & Name & ".mp3"
- Dim musicfileOGG As String = GameController.GamePath & GameModeManager.ActiveGameMode.ContentPath & "Songs\" & Name & ".ogg"
-
- If System.IO.File.Exists(musicfileXNB) OrElse System.IO.File.Exists(musicfileMP3) OrElse System.IO.File.Exists(musicfileOGG) Then
- Return AddSong(Name, False)
- End If
- Return False
- End Function
-
- Public Shared Sub LoadMusic(ByVal forceReplace As Boolean)
+ _volume = 1.0F
+ _nextSong = ""
+ _fadeSpeed = DEFAULT_FADE_SPEED
+ _isFadingOut = False
+ _isFadingIn = False
+ _muted = False
MediaPlayer.IsRepeating = True
-
- For Each musicFile As String In System.IO.Directory.GetFiles(GameController.GamePath & "\Content\Songs\", "*.*", IO.SearchOption.AllDirectories)
- If musicFile.EndsWith(".xnb") = True Then
- Dim isIntro As Boolean = False
- If musicFile.Contains("\Songs\intro\") = True Then
- isIntro = True
- End If
-
- If isIntro = False Then
- musicFile = System.IO.Path.GetFileNameWithoutExtension(musicFile)
- Else
- musicFile = "intro\" & System.IO.Path.GetFileNameWithoutExtension(musicFile)
- End If
-
- AddSong(musicFile, forceReplace)
- End If
- Next
- If Core.GameOptions.ContentPackNames.Count > 0 Then
- For Each c As String In Core.GameOptions.ContentPackNames
- Dim path As String = GameController.GamePath & "\ContentPacks\" & c & "\Songs\"
- If System.IO.Directory.Exists(path) = True Then
- For Each musicFile As String In System.IO.Directory.GetFiles(path, "*.*", IO.SearchOption.AllDirectories)
- If musicFile.EndsWith(".xnb") = True Then
- Dim isIntro As Boolean = False
- If musicFile.Contains("\Songs\intro\") = True Then
- isIntro = True
- End If
-
- If isIntro = False Then
- musicFile = System.IO.Path.GetFileNameWithoutExtension(musicFile)
- Else
- musicFile = "intro\" & System.IO.Path.GetFileNameWithoutExtension(musicFile)
- End If
- AddSong(musicFile, forceReplace)
- End If
- Next
- End If
- Next
- End If
End Sub
- Private Shared SongExistFlag As Boolean = True
-
- Public Shared Sub PlayMusic(ByVal Song As String)
- PlayMusic(Song, 0.0F, 0.0F)
+ Public Shared Sub Clear()
+ _songs.Clear()
End Sub
- Public Shared Sub PlayMusic(ByVal Song As String, ByVal SearchForIntro As Boolean)
- PlayMusic(Song, SearchForIntro, 0.02F, 0.02F)
+ Public Shared Sub ClearCurrentlyPlaying()
+ ' cleans all remains of currently playing songs
+ _currentSongExists = False
+ _currentSong = Nothing
+ _currentSongName = NO_MUSIC
+ _isIntroStarted = False
End Sub
Public Shared Sub PlayNoMusic()
- MediaPlayer.Stop()
- currentSong = "nomusic"
+ ' fades out current track and sets to NO_MUSIC
+ Play(NO_MUSIC)
End Sub
- Public Shared Sub IgnoreLastSong()
- currentSong = "nomusic"
- SongList.Add("nomusic")
- IntroStarted = False
- End Sub
- Public Shared Sub PlayMusic(ByVal Song As String, ByVal SearchForIntro As Boolean, ByVal NewFadeInSpeed As Single, ByVal NewFadeOutSpeed As Single)
- Dim lastSong As String = "nomusic"
-
- If IntroStarted = True Then
- lastSong = IntroContinue
- Else
- If SongList.Count > 0 Then
- lastSong = SongList(SongList.Count - 1)
- End If
- End If
- MediaPlayer.IsRepeating = True
- If SearchForIntro = True And lastSong.ToLower() <> Song.ToLower() Then
- If SongFiles.Keys.Contains("intro\" & Song.ToLower()) = True Then
- If SongFiles("intro\" & Song.ToLower()).Origin = SongFiles(Song.ToLower()).Origin Then
- IntroEndTime = Date.Now.AddSeconds(-1) + SongFiles("intro\" & Song.ToLower()).Song.Duration
-
- PlayMusic("intro\" & Song.ToLower(), NewFadeInSpeed, NewFadeOutSpeed)
- MediaPlayer.IsRepeating = False
- IntroContinue = Song
- IntroStarted = True
- If NewFadeInSpeed > 0.0F And NewFadeOutSpeed > 0.0F Then
- FadeIntoIntro = True
- End If
- Else
- FadeIntoIntro = False
- PlayMusic(Song, NewFadeInSpeed, NewFadeOutSpeed)
- End If
- Else
- FadeIntoIntro = False
- PlayMusic(Song, NewFadeInSpeed, NewFadeOutSpeed)
- End If
- Else
- If Not (SearchForIntro = True And IntroStarted = True And IntroContinue.ToLower() = Song.ToLower()) Then
- FadeIntoIntro = False
- PlayMusic(Song, NewFadeInSpeed, NewFadeOutSpeed)
- End If
- End If
- End Sub
-
- Public Shared Sub PlayMusic(ByVal Song As String, ByVal NewFadeInSpeed As Single, ByVal NewFadeOutSpeed As Single)
- If FadeOut = True Then
- If currentSong.ToLower() = Song.ToLower() And NextSong.ToLower() <> Song.ToLower() Then
- NextSong = Song.ToLower()
- Exit Sub
- End If
- End If
-
- If currentSong = "" Or Song.ToLower() <> currentSong.ToLower() Then
- If NewFadeInSpeed > 0.0F And NewFadeOutSpeed > 0.0F Then
- If currentSong = "" Then
- FadeInSpeed = NewFadeInSpeed
- FadeIn = True
- Volume = 0.0F
- PlayTrack(Song)
- Else
- NextSong = Song
- FadeInSpeed = NewFadeInSpeed
- FadeOutSpeed = NewFadeOutSpeed
- FadeOut = True
- FadeIn = False
- End If
- Else
- Volume = 1.0F
- FadeIn = False
- FadeOut = False
- PlayTrack(Song)
- End If
- End If
- End Sub
-
- Private Shared Sub PlayTrack(ByVal song As String)
- Dim s As CSong = Nothing
- s = GetSong(song, True)
-
- MediaPlayer.Stop()
-
- Logger.Debug("Play [" & song & "]")
-
- IntroStarted = False
-
- If Not s Is Nothing Then
- MediaPlayer.Play(s.Song)
-
- If MediaPlayer.IsMuted = True Then
- MediaPlayer.Pause()
- End If
-
- SongList.Add(song)
- SongExistFlag = True
- Else
- SongList.Add("")
- SongExistFlag = False
- End If
-
- currentSong = song
- End Sub
-
- Public Shared Sub Mute(ByVal mute As Boolean)
- If MediaPlayer.IsMuted <> mute Then
- MediaPlayer.IsMuted = mute
-
- If MediaPlayer.IsMuted = True Then
- MediaPlayer.Pause()
- Core.GameMessage.ShowMessage(Localization.GetString("game_message_music_off"), 12, FontManager.MainFont, Color.White)
- Else
- If SongExistFlag = True Then
- MediaPlayer.Resume()
- End If
- Core.GameMessage.ShowMessage(Localization.GetString("game_message_music_on"), 12, FontManager.MainFont, Color.White)
- End If
- End If
- End Sub
-
- Public Shared Sub ReloadMusic()
- SongFiles.Clear()
- LoadMusic(False)
- End Sub
-
- 'Intro:
- Shared StartTime As Date
- Shared PausedForSound As Boolean = False
- Shared IntroEndTime As Date
- Shared IntroStarted As Boolean = False
- Shared IntroContinue As String = ""
-
- 'Fading:
- Shared NextSong As String
-
- Shared FadeInSpeed As Single
- Shared FadeOutSpeed As Single
-
- Shared FadeOut As Boolean = False
- Shared FadeIn As Boolean = False
- Shared FadeIntoIntro As Boolean = False
-
- Shared Volume As Single = 1.0F
- Public Shared MasterVolume As Single = 1.0F 'Actual volume people can change
Public Shared Sub Update()
- If PausedForSound = True Then
- If Date.Now >= StartTime Then
- PausedForSound = False
- If MediaPlayer.IsMuted = False And SongExistFlag = True Then
- MediaPlayer.Resume()
- End If
+ If _isPausedForSound Then
+ If Date.Now >= _pausedUntil Then
+ _isPausedForSound = False
+ ResumePlayback()
End If
Else
- UpdateFade()
- If IntroStarted = True Then
- If Date.Now >= IntroEndTime Then
- PlayTrack(IntroContinue) 'Plays the loop that follows the intro
+ ' fading
+ If _isFadingOut Then
+ _volume -= _fadeSpeed
+
+ If _volume <= 0F Then
+
+ _volume = 0F
+ _isFadingOut = False
+ _isFadingIn = True
+
+ Dim song = GetSong(_nextSong)
+
+ If Not song Is Nothing Then
+
+ Play(song)
+ _nextSong = ""
+
+ If _fadeIntoIntro Then
+ _fadeIntoIntro = False
+ _introEndTime = Date.Now.AddSeconds(-1) + song.Duration
+ _isIntroStarted = True
+ MediaPlayer.IsRepeating = False
+ Else
+ MediaPlayer.IsRepeating = True
+ End If
+
+ Else
+
+ ' no song found, do not fade into anything
+ _fadeIntoIntro = False
+ ClearCurrentlyPlaying()
+ _isFadingIn = False
+ _volume = 1.0F
+
+ End If
+
+ End If
+
+ ElseIf _isFadingIn Then
+
+ _volume += _fadeSpeed
+
+ If _volume >= 1.0F Then
+ _volume = 1.0F
+ _isFadingIn = False
+ End If
+
+ End If
+
+ ' intro
+ If _isIntroStarted Then
+
+ If Date.Now >= _introEndTime Then
+
+ Dim song = GetSong(_introContinueSong)
MediaPlayer.IsRepeating = True
+ _isIntroStarted = False
+ Play(song)
+
End If
+
End If
+
+ End If
+
+ If Core.GameInstance.IsActive AndAlso _lastVolume <> (_volume * MasterVolume) Then
+ UpdateVolume()
End If
End Sub
- Shared LastVolume As Single = -1.0F
-
- Private Shared Sub UpdateFade()
- If FadeIn = True Then
- Volume += FadeInSpeed
- If Volume >= 1.0F Then
- Volume = 1.0F
- FadeIn = False
- End If
- End If
- If FadeOut = True Then
- Volume -= FadeOutSpeed
- If Volume <= 0.0F Then
- Volume = 0.0F
- FadeOut = False
- FadeIn = True
-
- PlayTrack(NextSong)
-
- If FadeIntoIntro = True Then
- IntroStarted = True
- IntroEndTime = Date.Now.AddSeconds(-1) + SongFiles(NextSong).Song.Duration
- FadeIntoIntro = False
- End If
-
- currentSong = NextSong
- NextSong = ""
- End If
- End If
-
- If Core.GameInstance.IsActive = True And LastVolume <> (Volume * MasterVolume) Then
- ForceVolumeUpdate()
- End If
+ Public Shared Sub UpdateVolume()
+ MediaPlayer.Volume = _volume * MasterVolume
+ _lastVolume = _volume * MasterVolume
End Sub
- Public Shared Sub PauseForSound(ByVal s As SoundEffect)
- StartTime = Date.Now + s.Duration
- PausedForSound = True
+ Public Shared Sub PauseForSound(ByVal sound As SoundEffect)
+ _isPausedForSound = True
+ _pausedUntil = Date.Now + sound.Duration
MediaPlayer.Pause()
End Sub
- Public Shared Sub StopMusic()
- MediaPlayer.Stop()
- IntroStarted = False
- End Sub
-
Public Shared Sub Pause()
MediaPlayer.Pause()
- IntroStarted = False
End Sub
- Public Shared Sub ResumeMusic()
- MediaPlayer.Resume()
+ Public Shared Sub ResumePlayback()
+ If Not _currentSong Is Nothing Then
+
+ ' if an intro was playing while the media player was paused, calc its end time
+ If MediaPlayer.State = MediaState.Paused AndAlso _isIntroStarted Then
+
+ _introEndTime = Date.Now + (_currentSong.Duration - MediaPlayer.PlayPosition)
+
+ End If
+
+ MediaPlayer.Resume()
+
+ End If
End Sub
- Public Shared ReadOnly Property GetCurrentSong() As String
+ Private Shared Sub Play(song As SongContainer)
+ MediaPlayer.Stop()
+
+ If Not song Is Nothing Then
+ Logger.Debug($"Play song [{song.Name}]")
+
+ MediaPlayer.Play(song.Song)
+
+ If MediaPlayer.IsMuted Then
+ MediaPlayer.Pause()
+ End If
+
+ _currentSongExists = True
+ _currentSongName = song.Name
+ _currentSong = song
+ Else
+ _currentSongExists = False
+ _currentSongName = NO_MUSIC
+ _currentSong = Nothing
+ End If
+
+ End Sub
+
+ Private Shared Sub FadeInto(song As SongContainer, fadeSpeed As Single)
+ _isFadingOut = True
+ If Not song Is Nothing Then
+ _nextSong = song.Name
+ Else
+ _nextSong = NO_MUSIC
+ End If
+ _fadeSpeed = fadeSpeed
+ End Sub
+
+ Public Shared Function Play(song As String) As SongContainer
+ Return Play(song, False, DEFAULT_FADE_SPEED)
+ End Function
+
+ Public Shared Function Play(song As String, playIntro As Boolean) As SongContainer
+ Return Play(song, playIntro, DEFAULT_FADE_SPEED)
+ End Function
+
+ Public Shared Function Play(song As String, playIntro As Boolean, fadeSpeed As Single) As SongContainer
+
+ Dim playedSong As SongContainer = Nothing
+
+ ' get the current song, only play if it's different
+ Dim currentSong = GetCurrentSong().ToLowerInvariant()
+ Dim songName = GetSongName(song)
+
+ If currentSong = NO_MUSIC OrElse currentSong <> songName Then
+
+ If playIntro Then
+
+ Dim introSong = GetSong("intro\" + songName)
+ If Not introSong Is Nothing Then
+
+ ' play the intro
+ ' setup the continue song
+ _introContinueSong = songName
+ ' do not repeat media player, do not want intro to loop
+ MediaPlayer.IsRepeating = False
+
+ If fadeSpeed > 0F Then
+ _isIntroStarted = False
+ _fadeIntoIntro = True
+ FadeInto(introSong, fadeSpeed)
+ Else
+ _isIntroStarted = True
+ _introEndTime = Date.Now.AddSeconds(-1) + introSong.Duration
+ Play(introSong)
+ End If
+
+ playedSong = introSong
+
+ ' load the next song so the end of the intro doesn't lag
+ GetSong(song)
+
+ End If
+
+ End If
+
+ ' intro was not requested or does not exist
+ If Not _isIntroStarted AndAlso Not _fadeIntoIntro Then
+
+ Dim nextSong = GetSong(song)
+ If fadeSpeed > 0F Then
+ FadeInto(nextSong, fadeSpeed)
+ Else
+ Play(nextSong)
+ End If
+ MediaPlayer.IsRepeating = True
+ playedSong = nextSong
+
+ End If
+
+ End If
+
+ Return playedSong
+
+ End Function
+
+ Public Shared Function SongExists(songName As String) As Boolean
+ Return Not GetSong(songName) Is Nothing
+ End Function
+
+ Private Shared Function GetCurrentSong() As String
+ ' if the currently playing song is an intro, return the song that plays after the intro
+ ' this prevents the same song from replaying if it starts playing while the intro is still in effect
+
+ ' but if it's already fading, do not play the song if the song we are fading into is the same.
+ ' also if we are fading into an intro, get the song that the intro would continue to
+ If _isFadingOut Then
+ If _fadeIntoIntro Then
+ Return _introContinueSong
+ Else
+ Return _nextSong
+ End If
+ Else
+ If _isIntroStarted Then
+ Return _introContinueSong
+ Else
+ Return _currentSongName
+ End If
+ End If
+ End Function
+
+ Private Shared Function GetSong(songName As String) As SongContainer
+ Dim key = GetSongName(songName)
+
+ Dim iSong As SongContainer = Nothing
+ If Not _songs.TryGetValue(key, iSong) Then
+
+ Dim songFilePath = Path.Combine(GameController.GamePath, "Content", "Songs", key + ".mp3")
+
+ If File.Exists(songFilePath) Then
+ Dim duration = GetSongDuration(songFilePath)
+ iSong = New SongContainer(Song.FromUri(key, New Uri(songFilePath)), key, duration)
+ _songs.Add(key, iSong)
+ End If
+
+ End If
+
+ Return iSong
+
+ End Function
+
+ Private Shared Function GetSongDuration(fileName As String) As TimeSpan
+
+ Dim duration As Double = 0
+ Dim sampleFrequency = 0
+
+ Using stream = New FileStream(fileName, FileMode.Open)
+ Dim frame = NAudio.Wave.Mp3Frame.LoadFromStream(stream)
+ If Not frame Is Nothing Then
+
+ sampleFrequency = frame.SampleRate
+
+ End If
+
+ While Not frame Is Nothing
+
+ duration += frame.SampleCount / sampleFrequency
+ frame = NAudio.Wave.Mp3Frame.LoadFromStream(stream)
+
+ End While
+
+ End Using
+
+ Dim seconds = CType(duration, Integer)
+ Dim milliseconds = CType((duration - seconds) * 1000, Integer)
+
+ Return New TimeSpan(0, 0, 0, seconds, milliseconds)
+
+ End Function
+
+ Private Shared Function GetSongName(song As String) As String
+ Dim key = song.ToLowerInvariant()
+ Dim aliasMap = SongAliasMap
+ If aliasMap.ContainsKey(key) Then
+ key = aliasMap(key).ToLowerInvariant()
+ End If
+ Return key
+ End Function
+
+ Private Shared ReadOnly Property SongAliasMap As Dictionary(Of String, String)
Get
- Return SongList(SongList.Count - 1)
+ Return New Dictionary(Of String, String)() From
+ {
+ {"welcome", "RouteMusic1"},
+ {"battle", "johto_wild"},
+ {"batleintro", "battle_intro"},
+ {"johto_battle_intro", "battle_intro"},
+ {"darkcave", "dark_cave"},
+ {"showmearound", "show_me_around"},
+ {"sprouttower", "sprout_tower"},
+ {"johto_rival_intro", "johto_rivalintro"},
+ {"johto_rival_appear", "johto_rival_encounter"},
+ {"ilex_forest", "IlexForest"},
+ {"union_cave", "IlexForest"},
+ {"mt_mortar", "IlexForest"},
+ {"whirlpool_islands", "IlexForest"},
+ {"tohjo_falls", "IlexForest"}
+ }
End Get
End Property
- Public Shared Function SongExists(ByVal songName As String) As Boolean
- Dim s As CSong = GetSong(songName, False)
- Return s IsNot Nothing
- End Function
-
- Public Shared Sub ForceVolumeUpdate()
- MediaPlayer.Volume = Volume * MasterVolume
- LastVolume = Volume * MasterVolume
- End Sub
-
-End Class
\ No newline at end of file
+End Class
diff --git a/P3D/Resources/Sound/SongContainer.vb b/P3D/Resources/Sound/SongContainer.vb
new file mode 100644
index 000000000..47c392bbf
--- /dev/null
+++ b/P3D/Resources/Sound/SongContainer.vb
@@ -0,0 +1,15 @@
+' Created because Song.Name is not what it is being set to.
+' also because when loading songs from uris, it doesn't calculate its duration
+Public Class SongContainer
+
+ Public Song As Song
+ Public Name As String
+ Public Duration As TimeSpan
+
+ Public Sub New(song As Song, name As String, duration As TimeSpan)
+ Me.Song = song
+ Me.Name = name
+ Me.Duration = duration
+ End Sub
+
+End Class
diff --git a/P3D/Screens/Battle/BattleCatchScreen.vb b/P3D/Screens/Battle/BattleCatchScreen.vb
index 6ee77ad71..906a320d6 100644
--- a/P3D/Screens/Battle/BattleCatchScreen.vb
+++ b/P3D/Screens/Battle/BattleCatchScreen.vb
@@ -210,7 +210,7 @@
p.ResetTemp()
Dim s As String = "Gotcha!~" & p.GetName() & " was caught!"
- If Core.Player.hasPokedex = True Then
+ If Core.Player.HasPokedex = True Then
If Pokedex.GetEntryType(Core.Player.PokedexData, p.Number) < 2 Then
s &= "*" & p.GetName() & "'s data was~added to the Pokédex."
showPokedexEntry = True
@@ -227,7 +227,7 @@
p.SetCatchInfos(Me.Ball, "caught at")
- MusicManager.PlayMusic("wild_defeat", True, 0.0F, 0.0F)
+ MusicManager.Play("wild_defeat", True, 0.0F)
SoundManager.PlaySound("success", True)
TextBox.Show(s, {}, False, False)
End Sub
diff --git a/P3D/Screens/Battle/BlackOutScreen.vb b/P3D/Screens/Battle/BlackOutScreen.vb
index 3e8980c2a..0aad1a842 100644
--- a/P3D/Screens/Battle/BlackOutScreen.vb
+++ b/P3D/Screens/Battle/BlackOutScreen.vb
@@ -141,7 +141,7 @@
End Sub
Public Overrides Sub ChangeTo()
- MusicManager.PlayMusic("nomusic", False)
+ MusicManager.PlayNoMusic()
Core.Player.Inventory.RemoveItem(177) ' Remove all Park Balls (happens regardless of whether or not the player was currently in the Bug-Catching Contest).
PlayerStatistics.Track("Blackouts", 1)
End Sub
diff --git a/P3D/Screens/BattleIntroScreen.vb b/P3D/Screens/BattleIntroScreen.vb
index e29c84afd..f8be83cb2 100644
--- a/P3D/Screens/BattleIntroScreen.vb
+++ b/P3D/Screens/BattleIntroScreen.vb
@@ -505,12 +505,11 @@
Player.Temp.BeforeBattlePosition = Screen.Camera.Position
Player.Temp.BeforeBattleLevelFile = Screen.Level.LevelFile
Player.Temp.BeforeBattleFacing = Screen.Camera.GetPlayerFacingDirection()
- MusicManager.PlayMusic(MusicLoop)
+ MusicManager.Play(MusicLoop)
MediaPlayer.IsRepeating = False
- Dim s As MusicManager.CSong = MusicManager.GetSong(MusicLoop, True)
- If Not s Is Nothing Then
- Me.duration = s.Song.Duration
+ If Not MusicManager.CurrentSong Is Nothing Then
+ Me.duration = MusicManager.CurrentSong.Duration
Else
Me.duration = New TimeSpan(0)
End If
diff --git a/P3D/Screens/Credits/CreditsScreen.vb b/P3D/Screens/Credits/CreditsScreen.vb
index c975929fa..12c8029e8 100644
--- a/P3D/Screens/Credits/CreditsScreen.vb
+++ b/P3D/Screens/Credits/CreditsScreen.vb
@@ -44,7 +44,7 @@ Public Class CreditsScreen
ExecuteCameraLevel()
- MusicManager.PlayMusic("credits", True)
+ MusicManager.Play("credits", True)
MediaPlayer.IsRepeating = False
End Sub
@@ -63,7 +63,7 @@ Public Class CreditsScreen
CreditsPages.Add(New CreditsPage("Programming", Color.White, Color.Black, {"Nils Drescher", "Jason Houston", "William Lang", "Benjamin Smith", "Yong Jian Ming", "Jorge Luis Espinoza", """Aragas"""}.ToList()))
CreditsPages.Add(New CreditsPage("Graphic Design", Color.White, Color.Black, {"Nils Drescher", "Benjamin Smith", """Godeken""", "Caleb Coleman", "Robert Nobbmann", "Manuel Lampe", "Miguel Nunez", "Grant Garrett", """Anvil555""", """Omega Ghost"""}.ToList()))
CreditsPages.Add(New CreditsPage("Map Design", Color.White, Color.Black, {"Nils Drescher", "Benjamin Smith", "Hunter Graves", "Manuel Lampe", "Robert Nobbmann", "Maximilian Schröder", "Jan Mika Eine", "Jason Houston", """oXFantaXo"""}.ToList()))
- CreditsPages.Add(New CreditsPage("Actionscript", Color.White, Color.Black, {"Nils Drescher", "Benjamin Smith", "Hunter Graves", "Andrew Leach", "Jason Houston", "Yong Jian Ming", """Aragas""" }.ToList()))
+ CreditsPages.Add(New CreditsPage("Actionscript", Color.White, Color.Black, {"Nils Drescher", "Benjamin Smith", "Hunter Graves", "Andrew Leach", "Jason Houston", "Yong Jian Ming", """Aragas"""}.ToList()))
CreditsPages.Add(New CreditsPage("Script System Development", Color.White, Color.Black, {"Nils Drescher", "Benjamin Smith", "Hunter Graves", "Yong Jian Ming", """Aragas"""}.ToList()))
CreditsPages.Add(New CreditsPage("KolbenWindowWidget Development & LUA Implementation", Color.White, Color.Black, {"Jason Houston"}.ToList()))
CreditsPages.Add(New CreditsPage("Launcher Programming", Color.White, Color.Black, {"Nils Drescher", "Daniel Billing", """ThuxCommix""", """Aragas"""}.ToList()))
diff --git a/P3D/Screens/Inventory/PokegearScreen.vb b/P3D/Screens/Inventory/PokegearScreen.vb
index fe105e501..b393cdb1a 100644
--- a/P3D/Screens/Inventory/PokegearScreen.vb
+++ b/P3D/Screens/Inventory/PokegearScreen.vb
@@ -1862,7 +1862,7 @@
CurrentSong = ""
For Each station As RadioStation In Me.RadioStations
If station.IsInterfering(RadioCursor) = True Then
- MusicManager.PlayMusic(station.Music, True)
+ MusicManager.Play(station.Music, True)
CurrentSong = station.Music
CurrentStation = station
Exit For
@@ -1870,7 +1870,7 @@
Next
If CurrentSong = "" Then
- MusicManager.PlayMusic("nomusic", False)
+ MusicManager.PlayNoMusic()
CurrentStation = Nothing
End If
End Sub
diff --git a/P3D/Screens/MainMenu/NewNewGameScreen.vb b/P3D/Screens/MainMenu/NewNewGameScreen.vb
index aec98508f..7ee5c8456 100644
--- a/P3D/Screens/MainMenu/NewNewGameScreen.vb
+++ b/P3D/Screens/MainMenu/NewNewGameScreen.vb
@@ -36,7 +36,7 @@
Core.Player.Unload()
- MusicManager.StopMusic()
+ MusicManager.PlayNoMusic()
'Initialize the World information with the loaded level.
Level.World.Initialize(Level.EnvironmentType, Level.WeatherType)
diff --git a/P3D/Screens/MainMenu/PauseScreen.vb b/P3D/Screens/MainMenu/PauseScreen.vb
index 5aafa5e51..82945bc2b 100644
--- a/P3D/Screens/MainMenu/PauseScreen.vb
+++ b/P3D/Screens/MainMenu/PauseScreen.vb
@@ -22,7 +22,7 @@
Me.mainTexture = TextureManager.GetTexture("GUI\Menus\Menu")
- If Core.Player.IsGamejoltSave = True Then
+ If Core.Player.IsGameJoltSave = True Then
Me.canCreateAutosave = False
Else
If Not Me.PreScreen Is Nothing Then
@@ -267,11 +267,11 @@
Public Overrides Sub ChangeTo()
MusicManager.MasterVolume /= 4
- MusicManager.ForceVolumeUpdate()
+ MusicManager.UpdateVolume()
End Sub
Public Overrides Sub ChangeFrom()
MusicManager.MasterVolume *= 4
- MusicManager.ForceVolumeUpdate()
+ MusicManager.UpdateVolume()
End Sub
End Class
\ No newline at end of file
diff --git a/P3D/Screens/MainMenu/PressStartScreen.vb b/P3D/Screens/MainMenu/PressStartScreen.vb
index 89b9e9d70..27de11d14 100644
--- a/P3D/Screens/MainMenu/PressStartScreen.vb
+++ b/P3D/Screens/MainMenu/PressStartScreen.vb
@@ -42,6 +42,7 @@ Public Class PressStartScreen
Camera = New MainMenuCamera()
Core.Player.Skin = "Hilbert"
+ World.IsMainMenu = True
Level = New Level()
ChangeLevel()
Level.World.Initialize(Level.EnvironmentType, Level.WeatherType)
@@ -185,7 +186,7 @@ Public Class PressStartScreen
TextBox.CanProceed = True
OverworldScreen.FadeValue = 0
- MusicManager.PlayMusic("title", True, 0.0F, 0.0F)
+ MusicManager.Play("title", True, 0.0F)
End Sub
End Class
@@ -803,6 +804,7 @@ Public Class NewMainMenuScreen
End If
End If
End Sub
+
Public Sub UnSelectProfile()
If IsGameJolt AndAlso _loaded Then
_loaded = False
@@ -813,8 +815,10 @@ Public Class NewMainMenuScreen
GameJolt.API.LoggedIn = False
End If
End Sub
+
Public Sub SelectProfile()
If _isNewGameButton Then
+ World.IsMainMenu = False
If GameModeManager.GameModeCount = 1 Then
'There's only the default GameMode available, so just load that one:
GameModeManager.SetGameModePointer("Kolben")
@@ -830,6 +834,8 @@ Public Class NewMainMenuScreen
If _gameModeExists Then
GameModeManager.SetGameModePointer(_gameMode)
+ World.IsMainMenu = False
+
If _isGameJolt Then
Core.Player.IsGameJoltSave = True
Core.Player.LoadGame("GAMEJOLTSAVE")
diff --git a/P3D/Screens/NewOptionScreen.vb b/P3D/Screens/NewOptionScreen.vb
index b5d72ea8d..49ac4268f 100644
--- a/P3D/Screens/NewOptionScreen.vb
+++ b/P3D/Screens/NewOptionScreen.vb
@@ -460,7 +460,7 @@
C.RotationSpeed = CSng(Me.MouseSpeed / 10000)
MusicManager.MasterVolume = CSng(Me.Music / 100)
SoundManager.Volume = CSng(Me.Sound / 100)
- MusicManager.Mute(CBool(Me.Muted))
+ MusicManager.Muted = CBool(Me.Muted)
SoundManager.Muted = CBool(Me.Muted)
Core.GameOptions.RenderDistance = Me.RenderDistance
Core.GameOptions.GraphicStyle = Me.GraphicStyle
@@ -644,7 +644,7 @@
End Sub
Private Sub ApplyMusicChange()
- MusicManager.Mute(CBool(Me.Muted))
+ MusicManager.Muted = CBool(Me.Muted)
SoundManager.Muted = CBool(Me.Muted)
MusicManager.MasterVolume = CSng(Me.Music / 100)
SoundManager.Volume = CSng(Me.Sound / 100)
diff --git a/P3D/Screens/Pokemon/EvolutionScreen.vb b/P3D/Screens/Pokemon/EvolutionScreen.vb
index 200944a4a..141fd06b1 100644
--- a/P3D/Screens/Pokemon/EvolutionScreen.vb
+++ b/P3D/Screens/Pokemon/EvolutionScreen.vb
@@ -161,8 +161,8 @@
EvolvePokemon()
- Me.SavedMusic = MusicManager.GetCurrentSong()
- MusicManager.PlayMusic("nomusic", False)
+ Me.SavedMusic = MusicManager.CurrentSong.Name
+ MusicManager.PlayNoMusic()
End Sub
Public Overrides Sub Draw()
@@ -199,9 +199,7 @@
Next
Else
If evolutionReady = False And TextBox.Showing = False Then
- If MusicManager.GetCurrentSong() <> "evolution" Then
- MusicManager.PlayMusic("evolution", True)
- End If
+ MusicManager.Play("evolution", True)
If evolved = False Then
Dim allReady As Boolean = True
@@ -319,7 +317,7 @@
s = s.PreScreen
End While
Core.SetScreen(New TransitionScreen(s, s.PreScreen, Color.Black, False))
- MusicManager.PlayMusic(SavedMusic)
+ MusicManager.Play(SavedMusic)
Else
Dim s As Screen = Core.CurrentScreen
While s.Identification <> Identifications.BattleScreen
diff --git a/P3D/Screens/Pokemon/HatchEggScreen.vb b/P3D/Screens/Pokemon/HatchEggScreen.vb
index d73147b18..a519903be 100644
--- a/P3D/Screens/Pokemon/HatchEggScreen.vb
+++ b/P3D/Screens/Pokemon/HatchEggScreen.vb
@@ -81,7 +81,7 @@
If size < 3.5F Then
size += 0.08F
Else
- MusicManager.PlayMusic("wild_defeat")
+ MusicManager.Play("wild_defeat")
cPokemon.PlayCry()
SoundManager.PlaySound("success", True)
Stage = 7
diff --git a/P3D/Screens/Pokemon/PartyScreen.vb b/P3D/Screens/Pokemon/PartyScreen.vb
index 9cdecd371..5824a7b12 100644
--- a/P3D/Screens/Pokemon/PartyScreen.vb
+++ b/P3D/Screens/Pokemon/PartyScreen.vb
@@ -923,7 +923,7 @@ Public Class PartyScreen
End If
If Screen.Level.IsRadioOn = False OrElse GameJolt.PokegearScreen.StationCanPlay(Screen.Level.SelectedRadioStation) = False Then
- MusicManager.PlayMusic(Level.MusicLoop)
+ MusicManager.Play(Level.MusicLoop)
End If
Else
If Screen.Level.Surfing = False And Screen.Camera.IsMoving() = False And Screen.Camera.Turning = False And Level.CanRide() = True Then
@@ -952,7 +952,7 @@ Public Class PartyScreen
PlayerStatistics.Track("Ride used", 1)
If Screen.Level.IsRadioOn = False OrElse GameJolt.PokegearScreen.StationCanPlay(Screen.Level.SelectedRadioStation) = False Then
- MusicManager.PlayMusic("ride", True)
+ MusicManager.Play("ride", True)
End If
Else
TextBox.Show("You cannot Ride here!", {}, True, False)
diff --git a/P3D/World/ActionScript/V1/ScriptV1.vb b/P3D/World/ActionScript/V1/ScriptV1.vb
index b72ddc957..33a5cdcda 100644
--- a/P3D/World/ActionScript/V1/ScriptV1.vb
+++ b/P3D/World/ActionScript/V1/ScriptV1.vb
@@ -888,7 +888,7 @@
End Sub
Private Sub DoMusic()
- MusicManager.PlayMusic(Me.Value, True)
+ MusicManager.Play(Me.Value, True)
If Core.CurrentScreen.Identification = Screen.Identifications.OverworldScreen Then
Screen.Level.MusicLoop = Me.Value
@@ -1019,7 +1019,7 @@
If t.IsBeaten() = False Then
If started = False Then
CType(Core.CurrentScreen, OverworldScreen).TrainerEncountered = True
- MusicManager.PlayMusic(t.GetInSightMusic(), True)
+ MusicManager.Play(t.GetInSightMusic(), True)
If t.IntroMessage <> "" Then
Screen.TextBox.reDelay = 0.0F
Screen.TextBox.Show(t.IntroMessage, {})
diff --git a/P3D/World/ActionScript/V2/ScriptCommands/DoBattle.vb b/P3D/World/ActionScript/V2/ScriptCommands/DoBattle.vb
index ef99dc99b..8c6235d79 100644
--- a/P3D/World/ActionScript/V2/ScriptCommands/DoBattle.vb
+++ b/P3D/World/ActionScript/V2/ScriptCommands/DoBattle.vb
@@ -18,7 +18,7 @@
CType(Core.CurrentScreen, OverworldScreen).TrainerEncountered = True
If t.GetInSightMusic() <> "" And t.GetInSightMusic() <> "nomusic" Then
- MusicManager.PlayMusic(t.GetInSightMusic(), True, 0.0F, 0.0F)
+ MusicManager.Play(t.GetInSightMusic(), True, 0.0F)
End If
If t.IntroMessage <> "" Then
diff --git a/P3D/World/ActionScript/V2/ScriptCommands/DoMusic.vb b/P3D/World/ActionScript/V2/ScriptCommands/DoMusic.vb
index 6242be243..b1cceb635 100644
--- a/P3D/World/ActionScript/V2/ScriptCommands/DoMusic.vb
+++ b/P3D/World/ActionScript/V2/ScriptCommands/DoMusic.vb
@@ -12,24 +12,24 @@
Select Case command.ToLower()
Case "play"
- MusicManager.PlayMusic(argument, True)
+ MusicManager.Play(argument, True)
If Core.CurrentScreen.Identification = Screen.Identifications.OverworldScreen Then
Screen.Level.MusicLoop = argument
End If
Case "forceplay"
- MusicManager.IgnoreLastSong()
- MusicManager.PlayMusic(argument)
+ MusicManager.ClearCurrentlyPlaying()
+ MusicManager.Play(argument)
Case "setmusicloop"
If Core.CurrentScreen.Identification = Screen.Identifications.OverworldScreen Then
Screen.Level.MusicLoop = argument
End If
Case "stop"
- MusicManager.StopMusic()
+ MusicManager.PlayNoMusic()
Case "pause"
MusicManager.Pause()
Case "resume"
- MusicManager.ResumeMusic()
+ MusicManager.ResumePlayback()
End Select
IsReady = True
diff --git a/P3D/World/Level.vb b/P3D/World/Level.vb
index fa3d50477..714370411 100644
--- a/P3D/World/Level.vb
+++ b/P3D/World/Level.vb
@@ -985,16 +985,16 @@ Public Class Level
' Play the correct music track:
If IsRadioOn = True AndAlso GameJolt.PokegearScreen.StationCanPlay(Me.SelectedRadioStation) = True Then
- MusicManager.PlayMusic(SelectedRadioStation.Music, True)
+ MusicManager.Play(SelectedRadioStation.Music, True)
Else
IsRadioOn = False
If Me.Surfing = True Then
- MusicManager.PlayMusic("surf", True)
+ MusicManager.Play("surf", True)
Else
If Me.Riding = True Then
- MusicManager.PlayMusic("ride", True)
+ MusicManager.Play("ride", True)
Else
- MusicManager.PlayMusic(MusicLoop, True)
+ MusicManager.Play(MusicLoop, True)
End If
End If
End If
diff --git a/P3D/World/SkyDome.vb b/P3D/World/SkyDome.vb
index 3930d5e8f..300108275 100644
--- a/P3D/World/SkyDome.vb
+++ b/P3D/World/SkyDome.vb
@@ -238,6 +238,9 @@
If FASTTIMECYCLE = True Then
Return Hour * 60 + Minute
Else
+ If World.IsMainMenu Then
+ Return 720
+ End If
Return World.MinutesOfDay
End If
End Function
diff --git a/P3D/World/World.vb b/P3D/World/World.vb
index dc0cb20fb..588358ae7 100644
--- a/P3D/World/World.vb
+++ b/P3D/World/World.vb
@@ -4,6 +4,8 @@ Public Class World
Private Shared _regionWeather As Weathers = Weathers.Clear
Private Shared _regionWeatherSet As Boolean = False
+
+ Public Shared IsMainMenu As Boolean = False
Public Shared IsAurora As Boolean = False
Public Enum Seasons As Integer
@@ -50,6 +52,10 @@ Public Class World
Public Shared ReadOnly Property CurrentSeason() As Seasons
Get
+ If IsMainMenu Then
+ Return Seasons.Summer
+ End If
+
If NeedServerObject() = True Then
Return ServerSeason
End If
@@ -69,6 +75,10 @@ Public Class World
Public Shared ReadOnly Property GetTime() As DayTime
Get
+ If IsMainMenu Then
+ Return DayTime.Day
+ End If
+
Dim time As DayTime = DayTime.Day
Dim Hour As Integer = My.Computer.Clock.LocalTime.Hour
@@ -363,6 +373,10 @@ endsub:
End Sub
Private Shared Function GetRegionWeather(ByVal Season As Seasons) As Weathers
+ If IsMainMenu Then
+ Return Weathers.Clear
+ End If
+
Dim r As Integer = Core.Random.Next(0, 100)
Select Case Season
@@ -411,6 +425,10 @@ endsub:
End Sub
Public Shared Function GetWeatherFromWeatherType(ByVal WeatherType As Integer) As Weathers
+ If IsMainMenu Then
+ Return Weathers.Clear
+ End If
+
Select Case WeatherType
Case 0 ' Region Weather
Return World.GetCurrentRegionWeather()
@@ -439,6 +457,10 @@ endsub:
End Function
Public Shared Function GetWeatherTypeFromWeather(ByVal Weather As Weathers) As Integer
+ If IsMainMenu Then
+ Return 1
+ End If
+
Select Case Weather
Case Weathers.Clear
Return 1
diff --git a/P3D/packages.config b/P3D/packages.config
index a6cfe62ae..8da81e3a8 100644
--- a/P3D/packages.config
+++ b/P3D/packages.config
@@ -1,6 +1,7 @@
+
diff --git a/lib/build/NAudio.dll b/lib/build/NAudio.dll
new file mode 100644
index 000000000..9425d4029
Binary files /dev/null and b/lib/build/NAudio.dll differ
diff --git a/lib/build/Pokemon3D.exe b/lib/build/Pokemon3D.exe
index a6fe60a30..30f7a67a6 100644
Binary files a/lib/build/Pokemon3D.exe and b/lib/build/Pokemon3D.exe differ
diff --git a/lib/tools/TearDown.exe b/lib/tools/TearDown.exe
index e60c14abb..1469ec80d 100644
Binary files a/lib/tools/TearDown.exe and b/lib/tools/TearDown.exe differ
diff --git a/lib/tools/TearDown/Program.cs b/lib/tools/TearDown/Program.cs
index 8512428d9..d78976964 100644
--- a/lib/tools/TearDown/Program.cs
+++ b/lib/tools/TearDown/Program.cs
@@ -106,7 +106,7 @@ namespace TearDown
var projFile = Path.Combine(p3dFolder, "p3d.vbproj");
var contentFolder = Path.Combine(p3dFolder, "Content");
var contentUri = new Uri(contentFolder);
- var files = GetFiles(contentFolder, new[] { "*.dat", "*.poke", "*.trainer", "*.png", "*.ogg", "*.wav" }, SearchOption.AllDirectories);
+ var files = GetFiles(contentFolder, new[] { "*.dat", "*.poke", "*.trainer", "*.png", "*.mp3", "*.wav" }, SearchOption.AllDirectories);
var projContent = File.ReadAllText(projFile);
var startIndex = projContent.IndexOf(PROJECT_HOOK);