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

bluegr bluegr at gmail.com
Sat Feb 20 12:59:59 CET 2016


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

Summary:
1dd7844c99 SCI: kernelSetZoomZone is a stub in Mac versions. Fixes bug #7040
b3b6de4fd0 SCI: Handle the "visible" object selector. Fixes the inventory in GK1


Commit: 1dd7844c992187ff5536bd72620c9c69e665f345
    https://github.com/scummvm/scummvm/commit/1dd7844c992187ff5536bd72620c9c69e665f345
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2016-02-20T13:57:10+02:00

Commit Message:
SCI: kernelSetZoomZone is a stub in Mac versions. Fixes bug #7040

Cursor handling is quite different in Mac SCI versions. Among other
changes, the screen where a zoom cursor was used in Freddy Pharkas
has been redesigned to work without such a cursor, and the relevant
zoom cursor call has been stubbed

Changed paths:
    engines/sci/graphics/cursor.cpp



diff --git a/engines/sci/graphics/cursor.cpp b/engines/sci/graphics/cursor.cpp
index 1a58de0..4f08bc3 100644
--- a/engines/sci/graphics/cursor.cpp
+++ b/engines/sci/graphics/cursor.cpp
@@ -453,6 +453,10 @@ void GfxCursor::kernelClearZoomZone() {
 void GfxCursor::kernelSetZoomZone(byte multiplier, Common::Rect zone, GuiResourceId viewNum, int loopNum, int celNum, GuiResourceId picNum, byte zoomColor) {
 	kernelClearZoomZone();
 
+	// This function is a stub in Mac versions
+	if (g_sci->getPlatform() == Common::kPlatformMacintosh)
+		return;
+
 	_zoomMultiplier = multiplier;
 
 	if (_zoomMultiplier != 1 && _zoomMultiplier != 2 && _zoomMultiplier != 4)


Commit: b3b6de4fd0dedfbf913a433d1a93cf186a678e70
    https://github.com/scummvm/scummvm/commit/b3b6de4fd0dedfbf913a433d1a93cf186a678e70
Author: Filippos Karapetis (bluegr at gmail.com)
Date: 2016-02-20T13:57:11+02:00

Commit Message:
SCI: Handle the "visible" object selector. Fixes the inventory in GK1

Changed paths:
    engines/sci/graphics/screen_item32.cpp



diff --git a/engines/sci/graphics/screen_item32.cpp b/engines/sci/graphics/screen_item32.cpp
index 6b169be..98d6540 100644
--- a/engines/sci/graphics/screen_item32.cpp
+++ b/engines/sci/graphics/screen_item32.cpp
@@ -202,6 +202,15 @@ void ScreenItem::setFromObject(SegManager *segMan, const reg_t object, const boo
 		writeSelectorValue(segMan, object, SELECTOR(priority), _position.y);
 	}
 
+	// Check if the entry should be hidden
+	// TODO: Verify this against disassembly!
+	if (lookupSelector(segMan, object, SELECTOR(visible), NULL, NULL) != kSelectorNone) {
+		if (readSelectorValue(segMan, object, SELECTOR(visible)) == 0) {
+			_fixPriority = true;
+			_priority = -1;
+		}
+	}
+
 	_z = readSelectorValue(segMan, object, SELECTOR(z));
 	_position.y -= _z;
 






More information about the Scummvm-git-logs mailing list