[Scummvm-cvs-logs] scummvm master -> 61bac6ed157e364fd4976762f79c1e7bde0b115c

fuzzie fuzzie at fuzzie.org
Fri Nov 25 23:06:02 CET 2011


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

Summary:
4d4c84fd82 MOHAWK: Load/unload LB proxies properly.
d070d11c30 MOHAWK: Name/stub some unknown LB item flags.
61bac6ed15 MOHAWK: Convert between rects/points in LB code (thanks clone2727).


Commit: 4d4c84fd824ac4a4bea355c2248e47655272ee8b
    https://github.com/scummvm/scummvm/commit/4d4c84fd824ac4a4bea355c2248e47655272ee8b
Author: Alyssa Milburn (fuzzie at fuzzie.org)
Date: 2011-11-25T13:59:30-08:00

Commit Message:
MOHAWK: Load/unload LB proxies properly.

Changed paths:
    engines/mohawk/livingbooks.cpp
    engines/mohawk/livingbooks.h



diff --git a/engines/mohawk/livingbooks.cpp b/engines/mohawk/livingbooks.cpp
index 8b01489..dafd1b0 100644
--- a/engines/mohawk/livingbooks.cpp
+++ b/engines/mohawk/livingbooks.cpp
@@ -3671,7 +3671,10 @@ LBProxyItem::~LBProxyItem() {
 	delete _page;
 }
 
-void LBProxyItem::init() {
+void LBProxyItem::load() {
+	if (_loaded)
+		return;
+
 	Common::String leftover;
 	Common::String filename = _vm->getFileNameFromConfig("Proxies", _desc.c_str(), leftover);
 	if (!leftover.empty())
@@ -3690,6 +3693,15 @@ void LBProxyItem::init() {
 		error("failed to open archive '%s' (for proxy '%s')", filename.c_str(), _desc.c_str());
 	_page = new LBPage(_vm);
 	_page->open(pageArchive, baseId);
+
+	LBItem::load();
+}
+
+void LBProxyItem::unload() {
+	delete _page;
+	_page = NULL;
+
+	LBItem::unload();
 }
 
 } // End of namespace Mohawk
diff --git a/engines/mohawk/livingbooks.h b/engines/mohawk/livingbooks.h
index c76c434..bbd11bd 100644
--- a/engines/mohawk/livingbooks.h
+++ b/engines/mohawk/livingbooks.h
@@ -597,7 +597,8 @@ public:
 	LBProxyItem(MohawkEngine_LivingBooks *_vm, LBPage *page, Common::Rect rect);
 	~LBProxyItem();
 
-	void init();
+	void load();
+	void unload();
 
 protected:
 	class LBPage *_page;


Commit: d070d11c307c8267ba105abd435423ae3df76fc2
    https://github.com/scummvm/scummvm/commit/d070d11c307c8267ba105abd435423ae3df76fc2
Author: Alyssa Milburn (fuzzie at fuzzie.org)
Date: 2011-11-25T14:00:22-08:00

Commit Message:
MOHAWK: Name/stub some unknown LB item flags.

Changed paths:
    engines/mohawk/livingbooks.cpp
    engines/mohawk/livingbooks.h



diff --git a/engines/mohawk/livingbooks.cpp b/engines/mohawk/livingbooks.cpp
index dafd1b0..14ee031 100644
--- a/engines/mohawk/livingbooks.cpp
+++ b/engines/mohawk/livingbooks.cpp
@@ -2338,6 +2338,22 @@ void LBItem::readData(uint16 type, uint16 size, Common::MemoryReadStreamEndian *
 		}
 		break;
 
+	case kLBSetRolloverData:
+		{
+		assert(size == 2);
+		uint16 flag = stream->readUint16();
+		warning("ignoring kLBSetRolloverData: item %s, flag %d", _desc.c_str(), flag);
+		}
+		break;
+
+	case kLBSetParent:
+		{
+		assert(size == 2);
+		uint16 parent = stream->readUint16();
+		warning("ignoring kLBSetParent: item %s, parent id %d", _desc.c_str(), parent);
+		}
+		break;
+
 	case kLBUnknown194:
 		{
 		assert(size == 4);
diff --git a/engines/mohawk/livingbooks.h b/engines/mohawk/livingbooks.h
index bbd11bd..e2acb58 100644
--- a/engines/mohawk/livingbooks.h
+++ b/engines/mohawk/livingbooks.h
@@ -178,10 +178,10 @@ enum {
 	kLBGlobalSetNotVisible = 0x79,
 	kLBGlobalSetVisible = 0x7a, // unused?
 	kLBSetAmbient = 0x7b,
-	kLBUnknown7C = 0x7c,     // unused?
+	kLBSetDragParams = 0x7c,
 	kLBSetKeyEvent = 0x7d,
-	kLBUnknown7E = 0x7e,     // unused? (rect flag)
-	kLBSetParent = 0x7f,     // unused?
+	kLBSetRolloverData = 0x7e,
+	kLBSetParent = 0x7f,
 	kLBSetHitTest = 0x80,
 	// from here, rugrats
 	kLBUnknown194 = 0x194


Commit: 61bac6ed157e364fd4976762f79c1e7bde0b115c
    https://github.com/scummvm/scummvm/commit/61bac6ed157e364fd4976762f79c1e7bde0b115c
Author: Alyssa Milburn (fuzzie at fuzzie.org)
Date: 2011-11-25T14:03:18-08:00

Commit Message:
MOHAWK: Convert between rects/points in LB code (thanks clone2727).

Changed paths:
    engines/mohawk/livingbooks_code.cpp



diff --git a/engines/mohawk/livingbooks_code.cpp b/engines/mohawk/livingbooks_code.cpp
index 00b07df..c0c03e0 100644
--- a/engines/mohawk/livingbooks_code.cpp
+++ b/engines/mohawk/livingbooks_code.cpp
@@ -105,6 +105,8 @@ Common::Point LBValue::toPoint() const {
 		return Common::Point(integer, integer);
 	case kLBValuePoint:
 		return point;
+	case kLBValueRect:
+		return Common::Point(rect.left, rect.top);
 	default:
 		error("failed to convert to point");
 	}
@@ -117,6 +119,8 @@ Common::Rect LBValue::toRect() const {
 		return Common::Rect();
 	case kLBValueInteger:
 		return Common::Rect(integer, integer, integer, integer);
+	case kLBValuePoint:
+		return Common::Rect(point.x, point.y, point.x, point.y);
 	case kLBValueRect:
 		return rect;
 	case kLBValueItemPtr:






More information about the Scummvm-git-logs mailing list