[Scummvm-cvs-logs] SF.net SVN: scummvm:[45073] scummvm/trunk/engines/sci/gui

m_kiewitz at users.sourceforge.net m_kiewitz at users.sourceforge.net
Wed Oct 14 14:47:51 CEST 2009


Revision: 45073
          http://scummvm.svn.sourceforge.net/scummvm/?rev=45073&view=rev
Author:   m_kiewitz
Date:     2009-10-14 12:47:51 +0000 (Wed, 14 Oct 2009)

Log Message:
-----------
SCI/newgui: implemented code to differentiate between EGA and VGA transitions

Modified Paths:
--------------
    scummvm/trunk/engines/sci/gui/gui.cpp
    scummvm/trunk/engines/sci/gui/gui_transitions.cpp
    scummvm/trunk/engines/sci/gui/gui_transitions.h

Modified: scummvm/trunk/engines/sci/gui/gui.cpp
===================================================================
--- scummvm/trunk/engines/sci/gui/gui.cpp	2009-10-14 12:39:39 UTC (rev 45072)
+++ scummvm/trunk/engines/sci/gui/gui.cpp	2009-10-14 12:47:51 UTC (rev 45073)
@@ -55,7 +55,7 @@
 	: _s(state), _screen(screen), _palette(palette), _cursor(cursor) {
 
 	_gfx = new SciGuiGfx(_s, _screen, _palette);
-	_transitions = new SciGuiTransitions(this, _screen, _palette);
+	_transitions = new SciGuiTransitions(this, _screen, _palette, _s->resMan->isVGA());
 	_animate = new SciGuiAnimate(_s, _gfx, _screen, _palette);
 	_windowMgr = new SciGuiWindowMgr(_screen, _gfx, _animate);
 //  	_gui32 = new SciGui32(_s, _screen, _palette, _cursor); // for debug purposes

Modified: scummvm/trunk/engines/sci/gui/gui_transitions.cpp
===================================================================
--- scummvm/trunk/engines/sci/gui/gui_transitions.cpp	2009-10-14 12:39:39 UTC (rev 45072)
+++ scummvm/trunk/engines/sci/gui/gui_transitions.cpp	2009-10-14 12:47:51 UTC (rev 45073)
@@ -37,8 +37,8 @@
 
 namespace Sci {
 
-SciGuiTransitions::SciGuiTransitions(SciGui *gui, SciGuiScreen *screen, SciGuiPalette *palette)
-	: _gui(gui), _screen(screen), _palette(palette) {
+SciGuiTransitions::SciGuiTransitions(SciGui *gui, SciGuiScreen *screen, SciGuiPalette *palette, bool isVGA)
+	: _gui(gui), _screen(screen), _palette(palette), _isVGA(isVGA) {
 	init();
 }
 
@@ -55,17 +55,28 @@
 void SciGuiTransitions::doit(Common::Rect picRect) {
 	_picRect = picRect;
 
-	switch (_number) {
-	case SCI_TRANSITIONS_FADEPALETTE:
-		fadeOut();
-		setNewScreen();
-		fadeIn();
-		break;
+	if (_isVGA) {
+		// === VGA transitions
+		switch (_number) {
+		case SCI_TRANSITIONS_VGA_FADEPALETTE:
+			fadeOut(); setNewScreen(); fadeIn();
+			break;
 
-	default:
-		warning("SciGuiTransitions: %d not implemented", _number);
-		setNewPalette();
-		setNewScreen();
+		default:
+			warning("SciGuiTransitions: VGA-%d not implemented", _number);
+			setNewPalette(); setNewScreen();
+		}
+	} else {
+		// === EGA transitions
+		switch (_number) {
+		case SCI_TRANSITIONS_EGA_FADEPALETTE:
+			fadeOut(); setNewScreen(); fadeIn();
+			break;
+
+		default:
+			warning("SciGuiTransitions: VGA-%d not implemented", _number);
+			setNewPalette(); setNewScreen();
+		}
 	}
 	_screen->_picNotValid = 0;
 }

Modified: scummvm/trunk/engines/sci/gui/gui_transitions.h
===================================================================
--- scummvm/trunk/engines/sci/gui/gui_transitions.h	2009-10-14 12:39:39 UTC (rev 45072)
+++ scummvm/trunk/engines/sci/gui/gui_transitions.h	2009-10-14 12:47:51 UTC (rev 45073)
@@ -31,13 +31,17 @@
 namespace Sci {
 
 enum {
-	SCI_TRANSITIONS_FADEPALETTE		= 10
+	SCI_TRANSITIONS_EGA_FADEPALETTE		= 30
 };
 
+enum {
+	SCI_TRANSITIONS_VGA_FADEPALETTE		= 10
+};
+
 class SciGuiScreen;
 class SciGuiTransitions {
 public:
-	SciGuiTransitions(SciGui *gui, SciGuiScreen *screen, SciGuiPalette *palette);
+	SciGuiTransitions(SciGui *gui, SciGuiScreen *screen, SciGuiPalette *palette, bool isVGA);
 	~SciGuiTransitions();
 
 	void setup(int16 number);
@@ -54,6 +58,7 @@
 	SciGuiScreen *_screen;
 	SciGuiPalette *_palette;
 
+	bool _isVGA;
 	int16 _number;
 	Common::Rect _picRect;
 };


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