diff options
author | Paul Gilbert | 2015-10-12 21:42:35 -0400 |
---|---|---|
committer | Paul Gilbert | 2015-10-12 21:42:35 -0400 |
commit | fc6bde8f2388aa39bd976f2e2d7b9daab38c134a (patch) | |
tree | 038f8e97e2079959b7d8e0c83ccb54798646d4da /engines/sherlock | |
parent | 8bed2184154dab111c374c46562763386c47cda0 (diff) | |
download | scummvm-rg350-fc6bde8f2388aa39bd976f2e2d7b9daab38c134a.tar.gz scummvm-rg350-fc6bde8f2388aa39bd976f2e2d7b9daab38c134a.tar.bz2 scummvm-rg350-fc6bde8f2388aa39bd976f2e2d7b9daab38c134a.zip |
SHERLOCK: RT: Slightly increase movement speed
This may cause slight timing issues when doing animations of Holmes
playing musical instruments; I've already added special cases for
several of them to still keep animations in sync with the music
Diffstat (limited to 'engines/sherlock')
-rw-r--r-- | engines/sherlock/events.h | 2 | ||||
-rw-r--r-- | engines/sherlock/tattoo/tattoo_scene.cpp | 5 | ||||
-rw-r--r-- | engines/sherlock/tattoo/tattoo_talk.cpp | 5 |
3 files changed, 10 insertions, 2 deletions
diff --git a/engines/sherlock/events.h b/engines/sherlock/events.h index e13ef18822..c3fa147399 100644 --- a/engines/sherlock/events.h +++ b/engines/sherlock/events.h @@ -30,7 +30,7 @@ namespace Sherlock { -#define GAME_FRAME_RATE 30 +#define GAME_FRAME_RATE 40 #define GAME_FRAME_TIME (1000 / GAME_FRAME_RATE) enum CursorId { ARROW = 0, MAGNIFY = 1, WAIT = 2, EXIT_ZONES_START = 5, INVALID_CURSOR = -1 }; diff --git a/engines/sherlock/tattoo/tattoo_scene.cpp b/engines/sherlock/tattoo/tattoo_scene.cpp index 4dffaa0ce0..3b3e10d814 100644 --- a/engines/sherlock/tattoo/tattoo_scene.cpp +++ b/engines/sherlock/tattoo/tattoo_scene.cpp @@ -655,7 +655,9 @@ int TattooScene::startCAnim(int cAnimNum, int playRate) { if (ui._windowOpen) ui.banishWindow(); - //_activeCAnim._filesize = cAnim._size; + if (_currentScene == 3 && cAnimNum == 21) + // Set framerate for correct playing of violin in Holmes' bedroom + events.setFrameRate(30); // Open up the room resource file and get the data for the animation Common::SeekableReadStream *stream = res.load(_roomFilename); @@ -719,6 +721,7 @@ int TattooScene::startCAnim(int cAnimNum, int playRate) { _activeCAnim._zPlacement = REMOVE; _activeCAnim._removeBounds = _activeCAnim._oldBounds; _vm->_ui->_bgFound = -1; + events.setFrameRate(GAME_FRAME_RATE); // Free up the animation _activeCAnim.close(); diff --git a/engines/sherlock/tattoo/tattoo_talk.cpp b/engines/sherlock/tattoo/tattoo_talk.cpp index a4ceca042b..dd5c821d22 100644 --- a/engines/sherlock/tattoo/tattoo_talk.cpp +++ b/engines/sherlock/tattoo/tattoo_talk.cpp @@ -192,6 +192,9 @@ void TattooTalk::talkTo(const Common::String filename) { if (filename == "wilb29a") events.incWaitCounter(); + if (filename == "keys33d") + events.setFrameRate(30); + Talk::talkTo(filename); if (filename == "wilb29a") @@ -200,6 +203,8 @@ void TattooTalk::talkTo(const Common::String filename) { events.decWaitCounter(); events.setCursor(ARROW); } + if (filename == "keys33d") + events.setFrameRate(GAME_FRAME_RATE); } void TattooTalk::talkInterface(const byte *&str) { |