diff options
author | Andrei Prykhodko | 2019-05-08 12:01:22 +0300 |
---|---|---|
committer | Andrei Prykhodko | 2019-05-08 12:01:22 +0300 |
commit | 3c67ce0eed26712946244d06e119ee398562a704 (patch) | |
tree | dc3266ceb7cecced0a6316119d8c46fc081d5a01 /engines | |
parent | 711b7399a07d602df1b33f98a4b2225770b51c30 (diff) | |
download | scummvm-rg350-3c67ce0eed26712946244d06e119ee398562a704.tar.gz scummvm-rg350-3c67ce0eed26712946244d06e119ee398562a704.tar.bz2 scummvm-rg350-3c67ce0eed26712946244d06e119ee398562a704.zip |
PINK: removed usage of global variable
Diffstat (limited to 'engines')
-rw-r--r-- | engines/pink/objects/actions/action_play_with_sfx.cpp | 5 | ||||
-rw-r--r-- | engines/pink/objects/actions/action_play_with_sfx.h | 2 | ||||
-rw-r--r-- | engines/pink/objects/sequences/sequencer.cpp | 15 | ||||
-rw-r--r-- | engines/pink/objects/sequences/sequencer.h | 2 |
4 files changed, 11 insertions, 13 deletions
diff --git a/engines/pink/objects/actions/action_play_with_sfx.cpp b/engines/pink/objects/actions/action_play_with_sfx.cpp index 3064215fd3..0ebb869411 100644 --- a/engines/pink/objects/actions/action_play_with_sfx.cpp +++ b/engines/pink/objects/actions/action_play_with_sfx.cpp @@ -26,11 +26,10 @@ #include "pink/objects/actors/actor.h" #include "pink/objects/actions/action_play_with_sfx.h" #include "pink/objects/pages/game_page.h" +#include "pink/objects/sequences/sequencer.h" namespace Pink { -bool g_skipping = false; // FIXME: non-const global var - ActionPlayWithSfx::~ActionPlayWithSfx() { ActionPlay::end(); for (uint i = 0; i < _sfxArray.size(); ++i) { @@ -77,7 +76,7 @@ void ActionPlayWithSfx::end() { ActionCEL::end(); debugC(6, kPinkDebugActions, "ActionPlayWithSfx %s of Actor %s is ended", _name.c_str(), _actor->getName().c_str()); // original bug fix - if (g_skipping) { + if (_actor->getPage()->getSequencer()->isSkipping()) { for (uint i = 0; i < _sfxArray.size(); ++i) { _sfxArray[i]->end(); } diff --git a/engines/pink/objects/actions/action_play_with_sfx.h b/engines/pink/objects/actions/action_play_with_sfx.h index 16d1855584..d595bc1069 100644 --- a/engines/pink/objects/actions/action_play_with_sfx.h +++ b/engines/pink/objects/actions/action_play_with_sfx.h @@ -28,8 +28,6 @@ namespace Pink { -extern bool g_skipping; - class ActionSfx; class ActionPlayWithSfx : public ActionPlay { diff --git a/engines/pink/objects/sequences/sequencer.cpp b/engines/pink/objects/sequences/sequencer.cpp index df5522de54..437f6b956e 100644 --- a/engines/pink/objects/sequences/sequencer.cpp +++ b/engines/pink/objects/sequences/sequencer.cpp @@ -24,7 +24,6 @@ #include "pink/archive.h" #include "pink/pink.h" -#include "pink/objects/actions/action_play_with_sfx.h" #include "pink/objects/actors/lead_actor.h" #include "pink/objects/pages/game_page.h" #include "pink/objects/sequences/sequencer.h" @@ -35,7 +34,7 @@ namespace Pink { Sequencer::Sequencer(GamePage *page) - : _context(nullptr), _page(page), _time(0) {} + : _context(nullptr), _page(page), _time(0), _isSkipping(false) {} Sequencer::~Sequencer() { for (uint i = 0; i < _sequences.size(); ++i) { @@ -145,25 +144,25 @@ void Sequencer::removeContext(SequenceContext *context) { void Sequencer::skipSubSequence() { if (_context) { - g_skipping = true; + _isSkipping = true; _context->getSequence()->skipSubSequence(); - g_skipping = false; + _isSkipping = false; } } void Sequencer::restartSequence() { if (_context) { - g_skipping = true; + _isSkipping = true; _context->getSequence()->restart(); - g_skipping = false; + _isSkipping = false; } } void Sequencer::skipSequence() { if (_context && _context->getSequence()->isSkippingAllowed()) { - g_skipping = true; + _isSkipping = true; _context->getSequence()->skip(); - g_skipping = false; + _isSkipping = false; } } diff --git a/engines/pink/objects/sequences/sequencer.h b/engines/pink/objects/sequences/sequencer.h index 7c74b2789d..1aec5f556c 100644 --- a/engines/pink/objects/sequences/sequencer.h +++ b/engines/pink/objects/sequences/sequencer.h @@ -47,6 +47,7 @@ public: void saveState(Archive &archive); bool isPlaying() { return _context != nullptr; } + bool isSkipping() { return _isSkipping; } void update(); void authorSequence(Sequence *sequence, bool loadingSave); @@ -72,6 +73,7 @@ private: Array<Sequence *> _sequences; Array<SeqTimer *> _timers; uint _time; + bool _isSkipping; }; } // End of namespace Pink |