diff options
| -rw-r--r-- | engines/fullpipe/motion.cpp | 18 | ||||
| -rw-r--r-- | engines/fullpipe/motion.h | 16 | ||||
| -rw-r--r-- | engines/fullpipe/scenes.h | 3 | ||||
| -rw-r--r-- | engines/fullpipe/scenes/scene04.cpp | 6 | ||||
| -rw-r--r-- | engines/fullpipe/utils.cpp | 1 | 
5 files changed, 39 insertions, 5 deletions
diff --git a/engines/fullpipe/motion.cpp b/engines/fullpipe/motion.cpp index f67011a50f..b2d44a302a 100644 --- a/engines/fullpipe/motion.cpp +++ b/engines/fullpipe/motion.cpp @@ -28,9 +28,9 @@  #include "fullpipe/objects.h"  #include "fullpipe/statics.h" +#include "fullpipe/gameloader.h"  #include "fullpipe/motion.h"  #include "fullpipe/messages.h" -#include "fullpipe/gameloader.h"  namespace Fullpipe { @@ -185,6 +185,22 @@ MessageQueue *MctlCompound::doWalkTo(StaticANIObject *subj, int xpos, int ypos,  	return mq;  } +MctlLadder::MctlLadder() { +	_preload.preloadId1 = 0; +	_preload.keyCode = 0; +	_preload.sceneId = 0; +	_preload.preloadId2 = 0; + +	_ladder_field_18 = 0; +	_ladder_field_C = 0; +	_ladder_field_1C = 0; +	_ladder_field_10 = 0; +	_ladder_field_14 = 0; + +	_ladder_field_20 = 0; +	_ladder_field_24 = 0; +} +  MctlConnectionPoint *MctlCompound::findClosestConnectionPoint(int ox, int oy, int destIndex, int connectionX, int connectionY, int sourceIndex, int *minDistancePtr) {  	warning("STUB: MctlCompound::findClosestConnectionPoint()"); diff --git a/engines/fullpipe/motion.h b/engines/fullpipe/motion.h index bab0ffc8ca..85d7144f0b 100644 --- a/engines/fullpipe/motion.h +++ b/engines/fullpipe/motion.h @@ -161,6 +161,22 @@ public:  	MessageQueue *genMovement(MGMInfo *mgminfo);  }; +class MctlLadder : public MotionController { +public: +	int _ladder_field_C; +	int _ladder_field_10; +	int _ladder_field_14; +	int _ladder_field_18; +	int _ladder_field_1C; +	int _ladder_field_20; +	int _ladder_field_24; +	PreloadItem _preload; +	MGM _mgm; + +public: +	MctlLadder(); +}; +  class MovGraphNode : public CObject {  public:  	int _x; diff --git a/engines/fullpipe/scenes.h b/engines/fullpipe/scenes.h index 670b94a839..ced671d6e7 100644 --- a/engines/fullpipe/scenes.h +++ b/engines/fullpipe/scenes.h @@ -26,6 +26,7 @@  namespace Fullpipe {  class StaticANIObject; + class MctlLadder;  int defaultUpdateCursor(); @@ -93,7 +94,7 @@ public:  	Common::List<GameObject *> scene04_bottleObjList;  	Common::List<StaticANIObject *> scene04_kozyawkiAni; -	int scene04_ladder; +	MctlLadder *scene04_ladder;  	bool scene04_coinPut;  	bool scene04_soundPlaying;  	int scene04_dynamicPhaseIndex; diff --git a/engines/fullpipe/scenes/scene04.cpp b/engines/fullpipe/scenes/scene04.cpp index 78cf48830d..b906b1bc2e 100644 --- a/engines/fullpipe/scenes/scene04.cpp +++ b/engines/fullpipe/scenes/scene04.cpp @@ -326,10 +326,10 @@ void sceneHandler04_manFromBottle() {  			break;  		} -	//if (g_vars->scene04_ladder) -	//	delete g_vars->scene04_ladder; +	if (g_vars->scene04_ladder) +		delete g_vars->scene04_ladder; -	//g_vars->scene04_ladder = 0; +	g_vars->scene04_ladder = 0;  	getSc2MctlCompoundBySceneId(g_fullpipe->_currentScene->_sceneId)->setEnabled();  	getGameLoaderInteractionController()->enableFlag24(); diff --git a/engines/fullpipe/utils.cpp b/engines/fullpipe/utils.cpp index 3a65801951..063aa5c738 100644 --- a/engines/fullpipe/utils.cpp +++ b/engines/fullpipe/utils.cpp @@ -26,6 +26,7 @@  #include "common/memstream.h"  #include "fullpipe/objects.h" +#include "fullpipe/gameloader.h"  #include "fullpipe/motion.h"  #include "fullpipe/ngiarchive.h"  #include "fullpipe/messages.h"  | 
