diff options
author | Paul Gilbert | 2016-04-10 09:19:37 -0400 |
---|---|---|
committer | Paul Gilbert | 2016-04-10 09:19:37 -0400 |
commit | 78d03f9784d17f65b29e5b6836d23d8f494d3c7c (patch) | |
tree | 28f242e51fcbef416e0b5cef568f7dd32366aa4f /engines/titanic/support | |
parent | c96164dde01f6336615528d2a7c930c37c696be2 (diff) | |
download | scummvm-rg350-78d03f9784d17f65b29e5b6836d23d8f494d3c7c.tar.gz scummvm-rg350-78d03f9784d17f65b29e5b6836d23d8f494d3c7c.tar.bz2 scummvm-rg350-78d03f9784d17f65b29e5b6836d23d8f494d3c7c.zip |
TITANIC: Television video is now playing
Diffstat (limited to 'engines/titanic/support')
-rw-r--r-- | engines/titanic/support/movie.cpp | 10 | ||||
-rw-r--r-- | engines/titanic/support/movie.h | 24 | ||||
-rw-r--r-- | engines/titanic/support/video_surface.cpp | 8 | ||||
-rw-r--r-- | engines/titanic/support/video_surface.h | 26 |
4 files changed, 53 insertions, 15 deletions
diff --git a/engines/titanic/support/movie.cpp b/engines/titanic/support/movie.cpp index 79e0a7bc9f..7593c74e42 100644 --- a/engines/titanic/support/movie.cpp +++ b/engines/titanic/support/movie.cpp @@ -61,12 +61,13 @@ OSMovie::~OSMovie() { delete _video; } -void OSMovie::proc8(int v1, CVideoSurface *surface) { +void OSMovie::play(int v1, CVideoSurface *surface) { warning("TODO: OSMovie::proc8"); + play(0, 0, 0, 0); } -void OSMovie::proc9(int v1, int v2, int v3, bool v4) { - warning("TODO: OSMovie::proc9"); +void OSMovie::play(int v1, int v2, int v3, bool v4) { + warning("TODO: OSMovie::play properly"); //setFrame(v1); ? _video->start(); g_vm->_activeMovies.push_back(this); @@ -172,6 +173,9 @@ void OSMovie::decodeFrame() { // Unlock the surface videoSurface->unlock(); + + if (_gameObject) + _gameObject->makeDirty(); } } // End of namespace Titanic diff --git a/engines/titanic/support/movie.h b/engines/titanic/support/movie.h index 08d2940fe4..b488d26e39 100644 --- a/engines/titanic/support/movie.h +++ b/engines/titanic/support/movie.h @@ -49,8 +49,16 @@ public: CMovie(); virtual ~CMovie(); - virtual void proc8(int v1, CVideoSurface *surface) = 0; - virtual void proc9(int v1, int v2, int v3, bool v4) = 0; + /** + * Plays the movie + */ + virtual void play(int v1, CVideoSurface *surface) = 0; + + /** + * Plays the movie + */ + virtual void play(int v1, int v2, int v3, bool v4) = 0; + virtual void proc10() = 0; virtual void proc11() = 0; virtual void proc12() = 0; @@ -87,8 +95,16 @@ public: OSMovie(const CResourceKey &name, CVideoSurface *surface); virtual ~OSMovie(); - virtual void proc8(int v1, CVideoSurface *surface); - virtual void proc9(int v1, int v2, int v3, bool v4); + /** + * Plays the movie + */ + virtual void play(int v1, CVideoSurface *surface); + + /** + * Plays the movie + */ + virtual void play(int v1, int v2, int v3, bool v4); + virtual void proc10(); virtual void proc11(); virtual void proc12(); diff --git a/engines/titanic/support/video_surface.cpp b/engines/titanic/support/video_surface.cpp index c7b437e1e7..3fb513c5fc 100644 --- a/engines/titanic/support/video_surface.cpp +++ b/engines/titanic/support/video_surface.cpp @@ -379,14 +379,14 @@ void OSVideoSurface::shiftColors() { // we already convert 16-bit surfaces as soon as they're loaded } -void OSVideoSurface::proc32(int v1, CVideoSurface *surface) { +void OSVideoSurface::playMovie(int newStatus, CVideoSurface *surface) { if (loadIfReady() && _movie) - _movie->proc8(v1, surface); + _movie->play(newStatus, surface); } -void OSVideoSurface::proc34(int v1, int v2, int v3, bool v4) { +void OSVideoSurface::playMovie(int v1, int v2, int v3, bool v4) { if (loadIfReady() && _movie) { - _movie->proc9(v1, v2, v3, v4); + _movie->play(v1, v2, v3, v4); } } diff --git a/engines/titanic/support/video_surface.h b/engines/titanic/support/video_surface.h index 335215d1df..c4947ca766 100644 --- a/engines/titanic/support/video_surface.h +++ b/engines/titanic/support/video_surface.h @@ -154,8 +154,17 @@ public: */ virtual void shiftColors() = 0; - virtual void proc32(int v1, CVideoSurface *surface) = 0; - virtual void proc34(int v1, int v2, int v3, bool v4) = 0; + /** + * Plays a movie, loading it from the specified _resource + * if not already loaded + */ + virtual void playMovie(int newStatus, CVideoSurface *surface) = 0; + + /** + * Plays a movie, loading it from the specified _resource + * if not already loaded + */ + virtual void playMovie(int v1, int v2, int v3, bool v4) = 0; /** * Stops any movie currently attached to the surface @@ -304,8 +313,17 @@ public: */ virtual void shiftColors(); - virtual void proc32(int v1, CVideoSurface *surface); - virtual void proc34(int v1, int v2, int v3, bool v4); + /** + * Plays a movie, loading it from the specified _resource + * if not already loaded + */ + virtual void playMovie(int newStatus, CVideoSurface *surface); + + /** + * Plays a movie, loading it from the specified _resource + * if not already loaded + */ + virtual void playMovie(int v1, int v2, int v3, bool v4); /** * Stops any movie currently attached to the surface |