[Scummvm-cvs-logs] SF.net SVN: scummvm: [33043] scummvm/branches/gsoc2008-rtl/engines/sword1

cpage88 at users.sourceforge.net cpage88 at users.sourceforge.net
Sun Jul 13 23:54:24 CEST 2008


Revision: 33043
          http://scummvm.svn.sourceforge.net/scummvm/?rev=33043&view=rev
Author:   cpage88
Date:     2008-07-13 14:54:23 -0700 (Sun, 13 Jul 2008)

Log Message:
-----------
SWORD1 works with the new GMM implementation

Modified Paths:
--------------
    scummvm/branches/gsoc2008-rtl/engines/sword1/control.cpp
    scummvm/branches/gsoc2008-rtl/engines/sword1/credits.cpp
    scummvm/branches/gsoc2008-rtl/engines/sword1/logic.cpp
    scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.cpp
    scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.h

Modified: scummvm/branches/gsoc2008-rtl/engines/sword1/control.cpp
===================================================================
--- scummvm/branches/gsoc2008-rtl/engines/sword1/control.cpp	2008-07-13 21:03:12 UTC (rev 33042)
+++ scummvm/branches/gsoc2008-rtl/engines/sword1/control.cpp	2008-07-13 21:54:23 UTC (rev 33043)
@@ -215,7 +215,7 @@
 				notAccepted = false;
 			}
 		}
-	} while (notAccepted && (!SwordEngine::_systemVars.engineQuit));
+	} while (notAccepted && (!g_engine->quit()));
 
 	_resMan->resClose(fontId);
 	free(_screenBuf);
@@ -317,7 +317,7 @@
 		}
 		delay(1000 / 12);
 		newMode = getClicks(mode, &retVal);
-	} while ((newMode != BUTTON_DONE) && (retVal == 0) && (!SwordEngine::_systemVars.engineQuit));
+	} while ((newMode != BUTTON_DONE) && (retVal == 0) && (!g_engine->quit()));
 
 	if (SwordEngine::_systemVars.controlPanelMode == CP_NORMAL) {
 		uint8 volL, volR;
@@ -425,7 +425,7 @@
 			_buttons[5]->setSelected(SwordEngine::_systemVars.showText);
 		} else if (id == BUTTON_QUIT) {
 			if (getConfirm(_lStrings[STR_QUIT]))
-				SwordEngine::_systemVars.engineQuit = true;
+				g_engine->quitGame();
 			return mode;
 		}
 		break;
@@ -1091,9 +1091,6 @@
 				_mouseDown = false;
 				_mouseState |= BS1_WHEEL_DOWN;
 				break;
-			case Common::EVENT_QUIT:
-				SwordEngine::_systemVars.engineQuit = true;
-				break;
 			default:
 				break;
 			}

Modified: scummvm/branches/gsoc2008-rtl/engines/sword1/credits.cpp
===================================================================
--- scummvm/branches/gsoc2008-rtl/engines/sword1/credits.cpp	2008-07-13 21:03:12 UTC (rev 33042)
+++ scummvm/branches/gsoc2008-rtl/engines/sword1/credits.cpp	2008-07-13 21:54:23 UTC (rev 33043)
@@ -125,7 +125,7 @@
 	uint16 renderY = BUFSIZE_Y / 2;
 	uint16 clearY = 0xFFFF;
 	bool clearLine = false;
-	while (((*textData != FNT_EOB) || (scrollY != renderY)) && !SwordEngine::_systemVars.engineQuit) {
+	while (((*textData != FNT_EOB) || (scrollY != renderY)) && !g_engine->quit()) {
 		if ((int32)_mixer->getSoundElapsedTime(bgSound) - relDelay < (SCROLL_TIMING * 2)) { // sync to audio
 			if (scrollY < BUFSIZE_Y - CREDITS_Y)
 				_system->copyRectToScreen(screenBuf + scrollY * CREDITS_X, CREDITS_X, START_X, START_Y, CREDITS_X, CREDITS_Y);
@@ -175,7 +175,7 @@
 	uint8 *revoBuf = credFile.decompressFile(REVO_LOGO);
 	uint8 *revoPal = credFile.fetchFile(REVO_PAL, &_palLen);
 	_palLen /= 3;
-	while ((_mixer->getSoundElapsedTime(bgSound) < LOGO_FADEUP_TIME) && !SwordEngine::_systemVars.engineQuit) {
+	while ((_mixer->getSoundElapsedTime(bgSound) < LOGO_FADEUP_TIME) && !g_engine->quit()) {
 		delay(100);
 	}
 	memset(_palette, 0, 256 * 4);
@@ -184,13 +184,13 @@
 	_system->updateScreen();
 
 	fadePalette(revoPal, true, _palLen);
-	while ((_mixer->getSoundElapsedTime(bgSound) < LOGO_FADEDOWN_TIME) && !SwordEngine::_systemVars.engineQuit) {
+	while ((_mixer->getSoundElapsedTime(bgSound) < LOGO_FADEDOWN_TIME) && !g_engine->quit()) {
 		delay(100);
 	}
 	fadePalette(revoPal, false, _palLen);
 	delay(3000);
 
-	if (SwordEngine::_systemVars.engineQuit)
+	if (g_engine->quit())
 		_mixer->stopAll();
 	free(revoBuf);
 }
@@ -200,7 +200,7 @@
 	int fadeStart = fadeup ? 0 : 12;
 
 	int relDelay = _system->getMillis();
-	for (int fadeStep = fadeStart; (fadeStep >= 0) && (fadeStep <= 12) && !SwordEngine::_systemVars.engineQuit; fadeStep += fadeDir) {
+	for (int fadeStep = fadeStart; (fadeStep >= 0) && (fadeStep <= 12) && !g_engine->quit(); fadeStep += fadeDir) {
 		for (uint16 cnt = 0; cnt < len * 3; cnt++)
 			_palette[(cnt / 3) * 4 + (cnt % 3)] = (srcPal[cnt] * fadeStep) / 12;
 		_system->setPalette(_palette, 0, 256);
@@ -281,9 +281,6 @@
 		Common::EventManager *eventMan = _system->getEventManager();
 		while (eventMan->pollEvent(event)) {
 			switch (event.type) {
-			case Common::EVENT_QUIT:
-				SwordEngine::_systemVars.engineQuit = true;
-				break;
 			default:
 				break;
 			}
@@ -294,7 +291,7 @@
 		if (msecs > 0)
 			_system->delayMillis(10);
 
-	} while ((_system->getMillis() < start + msecs) && !SwordEngine::_systemVars.engineQuit);
+	} while ((_system->getMillis() < start + msecs) && !g_engine->quit());
 }
 
 ArcFile::ArcFile(void) {

Modified: scummvm/branches/gsoc2008-rtl/engines/sword1/logic.cpp
===================================================================
--- scummvm/branches/gsoc2008-rtl/engines/sword1/logic.cpp	2008-07-13 21:03:12 UTC (rev 33042)
+++ scummvm/branches/gsoc2008-rtl/engines/sword1/logic.cpp	2008-07-13 21:54:23 UTC (rev 33043)
@@ -1636,7 +1636,7 @@
 	if (SwordEngine::_systemVars.isDemo) {
 		GUI::MessageDialog dialog("This is the end of the Broken Sword 1 Demo", "OK", NULL);
 		dialog.runModal();
-		SwordEngine::_systemVars.engineQuit = true;
+		g_engine->quitGame();
 	} else
 		error("fnQuitGame() called");
 	return fnQuit(cpt, id, 0, 0, 0, 0, 0, 0);

Modified: scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.cpp
===================================================================
--- scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.cpp	2008-07-13 21:03:12 UTC (rev 33042)
+++ scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.cpp	2008-07-13 21:54:23 UTC (rev 33043)
@@ -310,7 +310,6 @@
 	_systemVars.controlPanelMode = CP_NEWGAME;
 	_systemVars.forceRestart = false;
 	_systemVars.wantFade = true;
-	_systemVars.engineQuit = false;
 
 	switch (Common::parseLanguage(ConfMan.get("language"))) {
 	case Common::DE_DEU:
@@ -645,7 +644,7 @@
 			_systemVars.controlPanelMode = CP_NEWGAME;
 			if (_control->runPanel() == CONTROL_GAME_RESTORED)
 				_control->doRestore();
-			else if (!_systemVars.engineQuit)
+			else if (!quit())
 				_logic->startPositions(0);
 		} else {
 			// no savegames, start new game.
@@ -654,10 +653,10 @@
 	}
 	_systemVars.controlPanelMode = CP_NORMAL;
 
-	while (!_systemVars.engineQuit) {
+	while (!quit()) {
 		uint8 action = mainLoop();
 
-		if (!_systemVars.engineQuit) {
+		if (!quit()) {
 			// the mainloop was left, we have to reinitialize.
 			reinitialize();
 			if (action == CONTROL_GAME_RESTORED)
@@ -669,7 +668,7 @@
 		}
 	}
 
-	return 0;
+	return _eventMan->shouldQuit();
 }
 
 void SwordEngine::checkCd(void) {
@@ -698,7 +697,7 @@
 	uint8 retCode = 0;
 	_keyPressed.reset();
 
-	while ((retCode == 0) && (!_systemVars.engineQuit)) {
+	while ((retCode == 0) && (!quit())) {
 		// do we need the section45-hack from sword.c here?
 		checkCd();
 
@@ -747,9 +746,9 @@
 			}
 			_mouseState = 0;
 			_keyPressed.reset();
-		} while ((Logic::_scriptVars[SCREEN] == Logic::_scriptVars[NEW_SCREEN]) && (retCode == 0) && (!_systemVars.engineQuit));
+		} while ((Logic::_scriptVars[SCREEN] == Logic::_scriptVars[NEW_SCREEN]) && (retCode == 0) && (!quit()));
 
-		if ((retCode == 0) && (Logic::_scriptVars[SCREEN] != 53) && _systemVars.wantFade && (!_systemVars.engineQuit)) {
+		if ((retCode == 0) && (Logic::_scriptVars[SCREEN] != 53) && _systemVars.wantFade && (!quit())) {
 			_screen->fadeDownPalette();
 			int32 relDelay = (int32)_system->getMillis();
 			while (_screen->stillFading()) {
@@ -796,9 +795,6 @@
 				_mouseState |= BS1R_BUTTON_UP;
 				_mouseCoord = event.mouse;
 				break;
-			case Common::EVENT_QUIT:
-				_systemVars.engineQuit = true;
-				break;
 			default:
 				break;
 			}

Modified: scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.h
===================================================================
--- scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.h	2008-07-13 21:03:12 UTC (rev 33042)
+++ scummvm/branches/gsoc2008-rtl/engines/sword1/sword1.h	2008-07-13 21:54:23 UTC (rev 33043)
@@ -58,7 +58,6 @@
 	bool	runningFromCd;
 	uint32	currentCD;			// starts at zero, then either 1 or 2 depending on section being played
 	uint32	justRestoredGame;	// see main() in sword.c & New_screen() in gtm_core.c
-	bool	engineQuit;
 
 	uint8	controlPanelMode;	// 1 death screen version of the control panel, 2 = successful end of game, 3 = force restart
 	bool	forceRestart;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list