diff options
author | Nicola Mettifogo | 2007-11-21 20:04:14 +0000 |
---|---|---|
committer | Nicola Mettifogo | 2007-11-21 20:04:14 +0000 |
commit | 6af9577e84341630c00a29faa23d65a0d671aa81 (patch) | |
tree | 76d620fbdb2ae361f8fd3e23c1f6efdd0e589fd4 /engines/parallaction/parallaction.cpp | |
parent | 634595e0738cfb55d922ab91cdea7460156306a9 (diff) | |
download | scummvm-rg350-6af9577e84341630c00a29faa23d65a0d671aa81.tar.gz scummvm-rg350-6af9577e84341630c00a29faa23d65a0d671aa81.tar.bz2 scummvm-rg350-6af9577e84341630c00a29faa23d65a0d671aa81.zip |
* moved label drawing into Gfx, to be drawn directly in the framebuffer
* changed low level blitting function to accept Graphics::Surface to ease development
* temporarily disabled labels/subtitles in BRA
svn-id: r29593
Diffstat (limited to 'engines/parallaction/parallaction.cpp')
-rw-r--r-- | engines/parallaction/parallaction.cpp | 30 |
1 files changed, 3 insertions, 27 deletions
diff --git a/engines/parallaction/parallaction.cpp b/engines/parallaction/parallaction.cpp index 43091286af..1dd377b9a3 100644 --- a/engines/parallaction/parallaction.cpp +++ b/engines/parallaction/parallaction.cpp @@ -159,8 +159,6 @@ int Parallaction::init() { _location._startFrame = 0; _location._comment = NULL; _location._endComment = NULL; - _label = 0; - _deletingLabel = false; _backgroundInfo = 0; _pathBuffer = 0; @@ -285,7 +283,6 @@ void Parallaction::runGame() { changeLocation(_location._name); } - eraseLabel(); eraseAnimations(); runScripts(); @@ -294,7 +291,6 @@ void Parallaction::runGame() { runJobs(); drawAnimations(); - drawLabel(); updateView(); @@ -313,38 +309,18 @@ void Parallaction::updateView() { g_system->delayMillis(30); } -void Parallaction::showLabel(Label &label) { - label.resetPosition(); - _label = &label; -} - -void Parallaction::hideLabel(uint priority) { - - if (!_label) - return; - - if (priority == kPriority99) { - _label = 0; - } else { - // schedule job for deletion - _deletingLabel = true; - _engineFlags |= kEngineBlockInput; - } - -} - void Parallaction::processInput(InputData *data) { switch (data->_event) { case kEvEnterZone: debugC(2, kDebugInput, "processInput: kEvEnterZone"); - showLabel(*data->_label); + _gfx->setLabel(data->_label); break; case kEvExitZone: debugC(2, kDebugInput, "processInput: kEvExitZone"); - hideLabel(kPriority15); + _gfx->setLabel(0); break; case kEvAction: @@ -359,7 +335,7 @@ void Parallaction::processInput(InputData *data) { case kEvOpenInventory: _procCurrentHoverItem = -1; _hoverZone = NULL; - hideLabel(kPriority2); + _gfx->setLabel(0); if (hitZone(kZoneYou, _mousePos.x, _mousePos.y) == 0) { setArrowCursor(); } |