Now it produces sound, but it's clear that XMIDI parsing is wrong
svn-id: r13673
This commit is contained in:
parent
91f5c00a12
commit
4ed0d02f05
1 changed files with 8 additions and 4 deletions
|
@ -30,6 +30,7 @@
|
|||
#include "game_mod.h"
|
||||
#include "sound/mididrv.h"
|
||||
#include "sound/midiparser.h"
|
||||
#include "common/config-manager.h"
|
||||
|
||||
namespace Saga {
|
||||
|
||||
|
@ -68,9 +69,11 @@ void MusicPlayer::setVolume(int volume) {
|
|||
_masterVolume = volume;
|
||||
|
||||
for (int i = 0; i < 16; ++i) {
|
||||
if (_channel[i])
|
||||
if (_channel[i]) {
|
||||
debug(0, "%d %d", _channelVolume[i], _masterVolume);
|
||||
_channel[i]->volume(_channelVolume[i] * _masterVolume / 255);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
int MusicPlayer::open() {
|
||||
|
@ -135,7 +138,6 @@ void MusicPlayer::onTimer(void *refCon) {
|
|||
}
|
||||
|
||||
void MusicPlayer::playMusic() {
|
||||
_parser->setMidiDriver(this);
|
||||
_isPlaying = true;
|
||||
}
|
||||
|
||||
|
@ -188,7 +190,9 @@ int Music::play(ulong music_rn, uint flags) {
|
|||
debug(0, "Music::play(%d, %d)", music_rn, flags);
|
||||
|
||||
parser->setTrack(0);
|
||||
parser->setMidiDriver(_player);
|
||||
_player->_parser = parser;
|
||||
_player->setVolume(ConfMan.getInt("music_volume") * ConfMan.getInt("master_volume") / 255);
|
||||
_player->playMusic();
|
||||
return R_SUCCESS;
|
||||
}
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue