[Scummvm-cvs-logs] scummvm master -> 008eb251df09e569781d6dcc28a273147bbd590a

sev- sev at scummvm.org
Wed Sep 25 23:08:59 CEST 2013


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:
83b2507011 FULLPIPE: Prototyping for MctlCompound
036c9fd6a9 FULLPIPE: Added MctlCompound object type
008eb251df FULLPIPE: Started implementation of MctlCompound::initMovGraph2()


Commit: 83b2507011c5005c5b060442f2bcdfdd3e840f0a
    https://github.com/scummvm/scummvm/commit/83b2507011c5005c5b060442f2bcdfdd3e840f0a
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-09-25T14:08:13-07:00

Commit Message:
FULLPIPE: Prototyping for MctlCompound

Changed paths:
    engines/fullpipe/motion.cpp
    engines/fullpipe/motion.h



diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp
index 337c181..42aae55 100644
--- a/engines/fullpipe/motion.cpp
+++ b/engines/fullpipe/motion.cpp
@@ -74,14 +74,26 @@ bool MctlCompound::load(MfcArchive &file) {
 	return true;
 }
 
-void MctlCompound::addObject(StaticANIObject *obj) {
+int MctlCompound::addObject(StaticANIObject *obj) {
 	warning("STUB: MctlCompound::addObject()");
+
+	return 0;
+}
+
+int MctlCompound::removeObject(StaticANIObject *obj) {
+	warning("STUB: MctlCompound::removeObject()");
+
+	return 0;
 }
 
 void MctlCompound::initMovGraph2() {
 	warning("STUB: MctlCompound::initMovGraph2()");
 }
 
+void MctlCompound::freeItems() {
+	warning("STUB: MctlCompound::freeItems()");
+}
+
 MessageQueue *MctlCompound::method34(StaticANIObject *subj, int xpos, int ypos, int flag, int staticsId) {
 	warning("STUB: MctlCompound::method34()");
 
@@ -133,8 +145,10 @@ bool MovGraph::load(MfcArchive &file) {
 	return true;
 }
 
-void MovGraph::addObject(StaticANIObject *obj) {
+int MovGraph::addObject(StaticANIObject *obj) {
 	warning("STUB: MovGraph::addObject()");
+
+	return 0;
 }
 
 double MovGraph::calcDistance(Common::Point *point, MovGraphLink *link, int flag) {
diff --git a/engines/fullpipe/motion.h b/engines/fullpipe/motion.h
index d666bc5..733fa08 100644
--- a/engines/fullpipe/motion.h
+++ b/engines/fullpipe/motion.h
@@ -36,13 +36,25 @@ public:
 
 public:
 	MotionController() : _isEnabled(true), _field_4(0) {}
+	virtual ~MotionController() {}
 	virtual bool load(MfcArchive &file);
-
-	void setEnabled() { _isEnabled = true; }
-	void clearEnabled() { _isEnabled = false; }
-
-	virtual void addObject(StaticANIObject *obj) {}
+	virtual void methodC() {}
+	virtual void method10() {}
+	virtual void clearEnabled() { _isEnabled = false; }
+	virtual void setEnabled() { _isEnabled = true; }
+	virtual int addObject(StaticANIObject *obj) { return 0; }
+	virtual int removeObject(StaticANIObject *obj) { return 0; }
 	virtual void freeItems() {}
+	virtual int method28() { return 0; }
+	virtual int method2C() { return 0; }
+	virtual int method30() { return 0; }
+	virtual MessageQueue *method34(StaticANIObject *subj, int xpos, int ypos, int flag, int staticsId) { return 0; }
+	virtual int changeCallback() { return 0; }
+	virtual int method3C() { return 0; }
+	virtual int method40() { return 0; }
+	virtual int method44() { return 0; }
+	virtual int method48() { return -1; }
+	virtual MessageQueue *method4C(StaticANIObject *subj, int xpos, int ypos, int flag, int staticsId) { return 0; }
 };
 
 class MctlCompoundArray : public Common::Array<CObject>, public CObject {
@@ -61,11 +73,13 @@ class MctlCompound : public MotionController {
  public:
 	virtual bool load(MfcArchive &file);
 
-	virtual void addObject(StaticANIObject *obj);
-	void initMovGraph2();
+	virtual int addObject(StaticANIObject *obj);
+	virtual int removeObject(StaticANIObject *obj);
+	virtual void freeItems();
+	virtual MessageQueue *method34(StaticANIObject *subj, int xpos, int ypos, int flag, int staticsId);
+	virtual MessageQueue *method4C(StaticANIObject *subj, int xpos, int ypos, int flag, int staticsId);
 
-	MessageQueue *method34(StaticANIObject *subj, int xpos, int ypos, int flag, int staticsId);
-	MessageQueue *method4C(StaticANIObject *subj, int xpos, int ypos, int flag, int staticsId);
+	void initMovGraph2();
 };
 
 class Unk2 : public CObject {
@@ -170,7 +184,7 @@ class MovGraph : public MotionController {
 	MovGraph();
 	virtual bool load(MfcArchive &file);
 
-	virtual void addObject(StaticANIObject *obj);
+	virtual int addObject(StaticANIObject *obj);
 
 	double calcDistance(Common::Point *point, MovGraphLink *link, int flag);
 	MovGraphNode *calcOffset(int ox, int oy);


Commit: 036c9fd6a9fc4218b9d21e7e5d1ec6964aca3b37
    https://github.com/scummvm/scummvm/commit/036c9fd6a9fc4218b9d21e7e5d1ec6964aca3b37
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-09-25T14:08:13-07:00

Commit Message:
FULLPIPE: Added MctlCompound object type

Changed paths:
    engines/fullpipe/motion.h
    engines/fullpipe/utils.h



diff --git a/engines/fullpipe/motion.h b/engines/fullpipe/motion.h
index 733fa08..b0bfe92 100644
--- a/engines/fullpipe/motion.h
+++ b/engines/fullpipe/motion.h
@@ -71,6 +71,8 @@ class MctlCompound : public MotionController {
 	MctlCompoundArray _motionControllers;
 
  public:
+	MctlCompound() { _objtype = kObjTypeMctlCompound; }
+
 	virtual bool load(MfcArchive &file);
 
 	virtual int addObject(StaticANIObject *obj);
diff --git a/engines/fullpipe/utils.h b/engines/fullpipe/utils.h
index 3223b9c..e593bd9 100644
--- a/engines/fullpipe/utils.h
+++ b/engines/fullpipe/utils.h
@@ -69,7 +69,8 @@ enum ObjType {
 	kObjTypeObjstateCommand,
 	kObjTypeStaticANIObject,
 	kObjTypePictureObject,
-	kObjTypeMovGraph
+	kObjTypeMovGraph,
+	kObjTypeMctlCompound
 };
 
 class CObject {


Commit: 008eb251df09e569781d6dcc28a273147bbd590a
    https://github.com/scummvm/scummvm/commit/008eb251df09e569781d6dcc28a273147bbd590a
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2013-09-25T14:08:13-07:00

Commit Message:
FULLPIPE: Started implementation of MctlCompound::initMovGraph2()

Changed paths:
    engines/fullpipe/motion.cpp



diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp
index 42aae55..b63267c 100644
--- a/engines/fullpipe/motion.cpp
+++ b/engines/fullpipe/motion.cpp
@@ -87,7 +87,29 @@ int MctlCompound::removeObject(StaticANIObject *obj) {
 }
 
 void MctlCompound::initMovGraph2() {
-	warning("STUB: MctlCompound::initMovGraph2()");
+#if 0
+	if (_objtype != kObjTypeMctlCompound)
+		return;
+
+	for (uint i = 0; i < _motionControllers.size(); i++) {
+		if (_motionControllers[i]->_motionControllerObj->_objtype != kObjTypeMovGraph)
+			continue;
+
+		MovGraph *gr = (MovGraph *)_motionControllers[i]->_motionControllerObj;
+
+		CMovGraph2 *newgr = new MovGraph2();
+
+		newgr->_links.push_back(gr->_links);
+		newgr->_nodes.push_back(gr->_nodes);
+
+		gr->_links.clear();
+		gr->_nodes.clear();
+
+		delete gr;
+
+		_motionControllers[i]->_motionControllerObj = newgr;
+	}
+#endif
 }
 
 void MctlCompound::freeItems() {






More information about the Scummvm-git-logs mailing list