diff options
author | Nicola Mettifogo | 2008-01-06 19:29:41 +0000 |
---|---|---|
committer | Nicola Mettifogo | 2008-01-06 19:29:41 +0000 |
commit | db51514dd389b7177eaa11eb1ce5b40fb36b4b3c (patch) | |
tree | 310d049d2d1738e6113fdb650c637d2e818f502d /engines/parallaction/exec_ns.cpp | |
parent | 84e5398b1cf8b1758f2b4bad916ec279f33161ca (diff) | |
download | scummvm-rg350-db51514dd389b7177eaa11eb1ce5b40fb36b4b3c.tar.gz scummvm-rg350-db51514dd389b7177eaa11eb1ce5b40fb36b4b3c.tar.bz2 scummvm-rg350-db51514dd389b7177eaa11eb1ce5b40fb36b4b3c.zip |
Moved balloons management into Gfx, which is now responsible for positioning and drawing. All balloons are now drawn on a different layer than the game graphics, thus simplifying screen management. Dialogue code has undergone a major revision, and the superior implementation of answer selection in the Amiga version is now used in place of the poor PC one. Other bits (where some changes had already been introduced) have been updated, too.
svn-id: r30311
Diffstat (limited to 'engines/parallaction/exec_ns.cpp')
-rw-r--r-- | engines/parallaction/exec_ns.cpp | 18 |
1 files changed, 10 insertions, 8 deletions
diff --git a/engines/parallaction/exec_ns.cpp b/engines/parallaction/exec_ns.cpp index 11f2209c5f..ef9d2243b2 100644 --- a/engines/parallaction/exec_ns.cpp +++ b/engines/parallaction/exec_ns.cpp @@ -487,23 +487,25 @@ void Parallaction::displayComment(ExamineData *data) { return; } + int id; + if (data->_filename) { if (data->_cnv == 0) { data->_cnv = _disk->loadStatic(data->_filename); } _gfx->setHalfbriteMode(true); - _gfx->setDialogueBalloon(data->_description, 0, 90, 130, 0, 0); + _gfx->setSingleBalloon(data->_description, 0, 90, 0, 0); Common::Rect r; data->_cnv->getRect(0, r); - _gfx->setItem(data->_cnv, 140, (_screenHeight - r.height())/2); - _gfx->setItemFrame(0, 0); - _gfx->setItem(_char._head, 100, 152); - _gfx->setItemFrame(1, 0); + id = _gfx->setItem(data->_cnv, 140, (_screenHeight - r.height())/2); + _gfx->setItemFrame(id, 0); + id = _gfx->setItem(_char._head, 100, 152); + _gfx->setItemFrame(id, 0); } else { - _gfx->setDialogueBalloon(data->_description, 140, 10, 130, 0, 0); - _gfx->setItem(_char._talk, 190, 80); - _gfx->setItemFrame(0, 0); + _gfx->setSingleBalloon(data->_description, 140, 10, 0, 0); + id = _gfx->setItem(_char._talk, 190, 80); + _gfx->setItemFrame(id, 0); } _inputMode = kInputModeComment; |