mirror of
https://github.com/P3D-Legacy/P3D-Legacy.git
synced 2025-07-25 23:05:24 +02:00
Fixed ContentPack battle music bug
This commit is contained in:
parent
24832a346b
commit
0392d7f0fe
@ -46,10 +46,16 @@ Public Class LoopStream
|
|||||||
Else
|
Else
|
||||||
If Not _sourceStream.Position = 0 Then
|
If Not _sourceStream.Position = 0 Then
|
||||||
If MusicManager._afterBattleIntroSong IsNot Nothing Then
|
If MusicManager._afterBattleIntroSong IsNot Nothing Then
|
||||||
|
_sourceStream.Dispose()
|
||||||
|
If Not MusicManager.outputDevice Is Nothing Then
|
||||||
|
MusicManager.outputDevice.Dispose()
|
||||||
|
End If
|
||||||
|
MusicManager.outputDevice = New WaveOutEvent()
|
||||||
Dim IntroSongName As String = "intro\" & MusicManager._afterBattleIntroSong.Name
|
Dim IntroSongName As String = "intro\" & MusicManager._afterBattleIntroSong.Name
|
||||||
Dim IntroSong As SongContainer = MusicManager.GetSong(IntroSongName)
|
Dim IntroSong As SongContainer = MusicManager.GetSong(IntroSongName)
|
||||||
If IntroSong IsNot Nothing Then
|
Dim ContinueSong As SongContainer = MusicManager.GetSong(MusicManager._afterBattleIntroSong.Name)
|
||||||
If IntroSong.Origin = MusicManager.GetSong(MusicManager._afterBattleIntroSong.Name).Origin Then
|
|
||||||
|
If IntroSong IsNot Nothing AndAlso IntroSong.Origin = MusicManager.GetSong(MusicManager._afterBattleIntroSong.Name).Origin Then
|
||||||
If IntroSong.AudioType = ".ogg" Then
|
If IntroSong.AudioType = ".ogg" Then
|
||||||
_sourceStream = New VorbisWaveReader(IntroSong.Song)
|
_sourceStream = New VorbisWaveReader(IntroSong.Song)
|
||||||
ElseIf IntroSong.AudioType = ".mp3" Then
|
ElseIf IntroSong.AudioType = ".mp3" Then
|
||||||
@ -58,19 +64,19 @@ Public Class LoopStream
|
|||||||
_sourceStream = New MediaFoundationReader(IntroSong.Song)
|
_sourceStream = New MediaFoundationReader(IntroSong.Song)
|
||||||
End If
|
End If
|
||||||
_enableLooping = False
|
_enableLooping = False
|
||||||
_sourceStream.Position = 0
|
|
||||||
MusicManager._introContinueSong = MusicManager._afterBattleIntroSong.Name
|
MusicManager._introContinueSong = MusicManager._afterBattleIntroSong.Name
|
||||||
MusicManager._isIntroStarted = True
|
MusicManager._isIntroStarted = True
|
||||||
MusicManager._afterBattleIntroSong = Nothing
|
|
||||||
MusicManager._currentSongExists = True
|
MusicManager._currentSongExists = True
|
||||||
MusicManager._currentSongName = IntroSong.Name
|
MusicManager._currentSongName = IntroSong.Name
|
||||||
MusicManager._currentSong = IntroSong
|
MusicManager._currentSong = IntroSong
|
||||||
Logger.Debug($"Play song [{IntroSong.Name}]")
|
Logger.Debug($"Play song [{IntroSong.Name}]")
|
||||||
Else
|
MusicManager.outputDevice.Init(_sourceStream)
|
||||||
IntroSong = Nothing
|
If MusicManager.Paused = False Then
|
||||||
|
MusicManager.outputDevice.Play()
|
||||||
End If
|
End If
|
||||||
Else
|
MusicManager._stream.Volume = MusicManager.Volume * MusicManager.MasterVolume
|
||||||
Dim ContinueSong As SongContainer = MusicManager.GetSong(MusicManager._afterBattleIntroSong.Name)
|
Exit While
|
||||||
|
ElseIf ContinueSong IsNot Nothing Then
|
||||||
If ContinueSong.AudioType = ".ogg" Then
|
If ContinueSong.AudioType = ".ogg" Then
|
||||||
_sourceStream = New VorbisWaveReader(ContinueSong.Song)
|
_sourceStream = New VorbisWaveReader(ContinueSong.Song)
|
||||||
ElseIf ContinueSong.AudioType = ".mp3" Then
|
ElseIf ContinueSong.AudioType = ".mp3" Then
|
||||||
@ -79,14 +85,37 @@ Public Class LoopStream
|
|||||||
_sourceStream = New MediaFoundationReader(ContinueSong.Song)
|
_sourceStream = New MediaFoundationReader(ContinueSong.Song)
|
||||||
End If
|
End If
|
||||||
_enableLooping = True
|
_enableLooping = True
|
||||||
_sourceStream.Position = 0
|
|
||||||
MusicManager._isIntroStarted = False
|
MusicManager._isIntroStarted = False
|
||||||
MusicManager._afterBattleIntroSong = Nothing
|
|
||||||
MusicManager._currentSongExists = True
|
MusicManager._currentSongExists = True
|
||||||
MusicManager._currentSongName = ContinueSong.Name
|
MusicManager._currentSongName = ContinueSong.Name
|
||||||
MusicManager._currentSong = ContinueSong
|
MusicManager._currentSong = ContinueSong
|
||||||
Logger.Debug($"Play song [{ContinueSong.Name}]")
|
Logger.Debug($"Play song [{ContinueSong.Name}]")
|
||||||
|
MusicManager.outputDevice.Init(_sourceStream)
|
||||||
|
If MusicManager.Paused = False Then
|
||||||
|
MusicManager.outputDevice.Play()
|
||||||
|
End If
|
||||||
|
MusicManager._stream.Volume = MusicManager.Volume * MusicManager.MasterVolume
|
||||||
|
Exit While
|
||||||
|
Else
|
||||||
|
If MusicManager.GetSong("silence").AudioType = ".ogg" Then
|
||||||
|
_sourceStream = New VorbisWaveReader(MusicManager.GetSong("silence").Song)
|
||||||
|
ElseIf MusicManager.GetSong("silence").AudioType = ".mp3" Then
|
||||||
|
_sourceStream = New Mp3FileReader(MusicManager.GetSong("silence").Song)
|
||||||
|
ElseIf MusicManager.GetSong("silence").AudioType = ".wma" Then
|
||||||
|
_sourceStream = New MediaFoundationReader(MusicManager.GetSong("silence").Song)
|
||||||
|
End If
|
||||||
|
_enableLooping = True
|
||||||
|
|
||||||
|
MusicManager._currentSongExists = False
|
||||||
|
MusicManager._currentSong = Nothing
|
||||||
|
MusicManager._currentSongName = "silence"
|
||||||
|
Logger.Debug($"Play song [silence]")
|
||||||
|
MusicManager.outputDevice.Init(_sourceStream)
|
||||||
|
If MusicManager.Paused = False Then
|
||||||
|
MusicManager.outputDevice.Play()
|
||||||
|
End If
|
||||||
|
MusicManager._stream.Volume = MusicManager.Volume * MusicManager.MasterVolume
|
||||||
|
Exit While
|
||||||
End If
|
End If
|
||||||
Else
|
Else
|
||||||
If MusicManager._isIntroStarted = True Then
|
If MusicManager._isIntroStarted = True Then
|
||||||
@ -118,6 +147,7 @@ Public Class LoopStream
|
|||||||
MusicManager._currentSongExists = False
|
MusicManager._currentSongExists = False
|
||||||
MusicManager._currentSong = Nothing
|
MusicManager._currentSong = Nothing
|
||||||
MusicManager._currentSongName = "silence"
|
MusicManager._currentSongName = "silence"
|
||||||
|
Logger.Debug($"Play song [silence]")
|
||||||
End If
|
End If
|
||||||
MusicManager._fadeIntoIntro = False
|
MusicManager._fadeIntoIntro = False
|
||||||
Else
|
Else
|
||||||
|
Loading…
x
Reference in New Issue
Block a user