diff options
| author | Eugene Sandulenko | 2014-01-13 21:36:27 +0200 | 
|---|---|---|
| committer | Eugene Sandulenko | 2014-01-13 21:36:27 +0200 | 
| commit | f4e6482863e4a242040adc7777e58924ed867ed8 (patch) | |
| tree | 735a05eb890541a2f71d86391639845ee68df464 | |
| parent | 523b3084808ead8d3841995c1740fd7ce6117736 (diff) | |
| download | scummvm-rg350-f4e6482863e4a242040adc7777e58924ed867ed8.tar.gz scummvm-rg350-f4e6482863e4a242040adc7777e58924ed867ed8.tar.bz2 scummvm-rg350-f4e6482863e4a242040adc7777e58924ed867ed8.zip  | |
FULLPIPE: Implement sceneHandler34_setExits()
| -rw-r--r-- | engines/fullpipe/scenes/scene34.cpp | 20 | 
1 files changed, 19 insertions, 1 deletions
diff --git a/engines/fullpipe/scenes/scene34.cpp b/engines/fullpipe/scenes/scene34.cpp index 55217c97c8..ad8c41a50f 100644 --- a/engines/fullpipe/scenes/scene34.cpp +++ b/engines/fullpipe/scenes/scene34.cpp @@ -37,7 +37,25 @@  namespace Fullpipe {  void sceneHandler34_setExits() { -	warning("STUB: sceneHandler34_setExits()"); +	int state; + +	if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_NearPipeWithStool)) { +		if (g_fp->getObjectState(sO_Hatch_34) == g_fp->getObjectEnumState(sO_Hatch_34, sO_Closed)) +			state = g_fp->getObjectEnumState(sO_Plank_34, sO_ClosedWithBoot); +		else +			state = g_fp->getObjectEnumState(sO_Plank_34, sO_OpenedWithBoot); +	} else { +		if (g_fp->getObjectState(sO_Grandma) == g_fp->getObjectEnumState(sO_Grandma, sO_OnStool)) { +			if (g_fp->getObjectState(sO_Hatch_34) == g_fp->getObjectEnumState(sO_Hatch_34, sO_Closed)) +				state = g_fp->getObjectEnumState(sO_Plank_34, sO_IsClosed); +			else +				state = g_fp->getObjectEnumState(sO_Plank_34, sO_IsOpened); +		} else { +			state = g_fp->getObjectEnumState(sO_Plank_34, sO_Passive); +		} +	} + +	g_fp->setObjectState(sO_Plank_34, state);  }  void scene34_initScene(Scene *sc) {  | 
