Sub Process_Globals
Private timer1 As Timer
Private timer2 As Timer
Dim MusicVolume As Double
Dim SoundVolume As Double
Dim SoundNames(128) As String
Dim SoundIds(128) As String
Dim Sounds As SoundPool
Dim myMediaPlayer As MediaPlayerStream
Dim SoundCount As Int = 0
Dim CurrentSong As String
Dim PlayingSong As Boolean = False
End Sub
Sub Activity_Create(FirstTime As Boolean)
Activity.LoadLayout("1")
cvs.Initialize(Activity)
myMediaPlayer.Initialize("myMedia")
If FirstTime Then
timer1.Initialize("Timer1", 10)
timer2.Initialize("Timer2", 1000)
End If
End Sub
Sub myMedia_StreamReady()
Log ("Media stream has ben loaded.")
myMediaPlayer.Play
End Sub
Sub myMedia_StreamError(ErrorCode As String, ExtraData As Int )
Log ("Media load had an error. Code = '" & ErrorCode & "', Data=" & NumberFormat(ExtraData,1,0))
myMediaPlayer.Stop
PlayingSong=False
CurrentSong = ""
End Sub
Sub PlaySong(SongName As String )
If Muted Then Return
If CurrentSong = SongName AND myMediaPlayer.IsPlaying Then Return
If PlayingSong Then myMediaPlayer.Stop ' Sounds.Stop(CurrentSongId)
PlayingSong=True
CurrentSong = SongName
myMediaPlayer.Looping=True
myMediaPlayer.SetVolume(MusicVolume,MusicVolume)
myMediaPlayer.Load("file://"&File.Combine(File.DirDefaultExternal,SongName))
End Sub
Sub PlaySongOnce(SongName As String)
If Muted Then Return
If PlayingSong Then myMediaPlayer.Stop ' Sounds.Stop(CurrentSongId)
PlayingSong=False
CurrentSong=""
myMediaPlayer.Looping=False
myMediaPlayer.Load("file://"&File.Combine(File.DirDefaultExternal,SongName))
End Sub
Sub StopSong()
If myMediaPlayer.IsPlaying Then myMediaPlayer.Stop
PlayingSong=False
CurrentSong=""
End Sub
Sub Timer2_Tick()
If ShouldPlayASong AND LoadingSong=False Then CallSubDelayed(Me,"LoadAGameSong")
End Sub