diff options
author | Paul Gilbert | 2011-04-02 20:00:29 +1100 |
---|---|---|
committer | Paul Gilbert | 2011-04-02 20:00:29 +1100 |
commit | 499d1751c747fb481c9390513a2ec90653af852f (patch) | |
tree | fb6c1f19ad0e45edf7b8f9d62b43ad183beb0d91 /engines | |
parent | 2103c93afd0f3ebbba3373c20149006ed05fd702 (diff) | |
download | scummvm-rg350-499d1751c747fb481c9390513a2ec90653af852f.tar.gz scummvm-rg350-499d1751c747fb481c9390513a2ec90653af852f.tar.bz2 scummvm-rg350-499d1751c747fb481c9390513a2ec90653af852f.zip |
TSAGE: Fixed zoom problems with viewscreen in Scene 3700
Diffstat (limited to 'engines')
-rw-r--r-- | engines/tsage/ringworld_scenes4.cpp | 20 | ||||
-rw-r--r-- | engines/tsage/ringworld_scenes4.h | 16 |
2 files changed, 16 insertions, 20 deletions
diff --git a/engines/tsage/ringworld_scenes4.cpp b/engines/tsage/ringworld_scenes4.cpp index a79b5c3476..4004f8460a 100644 --- a/engines/tsage/ringworld_scenes4.cpp +++ b/engines/tsage/ringworld_scenes4.cpp @@ -107,12 +107,20 @@ Scene3700::Viewer::Viewer() { _active = true; _countdownCtr = 0; - _percent = 120; + _percentList[0] = 120; + _percentList[1] = 50; + _percentList[2] = 75; + _percentList[3] = 114; +} - // Fields don't seem to be used - _field94 = 50; - _field96 = 75; - _field98 = 114; +void Scene3700::Viewer::synchronise(Serialiser &s) { + SceneObject::synchronise(s); + s.syncAsByte(_active); + s.syncAsSint16LE(_countdownCtr); + for (int idx = 0; idx < 4; ++idx) { + s.syncAsSint16LE(_frameList[idx]); + s.syncAsSint16LE(_percentList[idx]); + } } void Scene3700::Viewer::dispatch() { @@ -147,7 +155,7 @@ void Scene3700::Viewer::draw() { GfxSurface img = v.getFrame(_frameList[idx]); Rect destRect = img.getBounds(); destRect.resize(img, (_position.x - _globals->_sceneOffset.x), - (_position.y - _globals->_sceneOffset.y - _yDiff), _percent); + (_position.y - _globals->_sceneOffset.y - _yDiff), _percentList[idx]); destRect.translate(-_globals->_sceneManager._scene->_sceneBounds.left, -_globals->_sceneManager._scene->_sceneBounds.top); diff --git a/engines/tsage/ringworld_scenes4.h b/engines/tsage/ringworld_scenes4.h index 1c92ba4897..4179d1a256 100644 --- a/engines/tsage/ringworld_scenes4.h +++ b/engines/tsage/ringworld_scenes4.h @@ -61,25 +61,13 @@ class Scene3700: public Scene { Visage _images2; int _frameList[4]; + int _percentList[4]; bool _active; int _countdownCtr; - int _percent; - - // Unused fields? - int _field94; - int _field96; - int _field98; Viewer(); virtual Common::String getClassName() { return "Viewer"; } - virtual void synchronise(Serialiser &s) { - SceneObject::synchronise(s); - s.syncAsByte(_active); - s.syncAsSint16LE(_countdownCtr); - for (int idx = 0; idx < 4; ++idx) - s.syncAsSint16LE(_frameList[idx]); - - } + virtual void synchronise(Serialiser &s); virtual void dispatch(); virtual void reposition(); virtual void draw(); |