[Scummvm-cvs-logs] CVS: scummvm/sky control.cpp,1.32,1.33 control.h,1.16,1.17 logic.cpp,1.116,1.117 sky.cpp,1.81,1.82 sky.h,1.39,1.40

Robert G?ffringmann lavosspawn at users.sourceforge.net
Wed Jul 9 11:13:12 CEST 2003


Update of /cvsroot/scummvm/scummvm/sky
In directory sc8-pr-cvs1:/tmp/cvs-serv2040/sky

Modified Files:
	control.cpp control.h logic.cpp sky.cpp sky.h 
Log Message:
added toggling music on/off

Index: control.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/control.cpp,v
retrieving revision 1.32
retrieving revision 1.33
diff -u -d -r1.32 -r1.33
--- control.cpp	9 Jul 2003 17:50:57 -0000	1.32
+++ control.cpp	9 Jul 2003 18:12:57 -0000	1.33
@@ -556,7 +556,9 @@
 			return toggleFx(pButton);
 
 		case TOGGLE_MS:
-			return 0;
+			animClick(pButton);
+			toggleMusic();
+			return TOGGLED;
 
 		case TOGGLE_TEXT:
 			animClick(pButton);
@@ -732,6 +734,19 @@
 
 	_system->update_screen();
 	return TOGGLED;
+}
+
+void SkyControl::toggleMusic(void) {
+	
+	if (SkyState::_systemVars.systemFlags & SF_MUS_OFF) {
+		SkyState::_systemVars.systemFlags &= ~SF_MUS_OFF;
+		_skyMusic->startMusic(SkyState::_systemVars.currentMusic);
+		_statusBar->setToText(0x7000 + 88);
+	} else {
+		SkyState::_systemVars.systemFlags |= SF_MUS_OFF;
+		_skyMusic->startMusic(0);
+		_statusBar->setToText(0x7000 + 89);
+	}
 }
 
 uint16 SkyControl::shiftDown(uint8 speed) {

Index: control.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/control.h,v
retrieving revision 1.16
retrieving revision 1.17
diff -u -d -r1.16 -r1.17
--- control.h	9 Jul 2003 17:50:57 -0000	1.16
+++ control.h	9 Jul 2003 18:12:57 -0000	1.17
@@ -188,6 +188,7 @@
 	uint16 doSpeedSlide(void);
 	uint16 toggleFx(SkyConResource *pButton);
 	uint16 toggleText(void);
+	void toggleMusic(void);
 	uint16 shiftDown(uint8 speed);
 	uint16 shiftUp(uint8 speed);
 	void drawTextCross(uint32 flags);

Index: logic.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/logic.cpp,v
retrieving revision 1.116
retrieving revision 1.117
diff -u -d -r1.116 -r1.117
--- logic.cpp	7 Jul 2003 14:58:53 -0000	1.116
+++ logic.cpp	9 Jul 2003 18:12:57 -0000	1.117
@@ -2235,6 +2235,7 @@
 			error("End of demo");
 
 	_scriptVariables[CUR_SECTION] = sectionNo;
+	SkyState::_systemVars.currentMusic = 0;
 
 	if (sectionNo == 5) //linc section - has different mouse icons
 		_skyMouse->replaceMouseCursors(60302);
@@ -2380,12 +2381,15 @@
 }
 
 bool SkyLogic::fnStartMusic(uint32 a, uint32 b, uint32 c) {
-	_skyMusic->startMusic((uint16)a);
+	if (!(SkyState::_systemVars.systemFlags & SF_MUS_OFF))
+		_skyMusic->startMusic((uint16)a);
+	SkyState::_systemVars.currentMusic = (uint16)a;
 	return true;
 }
 
 bool SkyLogic::fnStopMusic(uint32 a, uint32 b, uint32 c) {
 	_skyMusic->startMusic(0);
+	SkyState::_systemVars.currentMusic = 0;
 	return true;
 }
 

Index: sky.cpp
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/sky.cpp,v
retrieving revision 1.81
retrieving revision 1.82
diff -u -d -r1.81 -r1.82
--- sky.cpp	7 Jul 2003 06:45:33 -0000	1.81
+++ sky.cpp	9 Jul 2003 18:12:58 -0000	1.82
@@ -71,7 +71,7 @@
 
 void **SkyState::_itemList[300];
 
-SystemVars SkyState::_systemVars = {0, 0, 0, 0, 4316, 0, false, false };
+SystemVars SkyState::_systemVars = {0, 0, 0, 0, 4316, 0, 0, false, false };
 
 SkyState::SkyState(GameDetector *detector, OSystem *syst)
 	: Engine(detector, syst) {
@@ -245,6 +245,7 @@
 
 	_skyLogic->fnEnterSection(0, 0, 0);
 	_skyMusic->startMusic(2);
+	_systemVars.currentMusic = 2;
 }
 
 void SkyState::loadFixedItems(void) {

Index: sky.h
===================================================================
RCS file: /cvsroot/scummvm/scummvm/sky/sky.h,v
retrieving revision 1.39
retrieving revision 1.40
diff -u -d -r1.39 -r1.40
--- sky.h	6 Jul 2003 21:33:22 -0000	1.39
+++ sky.h	9 Jul 2003 18:12:58 -0000	1.40
@@ -47,6 +47,7 @@
 	uint16 language;
 	uint32 currentPalette;
 	uint16 gameSpeed;
+	uint16 currentMusic;
 	bool pastIntro;
 	bool quitting;
 };





More information about the Scummvm-git-logs mailing list