[Scummvm-cvs-logs] scummvm master -> e8ea99cd8ec9a34d687081afa17ef1e4d65d2a4e

bluegr md5 at scummvm.org
Tue Dec 6 00:17:14 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:
e8ea99cd8e DREAMWEB: 'callhotellift', 'carparkdrip', 'useshield' ported to C++


Commit: e8ea99cd8ec9a34d687081afa17ef1e4d65d2a4e
    https://github.com/scummvm/scummvm/commit/e8ea99cd8ec9a34d687081afa17ef1e4d65d2a4e
Author: Filippos Karapetis (md5 at scummvm.org)
Date: 2011-12-05T15:16:38-08:00

Commit Message:
DREAMWEB: 'callhotellift', 'carparkdrip', 'useshield' 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
    engines/dreamweb/use.cpp



diff --git a/devtools/tasmrecover/tasm-recover b/devtools/tasmrecover/tasm-recover
index 824d9c2..708845d 100755
--- a/devtools/tasmrecover/tasm-recover
+++ b/devtools/tasmrecover/tasm-recover
@@ -176,9 +176,11 @@ generator = cpp(context, "DreamGen", blacklist = [
 	'buttontwo',
 	'calcfrframe',
 	'calcmapad',
+	'callhotellift',
 	'cancelch0',
 	'cancelch1',
 	'candles',
+	'carparkdrip',
 	'channel0only',
 	'channel0tran',
 	'channel1only',
@@ -539,6 +541,7 @@ generator = cpp(context, "DreamGen", blacklist = [
 	'usemenu',
 	'usemon',
 	'useroutine',
+	'useshield',
 	'usetempcharset',
 	'usetext',
 	'usetimedtext',
diff --git a/engines/dreamweb/dreamgen.cpp b/engines/dreamweb/dreamgen.cpp
index 90b3785..595a869 100644
--- a/engines/dreamweb/dreamgen.cpp
+++ b/engines/dreamweb/dreamgen.cpp
@@ -699,15 +699,6 @@ notboss:
 	data.byte(kTalkedtoboss) = 1;
 }
 
-void DreamGenContext::carParkDrip() {
-	STACK_CHECK;
-	checkSpeed();
-	if (!flags.z())
-		return /* (cantdrip2) */;
-	al = 14;
-	playChannel1();
-}
-
 void DreamGenContext::keeper() {
 	STACK_CHECK;
 	_cmp(data.byte(kKeeperflag), 0);
@@ -6641,20 +6632,6 @@ void DreamGenContext::trapDoor() {
 	data.byte(kGetback) = 1;
 }
 
-void DreamGenContext::callHotelLift() {
-	STACK_CHECK;
-	al = 12;
-	playChannel1();
-	showFirstUse();
-	data.byte(kCounttoopen) = 8;
-	data.byte(kGetback) = 1;
-	data.byte(kDestination) = 5;
-	data.byte(kFinaldest) = 5;
-	autoSetWalk();
-	al = 4;
-	turnPathOn();
-}
-
 void DreamGenContext::callEdensLift() {
 	STACK_CHECK;
 	showFirstUse();
@@ -8113,25 +8090,6 @@ nottvsoldier:
 	putBackObStuff();
 }
 
-void DreamGenContext::useShield() {
-	STACK_CHECK;
-	_cmp(data.byte(kReallocation), 20);
-	if (!flags.z())
-		goto notinsartroom;
-	_cmp(data.byte(kCombatcount), 0);
-	if (flags.z())
-		goto notinsartroom;
-	data.byte(kLastweapon) = 3;
-	showSecondUse();
-	data.byte(kGetback) = 1;
-	_inc(data.byte(kProgresspoints));
-	removeObFromInv();
-	return;
-notinsartroom:
-	showFirstUse();
-	putBackObStuff();
-}
-
 void DreamGenContext::useButtonA() {
 	STACK_CHECK;
 	al = 95;
diff --git a/engines/dreamweb/dreamgen.h b/engines/dreamweb/dreamgen.h
index 67419c1..928fffd 100644
--- a/engines/dreamweb/dreamgen.h
+++ b/engines/dreamweb/dreamgen.h
@@ -687,7 +687,6 @@ public:
 	void introMagic2();
 	void introMagic3();
 	void showDiaryPage();
-	void useShield();
 	void getBackToOps();
 	void dumpSymbol();
 	void intro1Text();
@@ -742,7 +741,6 @@ public:
 	void quitSymbol();
 	void setTopRight();
 	void findSetObject();
-	void carParkDrip();
 	void useDiary();
 	void deleteExObject();
 	void moneyPoke();
@@ -806,7 +804,6 @@ public:
 	void useGun();
 	void autoAppear();
 	void openRyan();
-	void callHotelLift();
 	void useFullCart();
 	void newPlace();
 	void useCardReader1();
diff --git a/engines/dreamweb/people.cpp b/engines/dreamweb/people.cpp
index 83533c6..1bf46d3 100644
--- a/engines/dreamweb/people.cpp
+++ b/engines/dreamweb/people.cpp
@@ -51,9 +51,9 @@ static void (DreamGenContext::*reelCallbacks[57])() = {
 	&DreamGenContext::monkAndRyan, &DreamGenContext::endGameSeq,
 	&DreamGenContext::priest, NULL,
 	NULL, &DreamGenContext::alleyBarkSound,
-	&DreamGenContext::foghornSound, &DreamGenContext::carParkDrip,
-	&DreamGenContext::carParkDrip, &DreamGenContext::carParkDrip,
-	&DreamGenContext::carParkDrip
+	&DreamGenContext::foghornSound, NULL,
+	NULL, NULL,
+	NULL
 };
 
 static void (DreamGenContext::*reelCallbacksCPP[57])(ReelRoutine &) = {
@@ -83,9 +83,9 @@ static void (DreamGenContext::*reelCallbacksCPP[57])(ReelRoutine &) = {
 	/*&DreamGenContext::monkAndRyan*/NULL, /*&DreamGenContext::endGameSeq*/NULL,
 	/*&DreamGenContext::priest*/NULL, &DreamGenContext::madman,
 	&DreamGenContext::madmansTelly, /*&DreamGenContext::alleyBarkSound*/NULL,
-	/*&DreamGenContext::foghornSound*/NULL, /*&DreamGenContext::carParkDrip*/NULL,
-	/*&DreamGenContext::carParkDrip*/NULL, /*&DreamGenContext::carParkDrip*/NULL,
-	/*&DreamGenContext::carParkDrip*/NULL
+	/*&DreamGenContext::foghornSound*/NULL, &DreamGenContext::carParkDrip,
+	&DreamGenContext::carParkDrip, &DreamGenContext::carParkDrip,
+	&DreamGenContext::carParkDrip
 };
 
 void DreamGenContext::updatePeople() {
@@ -448,5 +448,12 @@ void DreamGenContext::louis(ReelRoutine &routine) {
 void DreamGenContext::handClap(ReelRoutine &routine) {
 }
 
+void DreamGenContext::carParkDrip(ReelRoutine &routine) {
+	if (!checkSpeed(routine))
+		return; // cantdrip2
+
+	playChannel1(14);
+}
+
 } /*namespace dreamgen */
 
diff --git a/engines/dreamweb/stubs.h b/engines/dreamweb/stubs.h
index daf7388..7999050 100644
--- a/engines/dreamweb/stubs.h
+++ b/engines/dreamweb/stubs.h
@@ -378,6 +378,8 @@
 	void useElevator4();
 	void useHatch();
 	void wheelSound();
+	void callHotelLift();
+	void useShield();
 	void checkFolderCoords();
 	void loadFolder();
 	void showFolder();
@@ -418,6 +420,7 @@
 	void edenInBath(ReelRoutine &routine);
 	void louis(ReelRoutine &routine);
 	void handClap(ReelRoutine &routine);
+	void carParkDrip(ReelRoutine &routine);
 	void singleKey(uint8 key, uint16 x, uint16 y);
 	void loadSaveBox();
 	void loadKeypad();
diff --git a/engines/dreamweb/use.cpp b/engines/dreamweb/use.cpp
index 39423b3..4421134 100644
--- a/engines/dreamweb/use.cpp
+++ b/engines/dreamweb/use.cpp
@@ -287,5 +287,30 @@ void DreamGenContext::wheelSound() {
 	putBackObStuff();
 }
 
+void DreamGenContext::callHotelLift() {
+	playChannel1(12);
+	showFirstUse();
+	data.byte(kCounttoopen) = 8;
+	data.byte(kGetback) = 1;
+	data.byte(kDestination) = 5;
+	data.byte(kFinaldest) = 5;
+	autoSetWalk();
+	turnPathOn(4);
+}
+
+void DreamGenContext::useShield() {
+	if (data.byte(kReallocation) != 20 || data.byte(kCombatcount) == 0) {
+		// Not in Sart room
+		showFirstUse();
+		putBackObStuff();
+	} else {
+		data.byte(kLastweapon) = 3;
+		showSecondUse();
+		data.byte(kGetback) = 1;
+		data.byte(kProgresspoints) = data.byte(kProgresspoints) + 1;
+		removeObFromInv();
+	}
+}
+
 } /*namespace dreamgen */
 






More information about the Scummvm-git-logs mailing list