diff options
author | Paul Gilbert | 2011-02-26 23:51:24 +1100 |
---|---|---|
committer | Paul Gilbert | 2011-02-26 23:51:24 +1100 |
commit | 5a606d86e1349598405189f0cf049223c7c09016 (patch) | |
tree | 012d8529b4c6c24cf498a6d539f06537456a7529 /engines | |
parent | 3a601812d22afdb0178ffd261a864a0a9e3cc88a (diff) | |
download | scummvm-rg350-5a606d86e1349598405189f0cf049223c7c09016.tar.gz scummvm-rg350-5a606d86e1349598405189f0cf049223c7c09016.tar.bz2 scummvm-rg350-5a606d86e1349598405189f0cf049223c7c09016.zip |
TSAGE: Bugfix for credits animations in Scene 1000
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tsage/core.cpp | 1 | ||||
-rw-r--r-- | engines/tsage/graphics.cpp | 1 | ||||
-rw-r--r-- | engines/tsage/ringworld_scenes1.cpp | 4 |
3 files changed, 4 insertions, 2 deletions
diff --git a/engines/tsage/core.cpp b/engines/tsage/core.cpp index 96723570fc..49ff32e35c 100644 --- a/engines/tsage/core.cpp +++ b/engines/tsage/core.cpp @@ -1662,6 +1662,7 @@ void SceneObject::setPosition(const Common::Point &p, int yDiff) { } void SceneObject::setZoom(int percent) { + assert(_percent >= 0); if (percent != _percent) { _percent = percent; _flags |= OBJFLAG_PANES; diff --git a/engines/tsage/graphics.cpp b/engines/tsage/graphics.cpp index f55605fbac..93bb7ea63f 100644 --- a/engines/tsage/graphics.cpp +++ b/engines/tsage/graphics.cpp @@ -277,6 +277,7 @@ void GfxSurface::setSurface(Graphics::Surface *s) { * Specifies that the surface should maintain it's own internal surface */ void GfxSurface::create(int width, int height) { + assert((width >= 0) && (height >= 0)); _screenSurface = false; _customSurface = new Graphics::Surface(); _customSurface->create(width, height, 1); diff --git a/engines/tsage/ringworld_scenes1.cpp b/engines/tsage/ringworld_scenes1.cpp index 9c81c1a1a4..30ef599269 100644 --- a/engines/tsage/ringworld_scenes1.cpp +++ b/engines/tsage/ringworld_scenes1.cpp @@ -3002,13 +3002,13 @@ void Scene1000::Action3::zoom(bool up) { if (up) { while ((scene->_object3._percent < 100) && !_vm->shouldQuit()) { - scene->_object3.changeZoom(scene->_object3._percent + 5); + scene->_object3.changeZoom(MIN(scene->_object3._percent + 5, 100)); _globals->_sceneObjects->draw(); _globals->_events.delay(1); } } else { while ((scene->_object3._percent > 0) && !_vm->shouldQuit()) { - scene->_object3.changeZoom(scene->_object3._percent - 5); + scene->_object3.changeZoom(MAX(scene->_object3._percent - 5, 0)); _globals->_sceneObjects->draw(); _globals->_events.delay(1); } |