aboutsummaryrefslogtreecommitdiff
path: root/engines/supernova2/state.cpp
diff options
context:
space:
mode:
authorJaromir Wysoglad2019-06-03 10:56:24 +0200
committerThierry Crozat2019-07-28 15:09:14 +0100
commit63ca424ac30e8651969983507edd30dc43dc1d35 (patch)
treec7bb62706b6e9052676a81cb1214b78ed06b4a88 /engines/supernova2/state.cpp
parentb9c528425ae154660e2c2c3041b5dc285a1621e0 (diff)
downloadscummvm-rg350-63ca424ac30e8651969983507edd30dc43dc1d35.tar.gz
scummvm-rg350-63ca424ac30e8651969983507edd30dc43dc1d35.tar.bz2
scummvm-rg350-63ca424ac30e8651969983507edd30dc43dc1d35.zip
SUPERNOVA2: Add sound to all rooms currently coded
Diffstat (limited to 'engines/supernova2/state.cpp')
-rw-r--r--engines/supernova2/state.cpp21
1 files changed, 21 insertions, 0 deletions
diff --git a/engines/supernova2/state.cpp b/engines/supernova2/state.cpp
index 766529a0ed..d179011b37 100644
--- a/engines/supernova2/state.cpp
+++ b/engines/supernova2/state.cpp
@@ -972,6 +972,18 @@ void GameManager::handleTime() {
_oldTime = newTime;
}
+void GameManager::pauseTimer(bool pause) {
+ if (pause == _timerPaused)
+ return;
+
+ if (pause) {
+ _timerPaused = true;
+ } else {
+ _oldTime = g_system->getMillis();
+ _timerPaused = false;
+ }
+}
+
int GameManager::invertSection(int section) {
if (section < 128)
section += 128;
@@ -990,6 +1002,7 @@ bool GameManager::genericInteract(Action verb, Object &obj1, Object &obj2) {
takeObject(*_rooms[TAXISTAND]->getObject(4));
takeObject(*_rooms[TAXISTAND]->getObject(5));
takeMoney(1);
+ _vm->playSound(kAudioSuccess);
}
} else if (verb == ACTION_PRESS && obj1._id == TRANSMITTER) {
if (_currentRoom == _rooms[TAXISTAND]) {
@@ -997,6 +1010,7 @@ bool GameManager::genericInteract(Action verb, Object &obj1, Object &obj2) {
_vm->renderImage(5);
wait(3);
_vm->renderImage(6);
+ _vm->playSound(kAudioTaxiOpen);
_currentRoom->getObject(0)->_type = EXIT;
drawMapExits();
}
@@ -1064,6 +1078,7 @@ bool GameManager::genericInteract(Action verb, Object &obj1, Object &obj2) {
case 2:
_vm->renderMessage(kStringTransferCD);
_state._admission = 2;
+ _vm->playSound(kAudioSuccess);
break;
default:
_vm->renderMessage(kStringCDNotInserted);
@@ -1258,6 +1273,9 @@ void GameManager::taxiPayment(int price, int destination) {
Common::String t = _vm->getGameString(kStringTaxiAccelerating);
_vm->renderMessage(t);
+ _vm->playSound(kAudioTaxiLeaving);
+ while(_vm->_sound->isPlaying())
+ wait(1);
waitOnInput((t.size() + 20) * _vm->_textSpeed / 10);
_vm->removeMessage();
@@ -1267,6 +1285,9 @@ void GameManager::taxiPayment(int price, int destination) {
Common::String t2 = _vm->getGameString(kString5MinutesLater);
_vm->renderMessage(t2);
+ _vm->playSound(kAudioTaxiArriving);
+ while(_vm->_sound->isPlaying())
+ wait(1);
waitOnInput((t2.size() + 20) * _vm->_textSpeed / 10);
_vm->removeMessage();