[Scummvm-cvs-logs] scummvm master -> 1f4414fc54816b59ef636f6ee1922565cba3d249

bluegr md5 at scummvm.org
Wed Dec 7 23:41:55 CET 2011


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

Summary:
1f4414fc54 DREAMWEB: 'monkandryan' ported to C++


Commit: 1f4414fc54816b59ef636f6ee1922565cba3d249
    https://github.com/scummvm/scummvm/commit/1f4414fc54816b59ef636f6ee1922565cba3d249
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2011-12-07T14:41:10-08:00

Commit Message:
DREAMWEB: 'monkandryan' ported to C++

Changed paths:
    devtools/tasmrecover/tasm-recover
    engines/dreamweb/dreamgen.cpp
    engines/dreamweb/dreamgen.h
    engines/dreamweb/people.cpp
    engines/dreamweb/stubs.h



diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index 5457591..c258de6 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -438,9 +438,10 @@ generator = cpp(context, "DreamGen", blacklist = [
 	'maptopanel',
 	'mode640x480',
 	'modifychar',
+	'monkandryan',
+	'monks2text',
 	'monmessage',
 	'monprint',
-	'monks2text',
 	'moretalk',
 	'mousecall',
 	'movemap',
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 45972f5..356b853 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -634,34 +634,6 @@ intromonk2fin:
 	showGameReel();
 }
 
-void DreamGenContext::monkAndRyan() {
-	STACK_CHECK;
-	checkSpeed();
-	if (!flags.z())
-		goto notmonkryan;
-	ax = es.word(bx+3);
-	_inc(ax);
-	_cmp(ax, 83);
-	if (!flags.z())
-		goto gotmonkryan;
-	_inc(data.byte(kIntrocount));
-	push(es);
-	push(bx);
-	textForMonk();
-	bx = pop();
-	es = pop();
-	ax = 77;
-	_cmp(data.byte(kIntrocount), 57);
-	if (!flags.z())
-		goto gotmonkryan;
-	data.byte(kGetback) = 1;
-	return;
-gotmonkryan:
-	es.word(bx+3) = ax;
-notmonkryan:
-	showGameReel();
-}
-
 void DreamGenContext::endGameSeq() {
 	STACK_CHECK;
 	checkSpeed();
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index f8ae7eb..714ce3a 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -710,7 +710,6 @@ public:
 	void execCommand();
 	void updateSymbolBot();
 	void findPuzText();
-	void monkAndRyan();
 	void swapWithInv();
 	void useControl();
 	void adjustRight();
diff --git a/engines/dreamweb/people.cpp b/engines/dreamweb/people.cpp
index d53786c..403f8f1 100644
--- a/engines/dreamweb/people.cpp
+++ b/engines/dreamweb/people.cpp
@@ -48,7 +48,7 @@ static void (DreamGenContext::*reelCallbacks[57])() = {
 	NULL, NULL,
 	&DreamGenContext::introMonks1, NULL,
 	&DreamGenContext::introMonks2, NULL,
-	&DreamGenContext::monkAndRyan, &DreamGenContext::endGameSeq,
+	NULL, &DreamGenContext::endGameSeq,
 	NULL, NULL,
 	NULL, NULL,
 	NULL, NULL,
@@ -80,7 +80,7 @@ static void (DreamGenContext::*reelCallbacksCPP[57])(ReelRoutine &) = {
 	&DreamGenContext::gates, &DreamGenContext::introMagic3,
 	/*&DreamGenContext::intromonks1*/NULL, &DreamGenContext::candles,
 	/*&DreamGenContext::intromonks2*/NULL, &DreamGenContext::handClap,
-	/*&DreamGenContext::monkAndRyan*/NULL, /*&DreamGenContext::endGameSeq*/NULL,
+	&DreamGenContext::monkAndRyan, /*&DreamGenContext::endGameSeq*/NULL,
 	&DreamGenContext::priest, &DreamGenContext::madman,
 	&DreamGenContext::madmansTelly, &DreamGenContext::alleyBarkSound,
 	&DreamGenContext::foghornSound, &DreamGenContext::carParkDrip,
@@ -649,4 +649,24 @@ void DreamGenContext::priestText(ReelRoutine &routine) {
 	setupTimedUse();
 }
 
+void DreamGenContext::monkAndRyan(ReelRoutine &routine) {
+	if (checkSpeed(routine)) {
+		uint16 nextReelPointer = routine.reelPointer() + 1;
+		if (nextReelPointer == 83) {
+			data.byte(kIntrocount)++;
+			textForMonk();
+			nextReelPointer = 77;
+
+			if (data.byte(kIntrocount) == 57) {
+				data.byte(kGetback) = 1;
+				return;
+			}
+		}
+
+		routine.setReelPointer(nextReelPointer);
+	}
+
+	showGameReel(&routine);
+}
+
 } // End of namespace DreamGen
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index 8c42616..9748615 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -454,6 +454,7 @@
 	void bossMan(ReelRoutine &routine);
 	void priest(ReelRoutine &routine);
 	void priestText(ReelRoutine &routine);
+	void monkAndRyan(ReelRoutine &routine);
 	void singleKey(uint8 key, uint16 x, uint16 y);
 	void loadSaveBox();
 	void loadKeypad();






More information about the Scummvm-git-logs mailing list