diff options
author | Paul Gilbert | 2016-07-17 13:02:47 -0400 |
---|---|---|
committer | Paul Gilbert | 2016-07-17 13:10:04 -0400 |
commit | 29c87fe375947a6683d81be7f4b24f7c04960fac (patch) | |
tree | 01747d9bbfe605541d0d6ae9f258faa55b82b6f0 /engines | |
parent | c4e3cd87abbddef07436c83736cd3acebd0798aa (diff) | |
download | scummvm-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.mk | 2 | ||||
-rw-r--r-- | engines/titanic/star_control/star_control.cpp | 10 | ||||
-rw-r--r-- | engines/titanic/star_control/star_control.h | 4 | ||||
-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.cpp | 24 | ||||
-rw-r--r-- | engines/titanic/star_control/star_view.h | 8 |
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(); |