aboutsummaryrefslogtreecommitdiff
path: root/engines/sludge/freeze.cpp
diff options
context:
space:
mode:
authorSimei Yin2017-12-19 21:24:31 +0100
committerSimei Yin2017-12-19 22:12:08 +0100
commitd98016b22293c9f692050bef62e81c1cb70ff1fa (patch)
treefba0b94b235671baba7de5e9a75075d011f3ba78 /engines/sludge/freeze.cpp
parenta2eb11f464f33b4e2bff1b6c3c0a8d240921f5d2 (diff)
downloadscummvm-rg350-d98016b22293c9f692050bef62e81c1cb70ff1fa.tar.gz
scummvm-rg350-d98016b22293c9f692050bef62e81c1cb70ff1fa.tar.bz2
scummvm-rg350-d98016b22293c9f692050bef62e81c1cb70ff1fa.zip
SLUDGE: Objectify speech manager
Diffstat (limited to 'engines/sludge/freeze.cpp')
-rw-r--r--engines/sludge/freeze.cpp18
1 files changed, 4 insertions, 14 deletions
diff --git a/engines/sludge/freeze.cpp b/engines/sludge/freeze.cpp
index 3e8cdef0d0..9f55564502 100644
--- a/engines/sludge/freeze.cpp
+++ b/engines/sludge/freeze.cpp
@@ -19,6 +19,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
*
*/
+
#include "sludge/allfiles.h"
#include "sludge/cursors.h"
#include "sludge/backdrop.h"
@@ -30,12 +31,12 @@
#include "sludge/objtypes.h"
#include "sludge/people.h"
#include "sludge/region.h"
+#include "sludge/speech.h"
#include "sludge/sprites.h"
#include "sludge/sprbanks.h"
#include "sludge/sludge.h"
#include "sludge/sludger.h"
#include "sludge/statusba.h"
-#include "sludge/talk.h"
#include "sludge/zbuffer.h"
namespace Sludge {
@@ -43,7 +44,6 @@ namespace Sludge {
extern OnScreenPerson *allPeople;
extern ScreenRegion *allScreenRegions;
extern ScreenRegion *overRegion;
-extern SpeechStruct *speech;
void GraphicsManager::freezeGraphics() {
@@ -100,10 +100,7 @@ bool GraphicsManager::freeze() {
overRegion = NULL;
_vm->_cursorMan->freeze(newFreezer);
-
- newFreezer->speech = speech;
- initSpeech();
-
+ _vm->_speechMan->freeze(newFreezer);
_vm->_evtMan->freeze(newFreezer);
newFreezer->next = _frozenStuff;
@@ -168,19 +165,12 @@ void GraphicsManager::unfreeze(bool killImage) {
killParallax();
_parallaxStuff = _frozenStuff->parallaxStuff;
-
_vm->_cursorMan->resotre(_frozenStuff);
-
restoreBarStuff(_frozenStuff->frozenStatus);
-
_vm->_evtMan->restore(_frozenStuff);
+ _vm->_speechMan->restore(_frozenStuff);
- killAllSpeech();
- delete speech;
-
- speech = _frozenStuff->speech;
_frozenStuff = _frozenStuff->next;
-
overRegion = NULL;
// free current frozen screen struct