[Scummvm-cvs-logs] CVS: scummvm/saga interface.cpp,1.64,1.65 script.h,1.54,1.55 sfuncs.cpp,1.80,1.81

Eugene Sandulenko sev at users.sourceforge.net
Mon Jan 17 15:13:01 CET 2005


Update of /cvsroot/scummvm/scummvm/saga
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv5738

Modified Files:
	interface.cpp script.h sfuncs.cpp 
Log Message:
Now it is possible to lead a conversation with use of keys (1-4).
Things which are missing: 
  (a) mouse support due to incomplete interface implementation
  (b) arrows do not pop up by same reason mentioned above 
  (c) scrolling does not work 
  (d) kReplyOnce flag is missing due to wrong threads memory implementation


Index: interface.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/interface.cpp,v
retrieving revision 1.64
retrieving revision 1.65
diff -u -d -r1.64 -r1.65
--- interface.cpp	17 Jan 2005 20:16:50 -0000	1.64
+++ interface.cpp	17 Jan 2005 23:11:18 -0000	1.65
@@ -940,8 +940,7 @@
 
 	ct = &_converseText[_conversePos];
 
-	//finishDialog( ct->replyID, ct->replyFlags, ct->replyBit );
-	// FIXME: TODO: finish dialog thread
+	_vm->_script->finishDialog(ct->replyId, ct->replyFlags, ct->replyBit);
 
 	// FIXME: TODO: Puzzle
 

Index: script.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/script.h,v
retrieving revision 1.54
retrieving revision 1.55
diff -u -d -r1.54 -r1.55
--- script.h	17 Jan 2005 20:17:04 -0000	1.54
+++ script.h	17 Jan 2005 23:11:30 -0000	1.55
@@ -344,6 +344,9 @@
 private:
 	ScriptThread *_conversingThread;
 
+public:
+	void finishDialog(int replyID, int flags, int bitOffset);
+
 private:
 	typedef int (Script::*ScriptFunctionType)(SCRIPTFUNC_PARAMS);
 

Index: sfuncs.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/saga/sfuncs.cpp,v
retrieving revision 1.80
retrieving revision 1.81
diff -u -d -r1.80 -r1.81
--- sfuncs.cpp	17 Jan 2005 18:49:00 -0000	1.80
+++ sfuncs.cpp	17 Jan 2005 23:11:31 -0000	1.81
@@ -1529,4 +1529,21 @@
 	return SUCCESS;
 }
 
+void Script::finishDialog(int replyID, int flags, int bitOffset) {
+	if (_conversingThread) {
+		_vm->_interface->setMode(kPanelNull);
+
+		_conversingThread->flags &= ~kTFlagWaiting;
+
+		_conversingThread->push(replyID);
+
+		if (flags & kReplyOnce) {
+			// TODO:
+		}
+	}
+
+	_conversingThread = NULL;
+	wakeUpThreads(kWaitTypeDialogBegin);
+}
+
 } // End of namespace Saga





More information about the Scummvm-git-logs mailing list