From db4c5eb2c0e13d7c4081674f3d3487ef5b9205a3 Mon Sep 17 00:00:00 2001 From: Eugene Sandulenko Date: Wed, 15 Jan 2014 11:35:27 +0200 Subject: FULLPIPE: Implement ModalMap::init() --- engines/fullpipe/modal.cpp | 26 ++++++++++++++++++++++++-- engines/fullpipe/modal.h | 4 ++-- 2 files changed, 26 insertions(+), 4 deletions(-) diff --git a/engines/fullpipe/modal.cpp b/engines/fullpipe/modal.cpp index c790ef29f5..cf4a937f4e 100644 --- a/engines/fullpipe/modal.cpp +++ b/engines/fullpipe/modal.cpp @@ -298,9 +298,31 @@ ModalMap::~ModalMap() { } bool ModalMap::init(int counterdiff) { - warning("STUB: ModalMap::init()"); + g_fp->setCursor(PIC_CSR_ITN); - return false; + if (_flag) { + _rect2.left = _mouseX + _field_38 - g_fp->_mouseScreenPos.x; + _rect2.top = _mouseY + _field_3C - g_fp->_mouseScreenPos.y;; + _rect2.right = _rect2.left + 800; + _rect2.bottom = _rect2.top + 600; + + g_fp->_sceneRect =_rect2; + + _mapScene->updateScrolling2(); + + _rect2 = g_fp->_sceneRect; + } + + _field_40--; + + if (_field_40 <= 0) { + _field_40 = 12; + + if (_pic) + _pic->_flags ^= 4; + } + + return _isRunning; } void ModalMap::update() { diff --git a/engines/fullpipe/modal.h b/engines/fullpipe/modal.h index f4f075b7df..af52e1b6a9 100644 --- a/engines/fullpipe/modal.h +++ b/engines/fullpipe/modal.h @@ -25,7 +25,7 @@ namespace Fullpipe { -class Picture; +class PictureObject; class BaseModalObject { public: @@ -79,7 +79,7 @@ public: class ModalMap : public BaseModalObject { Scene *_mapScene; - Picture *_pic; + PictureObject *_pic; bool _isRunning; Common::Rect _rect1; int _x; -- cgit v1.2.3