[Scummvm-cvs-logs] SF.net SVN: scummvm:[55606] scummvm/trunk/engines/parallaction
peres001 at users.sourceforge.net
peres001 at users.sourceforge.net
Sat Jan 29 08:21:48 CET 2011
Revision: 55606
http://scummvm.svn.sourceforge.net/scummvm/?rev=55606&view=rev
Author: peres001
Date: 2011-01-29 07:21:48 +0000 (Sat, 29 Jan 2011)
Log Message:
-----------
PARALLACTION: Cleanup dialogue code.
Hide mood and balloon winding extraction into Question and Answer objects.
Modified Paths:
--------------
scummvm/trunk/engines/parallaction/dialogue.cpp
scummvm/trunk/engines/parallaction/objects.cpp
scummvm/trunk/engines/parallaction/objects.h
Modified: scummvm/trunk/engines/parallaction/dialogue.cpp
===================================================================
--- scummvm/trunk/engines/parallaction/dialogue.cpp 2011-01-29 07:21:31 UTC (rev 55605)
+++ scummvm/trunk/engines/parallaction/dialogue.cpp 2011-01-29 07:21:48 UTC (rev 55606)
@@ -200,11 +200,11 @@
int mood = 0;
if (_numVisAnswers == 1) {
- mood = _visAnswers[0]._a->_mood & 0xF;
+ mood = _visAnswers[0]._a->speakerMood();
_vm->_balloonMan->setBalloonText(_visAnswers[0]._balloon, _visAnswers[0]._a->_text, BalloonManager::kNormalColor);
} else
if (_numVisAnswers > 1) {
- mood = _visAnswers[0]._a->_mood & 0xF;
+ mood = _visAnswers[0]._a->speakerMood();
_oldSelection = -1;
_selection = 0;
}
@@ -236,7 +236,7 @@
if (_selection != -1) {
_vm->_balloonMan->setBalloonText(_visAnswers[_selection]._balloon, _visAnswers[_selection]._a->_text, BalloonManager::kSelectedColor);
- _vm->_gfx->setItemFrame(_faceId, _visAnswers[_selection]._a->_mood & 0xF);
+ _vm->_gfx->setItemFrame(_faceId, _visAnswers[_selection]._a->speakerMood());
}
}
@@ -252,9 +252,9 @@
bool DialogueManager::displayQuestion() {
if (_q->textIsNull()) return false;
- _vm->_balloonMan->setSingleBalloon(_q->_text, _ballonPos._questionBalloon.x, _ballonPos._questionBalloon.y, _q->_mood & 0x10, BalloonManager::kNormalColor);
+ _vm->_balloonMan->setSingleBalloon(_q->_text, _ballonPos._questionBalloon.x, _ballonPos._questionBalloon.y, _q->balloonWinding(), BalloonManager::kNormalColor);
_faceId = _vm->_gfx->setItem(_questioner, _ballonPos._questionChar.x, _ballonPos._questionChar.y);
- _vm->_gfx->setItemFrame(_faceId, _q->_mood & 0xF);
+ _vm->_gfx->setItemFrame(_faceId, _q->speakerMood());
return true;
}
Modified: scummvm/trunk/engines/parallaction/objects.cpp
===================================================================
--- scummvm/trunk/engines/parallaction/objects.cpp 2011-01-29 07:21:31 UTC (rev 55605)
+++ scummvm/trunk/engines/parallaction/objects.cpp 2011-01-29 07:21:48 UTC (rev 55606)
@@ -261,6 +261,10 @@
bool Answer::textIsNull() {
return (_text.equalsIgnoreCase("NULL"));
}
+
+int Answer::speakerMood() {
+ return _mood & 0xF;
+}
Question::Question(const Common::String &name) : _name(name), _mood(0) {
memset(_answers, 0, sizeof(_answers));
@@ -276,6 +280,15 @@
return (_text.equalsIgnoreCase("NULL"));
}
+int Question::speakerMood() {
+ return _mood & 0xF;
+}
+
+int Question::balloonWinding() {
+ return _mood & 0x10;
+}
+
+
Instruction::Instruction() {
_index = 0;
_flags = 0;
Modified: scummvm/trunk/engines/parallaction/objects.h
===================================================================
--- scummvm/trunk/engines/parallaction/objects.h 2011-01-29 07:21:31 UTC (rev 55605)
+++ scummvm/trunk/engines/parallaction/objects.h 2011-01-29 07:21:48 UTC (rev 55606)
@@ -164,6 +164,7 @@
Answer();
bool textIsNull();
+ int speakerMood();
};
struct Question {
@@ -175,6 +176,8 @@
Question(const Common::String &name);
~Question();
bool textIsNull();
+ int speakerMood();
+ int balloonWinding();
};
struct Dialogue {
This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.
More information about the Scummvm-git-logs
mailing list