aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2013-06-29 19:38:58 -0400
committerPaul Gilbert2013-06-29 19:38:58 -0400
commit4dbc1ce5cc15a69b9609b8e0db00f11dd3644964 (patch)
tree97984489f09c230c5ad97646fb98b2ffcb259b61 /engines
parent527b1b9b9cc730a87618c22d22fdff3e0a992daf (diff)
downloadscummvm-rg350-4dbc1ce5cc15a69b9609b8e0db00f11dd3644964.tar.gz
scummvm-rg350-4dbc1ce5cc15a69b9609b8e0db00f11dd3644964.tar.bz2
scummvm-rg350-4dbc1ce5cc15a69b9609b8e0db00f11dd3644964.zip
TSAGE: Fix for object initialisatioon in R2R scene 3500
Diffstat (limited to 'engines')
-rw-r--r--engines/tsage/graphics.h1
-rw-r--r--engines/tsage/ringworld2/ringworld2_logic.cpp11
-rw-r--r--engines/tsage/ringworld2/ringworld2_scenes3.cpp6
3 files changed, 7 insertions, 11 deletions
diff --git a/engines/tsage/graphics.h b/engines/tsage/graphics.h
index f006ceea53..71ec5cc2a5 100644
--- a/engines/tsage/graphics.h
+++ b/engines/tsage/graphics.h
@@ -42,7 +42,6 @@ class Rect : public Common::Rect, public Serialisable {
public:
Rect() : Common::Rect() {}
Rect(int16 x1, int16 y1, int16 x2, int16 y2) : Common::Rect(x1, y1, x2, y2) {}
- Rect(const Common::Rect &r) : Common::Rect(r) {}
void set(int16 x1, int16 y1, int16 x2, int16 y2);
void collapse(int dx, int dy);
diff --git a/engines/tsage/ringworld2/ringworld2_logic.cpp b/engines/tsage/ringworld2/ringworld2_logic.cpp
index 4ae12c966d..5aa4a70687 100644
--- a/engines/tsage/ringworld2/ringworld2_logic.cpp
+++ b/engines/tsage/ringworld2/ringworld2_logic.cpp
@@ -1396,7 +1396,6 @@ bool MazeUI::setMazePosition(Common::Point pt) {
}
void MazeUI::draw() {
- int xs = _rect1.left;
int yPos = 0;
int yInc;
Visage visage;
@@ -1429,9 +1428,9 @@ void MazeUI::draw() {
yPos = _rect1.top;
yInc = _height - (_field30 % _height);
- Rect srcBounds(Common::Rect(_field2E % _width, _field30 % _height,
- _rect1.width(), yInc));
- Rect destBounds(Common::Rect(_rect1.left, yPos, _rect1.width(), yInc));
+ Rect srcBounds(_field2E % _width, _field30 % _height,
+ (_field2E % _width) + _rect1.width(), (_field30 % _height) + yInc);
+ Rect destBounds(_rect1.left, yPos, _rect1.right, yPos + yInc);
R2_GLOBALS._screenSurface.copyFrom(_mapImage, srcBounds, destBounds);
} else {
@@ -1441,8 +1440,8 @@ void MazeUI::draw() {
yInc = _rect1.bottom - yPos;
}
- Rect srcBounds(Common::Rect(0, _field2E, _rect1.width(), yInc));
- Rect destBounds(Common::Rect(_rect1.left, yPos, _rect1.width(), yInc));
+ Rect srcBounds(0, _field2E, _rect1.width(), _field2E + yInc);
+ Rect destBounds(_rect1.left, yPos, _rect1.right, yPos + yInc);
R2_GLOBALS._screenSurface.copyFrom(_mapImage, srcBounds, destBounds);
}
}
diff --git a/engines/tsage/ringworld2/ringworld2_scenes3.cpp b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
index baf68ed812..3f612bfaa4 100644
--- a/engines/tsage/ringworld2/ringworld2_scenes3.cpp
+++ b/engines/tsage/ringworld2/ringworld2_scenes3.cpp
@@ -3027,7 +3027,7 @@ void Scene3500::Actor7::sub109466(int arg1, int arg2, int arg3, int arg4, int ar
_fieldAC = _fieldAA / _fieldA8;
postInit();
- setup(10501, 3, 1);
+ setup(1050, 3, 1);
fixPriority(255);
sub109663(arg5);
}
@@ -3616,7 +3616,7 @@ void Scene3500::postInit(SceneObjectList *OwnerList) {
_item7.setDetails(96, 3500, 12, 10, -1);
_actor8.postInit();
- _actor8.setup(10501, 1, 1);
+ _actor8.setup(1050, 1, 1);
_actor8.setPosition(Common::Point(160, 73));
_actor8.fixPriority(1);
@@ -3670,9 +3670,7 @@ void Scene3500::postInit(SceneObjectList *OwnerList) {
_mazeUI.setMazePosition(_position1);
_action1._field24 = 0;
- warning("gfx_set_pane_p()");
_mazeUI.draw();
- warning("gfx_set_pane_p()");
_field1286 = 1;
R2_GLOBALS._player.postInit();