aboutsummaryrefslogtreecommitdiff
path: root/engines/hopkins
diff options
context:
space:
mode:
Diffstat (limited to 'engines/hopkins')
-rw-r--r--engines/hopkins/computer.cpp2
-rw-r--r--engines/hopkins/files.cpp2
-rw-r--r--engines/hopkins/sound.cpp53
-rw-r--r--engines/hopkins/sound.h2
-rw-r--r--engines/hopkins/talk.cpp2
5 files changed, 38 insertions, 23 deletions
diff --git a/engines/hopkins/computer.cpp b/engines/hopkins/computer.cpp
index 84d5c631c7..18b16cb4c8 100644
--- a/engines/hopkins/computer.cpp
+++ b/engines/hopkins/computer.cpp
@@ -883,7 +883,7 @@ void ComputerManager::getScoreName() {
_vm->_graphicsMan->setColorPercentage(254, 0, 0, 0);
byte *ptr = _vm->_fileIO->loadFile("ALPHA.SPR");
_vm->_graphicsMan->fadeInBreakout();
-
+
// Figure out the line to put the new high score on
int scoreLine = 0;
while (scoreLine < 5 && _breakoutScore < atol(_score[scoreLine]._score.c_str()))
diff --git a/engines/hopkins/files.cpp b/engines/hopkins/files.cpp
index 6620f2878c..3100ed6cdc 100644
--- a/engines/hopkins/files.cpp
+++ b/engines/hopkins/files.cpp
@@ -74,7 +74,7 @@ int FileManager::readStream(Common::ReadStream &stream, void *buf, size_t nbytes
* It's now using the config manager and a per-engine GUI option.
*/
void FileManager::initCensorship() {
- _vm->_globals->_censorshipFl = ConfMan.getBool("enable_gore");
+ _vm->_globals->_censorshipFl = !ConfMan.getBool("enable_gore");
}
/**
diff --git a/engines/hopkins/sound.cpp b/engines/hopkins/sound.cpp
index 773c714899..6660233740 100644
--- a/engines/hopkins/sound.cpp
+++ b/engines/hopkins/sound.cpp
@@ -261,9 +261,9 @@ void SoundManager::loadAnimSound() {
}
}
-void SoundManager::playAnimSound(int soundNumber) {
+void SoundManager::playAnimSound(int animFrame) {
if (!_vm->_globals->_censorshipFl && _specialSoundNum == 2) {
- switch (soundNumber) {
+ switch (animFrame) {
case 20:
playSample(5);
break;
@@ -273,44 +273,59 @@ void SoundManager::playAnimSound(int soundNumber) {
playSample(1);
break;
case 75:
- playSample(2);
+ // This removes the sound of the gun played while the guard is being shot, as this part of the scene has been
+ // removed in the Polish version of the game
+ if (_vm->getLanguage() != Common::PL_POL)
+ playSample(2);
+ break;
+ case 95:
+ // This fixes an original bug in the Polish version of the game, which was literally butchered for some reason
+ if (_vm->getLanguage() == Common::PL_POL)
+ playSample(3);
break;
case 109:
- playSample(3);
+ if (_vm->getLanguage() != Common::PL_POL)
+ playSample(3);
+ break;
+ case 108:
+ // This fixes an original bug in the Polish version of the game, which was literally butchered for some reason
+ if (_vm->getLanguage() == Common::PL_POL)
+ playSample(4);
break;
case 122:
- playSample(4);
+ if (_vm->getLanguage() != Common::PL_POL)
+ playSample(4);
break;
}
- } else if (_specialSoundNum == 1 && soundNumber == 17)
+ } else if (_specialSoundNum == 1 && animFrame == 17)
playSoundFile("SOUND42.WAV");
- else if (_specialSoundNum == 5 && soundNumber == 19)
+ else if (_specialSoundNum == 5 && animFrame == 19)
playWav(1);
- else if (_specialSoundNum == 14 && soundNumber == 625)
+ else if (_specialSoundNum == 14 && animFrame == 625)
playWav(1);
- else if (_specialSoundNum == 16 && soundNumber == 25)
+ else if (_specialSoundNum == 16 && animFrame == 25)
playWav(1);
else if (_specialSoundNum == 17) {
- if (soundNumber == 6)
+ if (animFrame == 6)
playSample(1);
- else if (soundNumber == 14)
+ else if (animFrame == 14)
playSample(2);
- else if (soundNumber == 67)
+ else if (animFrame == 67)
playSample(3);
- } else if (_specialSoundNum == 198 && soundNumber == 15)
+ } else if (_specialSoundNum == 198 && animFrame == 15)
playWav(1);
- else if (_specialSoundNum == 199 && soundNumber == 72)
+ else if (_specialSoundNum == 199 && animFrame == 72)
playWav(1);
- else if (_specialSoundNum == 208 && soundNumber == 40)
+ else if (_specialSoundNum == 208 && animFrame == 40)
playWav(1);
- else if (_specialSoundNum == 210 && soundNumber == 2)
+ else if (_specialSoundNum == 210 && animFrame == 2)
playWav(1);
- else if (_specialSoundNum == 211 && soundNumber == 22)
+ else if (_specialSoundNum == 211 && animFrame == 22)
playWav(1);
else if (_specialSoundNum == 229) {
- if (soundNumber == 15)
+ if (animFrame == 15)
playWav(1);
- else if (soundNumber == 91)
+ else if (animFrame == 91)
playWav(2);
}
}
diff --git a/engines/hopkins/sound.h b/engines/hopkins/sound.h
index 97cdcdc1dd..1fb4f9ae71 100644
--- a/engines/hopkins/sound.h
+++ b/engines/hopkins/sound.h
@@ -116,7 +116,7 @@ public:
~SoundManager();
void loadAnimSound();
- void playAnimSound(int soundNumber);
+ void playAnimSound(int animFrame);
void loadSample(int wavIndex, const Common::String &file);
void playSample(int wavIndex, int voiceMode = 9);
diff --git a/engines/hopkins/talk.cpp b/engines/hopkins/talk.cpp
index df7b26c82c..00c4ab0332 100644
--- a/engines/hopkins/talk.cpp
+++ b/engines/hopkins/talk.cpp
@@ -68,7 +68,7 @@ void TalkManager::startAnimatedCharacterDialogue(const Common::String &filename)
getStringFromBuffer(40, spriteFilename, (const char *)_characterBuffer);
getStringFromBuffer(0, _questionsFilename, (const char *)_characterBuffer);
getStringFromBuffer(20, _answersFilename, (const char *)_characterBuffer);
-
+
switch (_vm->_globals->_language) {
case LANG_FR:
_answersFilename = _questionsFilename = "RUE.TXT";