From 2e149cf651ee9344ee96ea904c5dce5a444aeaff Mon Sep 17 00:00:00 2001 From: johndoe123 Date: Fri, 11 Apr 2014 09:40:54 +0200 Subject: ILLUSIONS: More work on Duckman - Implement Duckman cursor and interaction handling - Add more script opcodes - Add TextDrawer and ScreenText (needs minor refactoring for BBDOU) --- engines/illusions/illusions.cpp | 26 ++++++++++++++++++++------ 1 file changed, 20 insertions(+), 6 deletions(-) (limited to 'engines/illusions/illusions.cpp') diff --git a/engines/illusions/illusions.cpp b/engines/illusions/illusions.cpp index 4d9f4a0702..f4ba0cd131 100644 --- a/engines/illusions/illusions.cpp +++ b/engines/illusions/illusions.cpp @@ -32,6 +32,7 @@ #include "illusions/input.h" #include "illusions/resourcesystem.h" #include "illusions/screen.h" +#include "illusions/screentext.h" #include "illusions/scriptresource.h" #include "illusions/scriptman.h" #include "illusions/soundresource.h" @@ -159,7 +160,6 @@ int IllusionsEngine::updateGraphics() { for (Controls::ItemsIterator it = _controls->_controls.begin(); it != _controls->_controls.end(); ++it) { Control *control = *it; Actor *actor = control->_actor; - if (control->_pauseCtr == 0 && actor && (actor->_flags & 1) && !(actor->_flags & 0x0200)) { Common::Point drawPosition = control->calcPosition(panPoint); if (actor->_flags & 0x2000) { @@ -184,13 +184,11 @@ int IllusionsEngine::updateGraphics() { } } -#if 0 // TODO - if (_textInfo._surface) { + if (_screenText->_surface) { int16 priority = getPriorityFromBase(99); - _screen->_drawQueue->insertTextSurface(_textInfo._surface, _textInfo._dimensions, - _textInfo._position, priority); + _screen->_drawQueue->insertTextSurface(_screenText->_surface, _screenText->_dimensions, + _screenText->_position, priority); } -#endif return 1; } @@ -294,4 +292,20 @@ uint32 IllusionsEngine::clipTextDuration(uint32 duration) { return duration; } +void IllusionsEngine::getDefaultTextDimensions(WidthHeight &dimensions) { + dimensions = _defaultTextDimensions; +} + +void IllusionsEngine::setDefaultTextDimensions(WidthHeight &dimensions) { + _defaultTextDimensions = dimensions; +} + +void IllusionsEngine::getDefaultTextPosition(Common::Point &position) { + position = _defaultTextPosition; +} + +void IllusionsEngine::setDefaultTextPosition(Common::Point &position) { + _defaultTextPosition = position; +} + } // End of namespace Illusions -- cgit v1.2.3