[Scummvm-git-logs] scummvm master -> ff7cff72f4b0b7448aad607fcddcfa972d753802

sev- sev at scummvm.org
Wed Mar 8 19:10:27 CET 2017


This automated email contains information about 2 new commits which have been
pushed to the 'scummvm' repo located at https://github.com/scummvm/scummvm .

Summary:
0a044b21df DIRECTOR: Fix event mouse event processing in D3
ff7cff72f4 DIRECTOR: Lingo: More debug output to call() method


Commit: 0a044b21df94b602c08c59fb757ce11f917ba873
    https://github.com/scummvm/scummvm/commit/0a044b21df94b602c08c59fb757ce11f917ba873
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-03-08T18:37:16+01:00

Commit Message:
DIRECTOR: Fix event mouse event processing in D3

Changed paths:
    engines/director/score.cpp


diff --git a/engines/director/score.cpp b/engines/director/score.cpp
index 112e4b2..e8e8b81 100644
--- a/engines/director/score.cpp
+++ b/engines/director/score.cpp
@@ -1012,9 +1012,11 @@ void Score::processEvents() {
 					_lingo->processEvent(kEventMouseUp, kCastScript, _frames[_currentFrame]->_sprites[spriteId]->_castId);
 					_lingo->processEvent(kEventMouseUp, kSpriteScript, _frames[_currentFrame]->_sprites[spriteId]->_scriptId);
 				} else {
-					// D3 doesn't have cast member or sprite scripts. Just Frame Scripts.
-					_lingo->processEvent(kEventMouseUp, kSpriteScript, _frames[_currentFrame]->_sprites[spriteId]->_castId + 1024);
-					_lingo->processEvent(kEventMouseUp, kFrameScript, _frames[_currentFrame]->_sprites[spriteId]->_scriptId);
+					// Frame script overrides sprite script
+					if (!_frames[_currentFrame]->_sprites[spriteId]->_scriptId)
+						_lingo->processEvent(kEventMouseUp, kSpriteScript, _frames[_currentFrame]->_sprites[spriteId]->_castId + 1024);
+					else
+						_lingo->processEvent(kEventMouseUp, kFrameScript, _frames[_currentFrame]->_sprites[spriteId]->_scriptId);
 				}
 			}
 


Commit: ff7cff72f4b0b7448aad607fcddcfa972d753802
    https://github.com/scummvm/scummvm/commit/ff7cff72f4b0b7448aad607fcddcfa972d753802
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2017-03-08T18:49:19+01:00

Commit Message:
DIRECTOR: Lingo: More debug output to call() method

Changed paths:
    engines/director/lingo/lingo-builtins.cpp
    engines/director/lingo/lingo-code.cpp
    engines/director/lingo/lingo.h


diff --git a/engines/director/lingo/lingo-builtins.cpp b/engines/director/lingo/lingo-builtins.cpp
index 9a741ed..f554f43 100644
--- a/engines/director/lingo/lingo-builtins.cpp
+++ b/engines/director/lingo/lingo-builtins.cpp
@@ -362,7 +362,7 @@ void Lingo::initBuiltIns() {
 	}
 }
 
-void Lingo::printSTUBWithArglist(const char *funcname, int nargs) {
+void Lingo::printSTUBWithArglist(const char *funcname, int nargs, const char *prefix) {
 	Common::String s(funcname);
 
 	s += '(';
@@ -379,7 +379,7 @@ void Lingo::printSTUBWithArglist(const char *funcname, int nargs) {
 
 	s += ")";
 
-	warning("STUB: %s", s.c_str());
+	warning("%s: %s", prefix, s.c_str());
 }
 
 void Lingo::convertVOIDtoString(int arg, int nargs) {
diff --git a/engines/director/lingo/lingo-code.cpp b/engines/director/lingo/lingo-code.cpp
index 96f2b72..7bc82ed 100644
--- a/engines/director/lingo/lingo-code.cpp
+++ b/engines/director/lingo/lingo-code.cpp
@@ -1023,6 +1023,9 @@ void Lingo::c_call() {
 void Lingo::call(Common::String name, int nargs) {
 	bool dropArgs = false;
 
+	if (debugChannelSet(3, kDebugLingoExec))
+		printSTUBWithArglist(name.c_str(), nargs, "call:");
+
 	Symbol *sym = g_lingo->getHandler(name);
 
 	if (!g_lingo->_eventHandlerTypeIds.contains(name)) {
diff --git a/engines/director/lingo/lingo.h b/engines/director/lingo/lingo.h
index 1e84344..8475905 100644
--- a/engines/director/lingo/lingo.h
+++ b/engines/director/lingo/lingo.h
@@ -314,7 +314,7 @@ public:
 
 	static void c_open();
 
-	void printSTUBWithArglist(const char *funcname, int nargs);
+	void printSTUBWithArglist(const char *funcname, int nargs, const char *prefix = "STUB:");
 	void convertVOIDtoString(int arg, int nargs);
 	void dropStack(int nargs);
 	void drop(uint num);





More information about the Scummvm-git-logs mailing list