HOPKINS: Replace a global variable by a parameter in playSequence()

This commit is contained in:
Strangerke 2013-02-03 22:51:34 +01:00
parent cec23051b3
commit db60dcb432
5 changed files with 7 additions and 12 deletions

View File

@ -597,7 +597,7 @@ void AnimationManager::searchAnim(const byte *data, int animIndex, int bufSize)
/**
* Play sequence
*/
void AnimationManager::playSequence(const Common::String &file, uint32 rate1, uint32 rate2, uint32 rate3) {
void AnimationManager::playSequence(const Common::String &file, uint32 rate1, uint32 rate2, uint32 rate3, bool skipEscFl) {
bool readError;
byte *screenCopy = NULL;
byte *screenP;
@ -666,7 +666,7 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
if (_vm->_globals.iRegul == 1) {
do {
if (_vm->_eventsManager._escKeyFl) {
if (!_vm->_eventsManager._disableEscKeyFl)
if (!skipEscFl)
skipFl = true;
else
_vm->_eventsManager._escKeyFl = false;
@ -687,7 +687,7 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
if (_vm->_globals.iRegul == 1) {
do {
if (_vm->_eventsManager._escKeyFl) {
if (!_vm->_eventsManager._disableEscKeyFl)
if (!skipEscFl)
skipFl = true;
else
_vm->_eventsManager._escKeyFl = false;
@ -719,7 +719,7 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
if (_vm->_globals.iRegul == 1) {
do {
if (_vm->_eventsManager._escKeyFl) {
if (!_vm->_eventsManager._disableEscKeyFl)
if (!skipEscFl)
skipFl = true;
else
_vm->_eventsManager._escKeyFl = false;
@ -756,7 +756,7 @@ void AnimationManager::playSequence(const Common::String &file, uint32 rate1, ui
if (_vm->_globals.iRegul == 1 && !skipFl) {
do {
if (_vm->_eventsManager._escKeyFl) {
if (!_vm->_eventsManager._disableEscKeyFl)
if (!skipEscFl)
skipFl = true;
else
_vm->_eventsManager._escKeyFl = false;

View File

@ -51,7 +51,7 @@ public:
void clearAnim();
void playAnim(const Common::String &filename, uint32 rate1, uint32 rate2, uint32 rate3);
void playAnim2(const Common::String &filename, uint32 rate1, uint32 rate2, uint32 rate3);
void playSequence(const Common::String &file, uint32 rate1, uint32 rate2, uint32 rate3);
void playSequence(const Common::String &file, uint32 rate1, uint32 rate2, uint32 rate3, bool skipEscFl = false);
void playSequence2(const Common::String &file, uint32 rate1, uint32 rate2, uint32 rate3);
};

View File

@ -53,8 +53,6 @@ EventsManager::EventsManager() {
Common::fill(&_keyState[0], &_keyState[256], false);
_priorCounterTime = 0;
_priorFrameTime = 0;
_disableEscKeyFl = false;
}
EventsManager::~EventsManager() {

View File

@ -62,7 +62,6 @@ public:
uint32 _priorCounterTime;
uint32 _priorFrameTime;
bool _escKeyFl;
bool _disableEscKeyFl;
DIALOG_KEY _gameKey;
int _mouseCursorId;
byte *_objectBuf;

View File

@ -1820,9 +1820,7 @@ int ScriptManager::handleOpcode(byte *dataP) {
_vm->_globals._disableInventFl = true;
if (_vm->_globals._saveData->_data[svField6] != _vm->_globals._saveData->_data[svField401]) {
_vm->_soundManager._specialSoundNum = 208;
_vm->_eventsManager._disableEscKeyFl = true;
_vm->_animationManager.playSequence("SORT.SEQ", 10, 4, 10);
_vm->_eventsManager._disableEscKeyFl = false;
_vm->_animationManager.playSequence("SORT.SEQ", 10, 4, 10, true);
_vm->_soundManager._specialSoundNum = 0;
}
_vm->_globals.NOT_VERIF = true;