diff options
author | Travis Howell | 2006-04-20 02:23:17 +0000 |
---|---|---|
committer | Travis Howell | 2006-04-20 02:23:17 +0000 |
commit | 56d856cd20f296502e2c8973c1ebab3e2e575515 (patch) | |
tree | a1bb94ac1ecf76ea4d7890a5c92a90ecf010e599 | |
parent | f9c3e7fd810902f1b28d8038c57e017c0311afce (diff) | |
download | scummvm-rg350-56d856cd20f296502e2c8973c1ebab3e2e575515.tar.gz scummvm-rg350-56d856cd20f296502e2c8973c1ebab3e2e575515.tar.bz2 scummvm-rg350-56d856cd20f296502e2c8973c1ebab3e2e575515.zip |
Cleanup
svn-id: r22047
-rw-r--r-- | engines/simon/intern.h | 24 | ||||
-rw-r--r-- | engines/simon/items.cpp | 6 | ||||
-rw-r--r-- | engines/simon/simon.cpp | 77 | ||||
-rw-r--r-- | engines/simon/sound.cpp | 73 | ||||
-rw-r--r-- | engines/simon/sound.h | 2 |
5 files changed, 73 insertions, 109 deletions
diff --git a/engines/simon/intern.h b/engines/simon/intern.h index b0c036b056..a1fb7094f7 100644 --- a/engines/simon/intern.h +++ b/engines/simon/intern.h @@ -146,28 +146,14 @@ struct TimeEvent { struct GameSpecificSettings { #ifndef PALMOS_68K const char *gme_filename; - const char *wav_filename; - const char *voc_filename; - const char *mp3_filename; - const char *vorbis_filename; - const char *flac_filename; - const char *voc_effects_filename; - const char *mp3_effects_filename; - const char *vorbis_effects_filename; - const char *flac_effects_filename; + const char *effects_filename; + const char *speech_filename; const char *gamepc_filename; #else const char gme_filename[12]; - const char wav_filename[12]; - const char voc_filename[12]; - const char mp3_filename[12]; - const char flac_filename[12]; - const char vorbis_filename[12]; - const char voc_effects_filename[12]; - const char mp3_effects_filename[12]; - const char vorbis_effects_filename[12]; - const char flac_effects_filename[12]; - const char gamepc_filename[12]; + const char effects_filename[12]; + const char speech_filename[12]; + const char gamepc_filename[12]; #endif }; diff --git a/engines/simon/items.cpp b/engines/simon/items.cpp index 1e8e788aff..2a612b059b 100644 --- a/engines/simon/items.cpp +++ b/engines/simon/items.cpp @@ -1909,12 +1909,12 @@ void SimonEngine::o3_checkCD() { uint disc = readVariable(97); if (!strcmp(_gameDescription->extra, "4CD")) { - _sound->switchVoiceFile(disc); + _sound->switchVoiceFile(gss, disc); } else if (!strcmp(_gameDescription->extra, "2CD")) { if (disc == 1 || disc == 2) - _sound->switchVoiceFile(1); + _sound->switchVoiceFile(gss, 1); else if (disc == 3 || disc == 4) - _sound->switchVoiceFile(2); + _sound->switchVoiceFile(gss, 2); } debug(0, "Switch to CD number %d", disc); diff --git a/engines/simon/simon.cpp b/engines/simon/simon.cpp index fc634e723d..21af9481a8 100644 --- a/engines/simon/simon.cpp +++ b/engines/simon/simon.cpp @@ -64,99 +64,50 @@ static const GameSpecificSettings *feeblefiles_settings; #define PTR(a) &a static const GameSpecificSettings simon1_settings = { "SIMON.GME", // gme_filename - "SIMON.WAV", // wav_filename - "SIMON.VOC", // voc_filename - "SIMON.MP3", // mp3_filename - "SIMON.OGG", // vorbis_filename - "SIMON.FLA", // flac_filename - "EFFECTS.VOC", // voc_effects_filename - "EFFECTS.MP3", // mp3_effects_filename - "EFFECTS.OGG", // vorbis_effects_filename - "EFFECTS.FLA", // flac_effects_filename + "EFFECTS", // effects_filename + "SIMON", // speech_filename "GAMEPC", // gamepc_filename }; static const GameSpecificSettings simon1acorn_settings = { "DATA", // gme_filename - "", // wav_filename - "SIMON", // voc_filename - "SIMON.MP3", // mp3_filename - "SIMON.OGG", // vorbis_filename - "SIMON.FLA", // flac_filename - "EFFECTS", // voc_effects_filename - "EFFECTS.MP3", // mp3_effects_filename - "EFFECTS.OGG", // vorbis_effects_filename - "EFFECTS.FLA", // flac_effects_filename + "EFFECTS", // effects_filename + "SIMON", // speech_filename "GAMEBASE", // gamepc_filename }; static const GameSpecificSettings simon1amiga_settings = { "", // gme_filename - "", // wav_filename - "", // voc_filename - "SIMON.MP3", // mp3_filename - "SIMON.OGG", // vorbis_filename - "SIMON.FLA", // flac_filename - "", // voc_effects_filename - "", // mp3_effects_filename - "", // vorbis_effects_filename - "", // flac_effects_filename + "", // effects_filename + "", // speech_filename "gameamiga", // gamepc_filename }; static const GameSpecificSettings simon1demo_settings = { "", // gme_filename - "", // wav_filename - "", // voc_filename - "", // mp3_filename - "", // vorbis_filename - "", // flac_filename - "", // voc_effects_filename - "", // mp3_effects_filename - "", // vorbis_effects_filename - "", // flac_effects_filename + "", // effects_filename + "", // speech_filename "GDEMO", // gamepc_filename }; static const GameSpecificSettings simon2win_settings = { "SIMON2.GME", // gme_filename - "SIMON2.WAV", // wav_filename - "SIMON2.VOC", // voc_filename - "SIMON2.MP3", // mp3_filename - "SIMON2.OGG", // vorbis_filename - "SIMON2.FLA", // flac_filename - "", // voc_effects_filename - "", // mp3_effects_filename - "", // vorbis_effects_filename - "", // flac_effects_filename + "", // effects_filename + "SIMON2", // speech_filename "GSPTR30", // gamepc_filename }; static const GameSpecificSettings simon2dos_settings = { "SIMON2.GME", // gme_filename - "", // wav_filename - "", // voc_filename - "", // mp3_filename - "", // vorbis_filename - "", // flac_filename - "", // voc_effects_filename - "", // mp3_effects_filename - "", // vorbis_effects_filename - "", // flac_effects_filename + "", // effects_filename + "", // speech_filename "GAME32", // gamepc_filename }; static const GameSpecificSettings feeblefiles_settings = { "", // gme_filename - "VOICES.WAV", // wav_filename - "VOICES.VOC", // voc_filename - "VOICES.MP3", // mp3_filename - "VOICES.OGG", // vorbis_filename - "VOICES.FLA", // flac_filename - "", // voc_effects_filename - "", // mp3_effects_filename - "", // vorbis_effects_filename - "", // flac_effects_filename + "", // effects_filename + "VOICES", // speech_filename "GAME22", // gamepc_filename }; #endif diff --git a/engines/simon/sound.cpp b/engines/simon/sound.cpp index c9520648a2..c1275b6525 100644 --- a/engines/simon/sound.cpp +++ b/engines/simon/sound.cpp @@ -279,11 +279,13 @@ void Sound::loadVoiceFile(const GameSpecificSettings *gss) { if (_vm->getGameType() == GType_FF || _vm->getGameId() == GID_SIMON1CD32) return; + char filename[16]; File *file = new File(); #ifdef USE_FLAC - if (!_hasVoiceFile && gss->flac_filename && gss->flac_filename[0]) { - file->open(gss->flac_filename); + if (!_hasVoiceFile) { + sprintf(filename, "%s.flac", gss->speech_filename); + file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; _voice = new FlacSound(_mixer, file); @@ -291,8 +293,9 @@ void Sound::loadVoiceFile(const GameSpecificSettings *gss) { } #endif #ifdef USE_MAD - if (!_hasVoiceFile && gss->mp3_filename && gss->mp3_filename[0]) { - file->open(gss->mp3_filename); + if (!_hasVoiceFile) { + sprintf(filename, "%s.mp3", gss->speech_filename); + file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; _voice = new MP3Sound(_mixer, file); @@ -300,8 +303,9 @@ void Sound::loadVoiceFile(const GameSpecificSettings *gss) { } #endif #ifdef USE_VORBIS - if (!_hasVoiceFile && gss->vorbis_filename && gss->vorbis_filename[0]) { - file->open(gss->vorbis_filename); + if (!_hasVoiceFile) { + sprintf(filename, "%s.ogg", gss->speech_filename); + file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; _voice = new VorbisSound(_mixer, file); @@ -325,15 +329,25 @@ void Sound::loadVoiceFile(const GameSpecificSettings *gss) { _hasVoiceFile = true; } } - if (!_hasVoiceFile && gss->wav_filename && gss->wav_filename[0]) { - file->open(gss->wav_filename); + if (!_hasVoiceFile) { + sprintf(filename, "%s.wav", gss->speech_filename); + file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; _voice = new WavSound(_mixer, file); } } - if (!_hasVoiceFile && gss->voc_filename && gss->voc_filename[0]) { - file->open(gss->voc_filename); + if (!_hasVoiceFile) { + sprintf(filename, "%s.voc", gss->speech_filename); + file->open(filename); + if (file->isOpen()) { + _hasVoiceFile = true; + _voice = new VocSound(_mixer, file); + } + } + if (!_hasVoiceFile) { + sprintf(filename, "%s", gss->speech_filename); + file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; _voice = new VocSound(_mixer, file); @@ -342,11 +356,13 @@ void Sound::loadVoiceFile(const GameSpecificSettings *gss) { } void Sound::loadSfxFile(const GameSpecificSettings *gss) { + char filename[16]; File *file = new File(); #ifdef USE_MAD - if (!_hasEffectsFile && gss->mp3_effects_filename && gss->mp3_effects_filename[0]) { - file->open(gss->mp3_effects_filename); + if (!_hasEffectsFile) { + sprintf(filename, "%s.mp3", gss->effects_filename); + file->open(filename); if (file->isOpen()) { _hasEffectsFile = true; _effects = new MP3Sound(_mixer, file); @@ -354,8 +370,9 @@ void Sound::loadSfxFile(const GameSpecificSettings *gss) { } #endif #ifdef USE_VORBIS - if (!_hasEffectsFile && gss->vorbis_effects_filename && gss->vorbis_effects_filename[0]) { - file->open(gss->vorbis_effects_filename); + if (!_hasEffectsFile) { + sprintf(filename, "%s.ogg", gss->effects_filename); + file->open(filename); if (file->isOpen()) { _hasEffectsFile = true; _effects = new VorbisSound(_mixer, file); @@ -363,16 +380,26 @@ void Sound::loadSfxFile(const GameSpecificSettings *gss) { } #endif #ifdef USE_FLAC - if (!_hasEffectsFile && gss->flac_effects_filename && gss->flac_effects_filename[0]) { - file->open(gss->flac_effects_filename); + if (!_hasEffectsFile) { + sprintf(filename, "%s.flac", gss->effects_filename); + file->open(filename); if (file->isOpen()) { _hasEffectsFile = true; _effects = new FlacSound(_mixer, file); } } #endif - if (!_hasEffectsFile && gss->voc_effects_filename && gss->voc_effects_filename[0]) { - file->open(gss->voc_effects_filename); + if (!_hasEffectsFile) { + sprintf(filename, "%s.voc", gss->effects_filename); + file->open(filename); + if (file->isOpen()) { + _hasEffectsFile = true; + _effects = new VocSound(_mixer, file); + } + } + if (!_hasEffectsFile) { + sprintf(filename, "%s", gss->effects_filename); + file->open(filename); if (file->isOpen()) { _hasEffectsFile = true; _effects = new VocSound(_mixer, file); @@ -591,7 +618,7 @@ void Sound::stopSfx5() { _mixer->stopHandle(_sfx5Handle); } -void Sound::switchVoiceFile(uint disc) { +void Sound::switchVoiceFile(const GameSpecificSettings *gss, uint disc) { if (_lastVoiceFile == disc) return; @@ -606,7 +633,7 @@ void Sound::switchVoiceFile(uint disc) { #ifdef USE_FLAC if (!_hasVoiceFile) { - sprintf(filename, "voices%d.flac",disc); + sprintf(filename, "%s%d.flac", gss->speech_filename, disc); file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; @@ -616,7 +643,7 @@ void Sound::switchVoiceFile(uint disc) { #endif #ifdef USE_MAD if (!_hasVoiceFile) { - sprintf(filename, "voices%d.mp3",disc); + sprintf(filename, "%s%d.mp3", gss->speech_filename, disc); file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; @@ -626,7 +653,7 @@ void Sound::switchVoiceFile(uint disc) { #endif #ifdef USE_VORBIS if (!_hasVoiceFile) { - sprintf(filename, "voices%d.ogg",disc); + sprintf(filename, "%s%d.ogg", gss->speech_filename, disc); file->open(filename); if (file->isOpen()) { _hasVoiceFile = true; @@ -635,7 +662,7 @@ void Sound::switchVoiceFile(uint disc) { } #endif if (!_hasVoiceFile) { - sprintf(filename, "voices%d.ogg",disc); + sprintf(filename, "%s%d.ogg", gss->speech_filename, disc); file->open(filename); if (file->isOpen() == false) { warning("switchVoiceFile: Can't load voice file %s", filename); diff --git a/engines/simon/sound.h b/engines/simon/sound.h index 17ebd13263..093f36c3f1 100644 --- a/engines/simon/sound.h +++ b/engines/simon/sound.h @@ -78,7 +78,7 @@ public: void playSfx5Data(byte *soundData, uint sound, uint pan, uint vol); void playSoundData(Audio::SoundHandle *handle, byte *soundData, uint sound, uint pan, uint vol, bool loop); void playVoiceData(byte *soundData, uint sound); - void switchVoiceFile(uint disc); + void switchVoiceFile(const GameSpecificSettings *gss, uint disc); bool hasVoice() const; bool isVoiceActive() const; |