From 1f99c01f1241b240017846822d387501b208f1d2 Mon Sep 17 00:00:00 2001 From: Paul Gilbert Date: Mon, 27 Feb 2017 09:08:34 -0500 Subject: TITANIC: Added remainder of CStarControl class --- engines/titanic/star_control/star_control.cpp | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) (limited to 'engines/titanic/star_control/star_control.cpp') diff --git a/engines/titanic/star_control/star_control.cpp b/engines/titanic/star_control/star_control.cpp index 5874d01760..dcde81e253 100644 --- a/engines/titanic/star_control/star_control.cpp +++ b/engines/titanic/star_control/star_control.cpp @@ -72,7 +72,7 @@ void CStarControl::load(SimpleFile *file) { _view.load(file, 0); CScreenManager *screenManager = CScreenManager::setCurrent(); if (!screenManager) - error("There's no screen manager during loading"); + error("There's no screen manager during loading"); _view.setup(screenManager, &_starField, this); _view.reset(); @@ -131,7 +131,21 @@ bool CStarControl::FrameMsg(CFrameMsg *msg) { } void CStarControl::newFrame() { - // TODO + if (!_petControl) + _petControl = getPetControl(); + + if (_petControl) { + int val1 = _starField.get88(); + int val2 = 0; + + if (!_starField.get3()) { + val2 = _starField.get5(); + if ((val1 + 2) == _starField.get7Count()) + val2 = 0; + } + + _petControl->starsSetButtons(val1, val2); + } } void CStarControl::doAction(StarControlAction action) { @@ -238,10 +252,7 @@ void CStarControl::doAction(StarControlAction action) { case STAR_19: _view.petDestinationSet(); break; - } - - // TODO } bool CStarControl::isSolved() const { -- cgit v1.2.3