diff options
author | Matthew Hoops | 2011-08-26 22:44:17 -0400 |
---|---|---|
committer | Matthew Hoops | 2011-08-26 22:44:17 -0400 |
commit | 4a69dc13d92e82fff85dc5a3a923b74ced259ffa (patch) | |
tree | 8945cd3745fd65f28b043caf7b1beddbbce2b2a1 /engines/tsage/converse.cpp | |
parent | ad293b249e74dd1cfbdbd721d02145efbdaf9eca (diff) | |
parent | 5e174cbfe466dbbe8e5470b0a00de1481b986181 (diff) | |
download | scummvm-rg350-4a69dc13d92e82fff85dc5a3a923b74ced259ffa.tar.gz scummvm-rg350-4a69dc13d92e82fff85dc5a3a923b74ced259ffa.tar.bz2 scummvm-rg350-4a69dc13d92e82fff85dc5a3a923b74ced259ffa.zip |
Merge remote branch 'upstream/master' into pegasus
Diffstat (limited to 'engines/tsage/converse.cpp')
-rw-r--r-- | engines/tsage/converse.cpp | 47 |
1 files changed, 39 insertions, 8 deletions
diff --git a/engines/tsage/converse.cpp b/engines/tsage/converse.cpp index 0ae575c557..615b1c36fd 100644 --- a/engines/tsage/converse.cpp +++ b/engines/tsage/converse.cpp @@ -26,7 +26,7 @@ #include "tsage/globals.h" #include "tsage/staticres.h" -namespace tSage { +namespace TsAGE { #define STRIP_WORD_DELAY 30 @@ -34,7 +34,7 @@ namespace tSage { SequenceManager::SequenceManager() : Action() { Common::set_to(&_objectList[0], &_objectList[6], (SceneObject *)NULL); _sequenceData.clear(); - _field24 = 0; + _fontNum = 0; _sequenceOffset = 0; _resNum = 0; _field26 = 0; @@ -56,7 +56,7 @@ void SequenceManager::synchronize(Serializer &s) { s.syncAsSint32LE(_resNum); s.syncAsSint32LE(_sequenceOffset); s.syncAsByte(_keepActive); - s.syncAsSint32LE(_field24); + s.syncAsSint32LE(_fontNum); s.syncAsSint32LE(_field26); s.syncAsSint32LE(_objectIndex); @@ -284,6 +284,32 @@ void SequenceManager::signal() { _objectList[objIndex3], _objectList[objIndex4], _objectList[objIndex5], _objectList[objIndex6], NULL); break; } + /* Following indexes were introduced for Blue Force */ + case 35: + v1 = getNextValue(); + _sceneObject->updateAngle(_objectList[v1]); + break; + case 36: + _sceneObject->animate(ANIM_MODE_9, NULL); + break; + case 37: + v1 = getNextValue(); + v2 = getNextValue(); + warning("TODO: dword_53030(%d,%d)", v1, v2); + break; + case 38: { + int resNum = getNextValue(); + int lineNum = getNextValue(); + int fontNum = getNextValue(); + int color1 = getNextValue(); + int color2 = getNextValue(); + int color3 = getNextValue(); + int xp = getNextValue(); + int yp = getNextValue(); + int width = getNextValue(); + setMessage(resNum, lineNum, fontNum, color1, color2, color3, Common::Point(xp, yp), width); + break; + } default: error("SequenceManager::signal - Unknown action %d at offset %xh", idx, _sequenceOffset - 2); break; @@ -337,10 +363,15 @@ uint16 SequenceManager::getNextValue() { } void SequenceManager::setMessage(int resNum, int lineNum, int color, const Common::Point &pt, int width) { - _sceneText._color1 = color; - _sceneText._color2 = 0; - _sceneText._color3 = 0; - _sceneText._fontNumber = 2; + setMessage(resNum, lineNum, 2, color, 0, 0, pt, width); +} + +void SequenceManager::setMessage(int resNum, int lineNum, int fontNum, int color1, int color2, int color3, + const Common::Point &pt, int width) { + _sceneText._color1 = color1; + _sceneText._color2 = color2; + _sceneText._color3 = color3; + _sceneText._fontNumber = fontNum; _sceneText._width = width; // Get the display message @@ -954,4 +985,4 @@ void AnimatedSpeaker::removeText() { _objectList.draw(); } -} // end of namespace tSage +} // end of namespace TsAGE |