aboutsummaryrefslogtreecommitdiff
path: root/engines
diff options
context:
space:
mode:
authorPaul Gilbert2016-07-17 13:02:47 -0400
committerPaul Gilbert2016-07-17 13:10:04 -0400
commit29c87fe375947a6683d81be7f4b24f7c04960fac (patch)
tree01747d9bbfe605541d0d6ae9f258faa55b82b6f0 /engines
parentc4e3cd87abbddef07436c83736cd3acebd0798aa (diff)
downloadscummvm-rg350-29c87fe375947a6683d81be7f4b24f7c04960fac.tar.gz
scummvm-rg350-29c87fe375947a6683d81be7f4b24f7c04960fac.tar.bz2
scummvm-rg350-29c87fe375947a6683d81be7f4b24f7c04960fac.zip
TITANIC: Renamed CStarControlSub12 to CStarField
Diffstat (limited to 'engines')
-rw-r--r--engines/titanic/module.mk2
-rw-r--r--engines/titanic/star_control/star_control.cpp10
-rw-r--r--engines/titanic/star_control/star_control.h4
-rw-r--r--engines/titanic/star_control/star_field.cpp (renamed from engines/titanic/star_control/star_control_sub1.cpp)14
-rw-r--r--engines/titanic/star_control/star_field.h (renamed from engines/titanic/star_control/star_control_sub1.h)15
-rw-r--r--engines/titanic/star_control/star_view.cpp24
-rw-r--r--engines/titanic/star_control/star_view.h8
7 files changed, 51 insertions, 26 deletions
diff --git a/engines/titanic/module.mk b/engines/titanic/module.mk
index 96715f2c6d..33e3558f72 100644
--- a/engines/titanic/module.mk
+++ b/engines/titanic/module.mk
@@ -423,7 +423,6 @@ MODULE_OBJS := \
star_control/fmatrix.o \
star_control/fpoint.o \
star_control/fvector.o \
- star_control/star_control_sub1.o \
star_control/star_control_sub2.o \
star_control/star_control_sub4.o \
star_control/star_control_sub5.o \
@@ -439,6 +438,7 @@ MODULE_OBJS := \
star_control/star_control_sub24.o \
star_control/star_control_sub25.o \
star_control/star_control_sub26.o \
+ star_control/star_field.o \
star_control/star_points1.o \
star_control/star_points2.o \
star_control/star_view.o \
diff --git a/engines/titanic/star_control/star_control.cpp b/engines/titanic/star_control/star_control.cpp
index e8524320a2..e1e804f0df 100644
--- a/engines/titanic/star_control/star_control.cpp
+++ b/engines/titanic/star_control/star_control.cpp
@@ -48,7 +48,7 @@ CStarControl::~CStarControl() {
void CStarControl::save(SimpleFile *file, int indent) {
file->writeNumberLine(1, indent);
- _sub1.save(file, indent);
+ _starField.save(file, indent);
_view.save(file, indent);
CGameObject::save(file, indent);
}
@@ -57,8 +57,8 @@ void CStarControl::load(SimpleFile *file) {
int val = file->readNumber();
if (!val) {
- _sub1.load(file, 0);
- if (!_sub1.initDocument())
+ _starField.load(file, 0);
+ if (!_starField.initDocument())
error("Couldn't initialise the StarField document");
_view.load(file, 0);
@@ -66,7 +66,7 @@ void CStarControl::load(SimpleFile *file) {
if (!screenManager)
error("There's no screen manager during loading");
- _view.setup(screenManager, &_sub1, this);
+ _view.setup(screenManager, &_starField, this);
_view.reset();
_fieldBC = 1;
@@ -131,7 +131,7 @@ void CStarControl::fn1(int action) {
}
bool CStarControl::fn4() {
- return _sub1.get7();
+ return _starField.get7();
}
bool CStarControl::canSetStarDestination() const {
diff --git a/engines/titanic/star_control/star_control.h b/engines/titanic/star_control/star_control.h
index 43cfdc4a05..2f6a86ad78 100644
--- a/engines/titanic/star_control/star_control.h
+++ b/engines/titanic/star_control/star_control.h
@@ -24,7 +24,7 @@
#define TITANIC_STAR_CONTROL_H
#include "titanic/core/game_object.h"
-#include "titanic/star_control/star_control_sub1.h"
+#include "titanic/star_control/star_field.h"
#include "titanic/star_control/star_view.h"
namespace Titanic {
@@ -37,7 +37,7 @@ class CStarControl : public CGameObject {
bool FrameMsg(CFrameMsg *msg);
private:
int _fieldBC;
- CStarControlSub1 _sub1;
+ CStarField _starField;
CStarView _view;
Rect _starRect;
int _field80B0;
diff --git a/engines/titanic/star_control/star_control_sub1.cpp b/engines/titanic/star_control/star_field.cpp
index 35bce35fc3..1d667c098b 100644
--- a/engines/titanic/star_control/star_control_sub1.cpp
+++ b/engines/titanic/star_control/star_field.cpp
@@ -20,15 +20,15 @@
*
*/
-#include "titanic/star_control/star_control_sub1.h"
+#include "titanic/star_control/star_field.h"
namespace Titanic {
-CStarControlSub1::CStarControlSub1() : _val1(0), _val2(0), _val3(0), _val4(1),
+CStarField::CStarField() : _val1(0), _val2(0), _val3(0), _val4(1),
_val5(0), _val6(false) {
}
-void CStarControlSub1::load(SimpleFile *file, int param) {
+void CStarField::load(SimpleFile *file, int param) {
if (!param) {
_sub7.load(file);
_sub8.load(file);
@@ -40,7 +40,7 @@ void CStarControlSub1::load(SimpleFile *file, int param) {
}
}
-void CStarControlSub1::save(SimpleFile *file, int indent) {
+void CStarField::save(SimpleFile *file, int indent) {
_sub7.save(file, indent);
_sub8.save(file, indent);
file->writeNumberLine(_val1, indent);
@@ -50,7 +50,7 @@ void CStarControlSub1::save(SimpleFile *file, int indent) {
file->writeNumberLine(_val6, indent);
}
-bool CStarControlSub1::initDocument() {
+bool CStarField::initDocument() {
bool valid = setup() && _points1.initialize();
if (valid)
valid = _sub5.setup();
@@ -62,4 +62,8 @@ bool CStarControlSub1::initDocument() {
return valid;
}
+void CStarField::draw(CVideoSurface *surface, CStarControlSub12 *sub12) {
+ // TODO
+}
+
} // End of namespace Titanic
diff --git a/engines/titanic/star_control/star_control_sub1.h b/engines/titanic/star_control/star_field.h
index 8aab0b6ab4..48c2721b6d 100644
--- a/engines/titanic/star_control/star_control_sub1.h
+++ b/engines/titanic/star_control/star_field.h
@@ -20,8 +20,8 @@
*
*/
-#ifndef TITANIC_STAR_CONTROL_SUB1_H
-#define TITANIC_STAR_CONTROL_SUB1_H
+#ifndef TITANIC_STAR_FIELD_H
+#define TITANIC_STAR_FIELD_H
#include "titanic/star_control/star_control_sub2.h"
#include "titanic/star_control/star_control_sub5.h"
@@ -32,7 +32,7 @@
namespace Titanic {
-class CStarControlSub1 : public CStarControlSub2 {
+class CStarField : public CStarControlSub2 {
private:
CStarControlSub7 _sub7;
CStarControlSub8 _sub8;
@@ -47,7 +47,7 @@ private:
int _val6;
bool _val7;
public:
- CStarControlSub1();
+ CStarField();
/**
* Load the data for the class from file
@@ -61,10 +61,15 @@ public:
bool initDocument();
+ /**
+ * Renders the contents of the starfield
+ */
+ void draw(CVideoSurface *surface, CStarControlSub12 *sub12);
+
int get6() const { return _val6; }
bool get7() const { return _val7; }
};
} // End of namespace Titanic
-#endif /* TITANIC_STAR_CONTROL_SUB1_H */
+#endif /* TITANIC_STAR_FIELD_H */
diff --git a/engines/titanic/star_control/star_view.cpp b/engines/titanic/star_control/star_view.cpp
index 5bfef41847..63bbed139b 100644
--- a/engines/titanic/star_control/star_view.cpp
+++ b/engines/titanic/star_control/star_view.cpp
@@ -23,12 +23,13 @@
#include "titanic/support/screen_manager.h"
#include "titanic/star_control/star_view.h"
#include "titanic/star_control/star_control.h"
+#include "titanic/star_control/star_field.h"
#include "titanic/core/game_object.h"
namespace Titanic {
CStarView::CStarView() : _sub12(nullptr, nullptr), _sub13(nullptr),
- _owner(nullptr), _sub1(nullptr), _videoSurface(nullptr), _field118(0),
+ _owner(nullptr), _starField(nullptr), _videoSurface(nullptr), _field118(0),
_videoSurface2(nullptr), _field210(0), _homePhotoMask(nullptr),
_field218(0), _field21C(0) {
_sub12.proc3();
@@ -58,8 +59,8 @@ void CStarView::save(SimpleFile *file, int indent) {
file->writeNumberLine(_field21C, indent);
}
-void CStarView::setup(CScreenManager *screenManager, CStarControlSub1 *sub1, CStarControl *starControl) {
- _sub1 = sub1;
+void CStarView::setup(CScreenManager *screenManager, CStarField *starField, CStarControl *starControl) {
+ _starField = starField;
_owner = starControl;
}
@@ -68,7 +69,7 @@ void CStarView::reset() {
}
void CStarView::draw(CScreenManager *screenManager) {
- if (!screenManager || !_videoSurface || !_sub1)
+ if (!screenManager || !_videoSurface || !_starField)
return;
if (_fader.isActive()) {
@@ -88,7 +89,16 @@ void CStarView::draw(CScreenManager *screenManager) {
if (_homePhotoMask)
_homePhotoMask->draw(screenManager, Point(20, 187));
} else {
- // TODO
+ fn1();
+
+ // Render the display
+ _videoSurface->clear();
+ _videoSurface->lock();
+ _starField->draw(_videoSurface, &_sub12);
+ _videoSurface->unlock();
+
+ // Blit the resulting surface to the screen
+ screenManager->blitFrom(SURFACE_PRIMARY, _videoSurface, &destPos);
}
}
}
@@ -115,4 +125,8 @@ void CStarView::starDestinationSet() {
// TODO
}
+void CStarView::fn1() {
+ // TODO
+}
+
} // End of namespace Titanic
diff --git a/engines/titanic/star_control/star_view.h b/engines/titanic/star_control/star_view.h
index cc40fb4a16..bcba5ac436 100644
--- a/engines/titanic/star_control/star_view.h
+++ b/engines/titanic/star_control/star_view.h
@@ -33,12 +33,12 @@
namespace Titanic {
class CStarControl;
-class CStarControlSub1;
+class CStarField;
class CStarView {
private:
CStarControl *_owner;
- CStarControlSub1 *_sub1;
+ CStarField *_starField;
CVideoSurface *_videoSurface;
CStarControlSub12 _sub12;
int _field118;
@@ -49,6 +49,8 @@ private:
CGameObject *_homePhotoMask;
int _field218;
int _field21C;
+private:
+ void fn1();
public:
CStarView();
@@ -65,7 +67,7 @@ public:
/**
* Sets references used by the view
*/
- void setup(CScreenManager *screenManager, CStarControlSub1 *sub1, CStarControl *starControl);
+ void setup(CScreenManager *screenManager, CStarField *starField, CStarControl *starControl);
void reset();