[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