[Scummvm-cvs-logs] scummvm master -> 2438c5582b96af74a1003ff3948192aee656714d

sev- sev at scummvm.org
Tue Jan 14 12:18:41 CET 2014


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:
f8d835d0af FULLPIPE: Implement FullpipeEngine::updateMap()
2438c5582b FULLPIPE: Sort scenes in updateMap()


Commit: f8d835d0af013370b80c0944f43d2f15f4d928a0
    https://github.com/scummvm/scummvm/commit/f8d835d0af013370b80c0944f43d2f15f4d928a0
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-14T03:14:33-08:00

Commit Message:
FULLPIPE: Implement FullpipeEngine::updateMap()

Changed paths:
    engines/fullpipe/constants.h
    engines/fullpipe/fullpipe.cpp
    engines/fullpipe/scenes.cpp
    engines/fullpipe/stateloader.cpp



diff --git a/engines/fullpipe/constants.h b/engines/fullpipe/constants.h
index bfae414..00ae425 100644
--- a/engines/fullpipe/constants.h
+++ b/engines/fullpipe/constants.h
@@ -86,8 +86,78 @@ namespace Fullpipe {
 #define PIC_IN1_GAMETITLE 5169
 #define PIC_IN1_PIPETITLE 5167
 #define PIC_INV_MENU 991
+#define PIC_MAP_A01 5263
+#define PIC_MAP_A02 5264
+#define PIC_MAP_A03 5265
+#define PIC_MAP_A04 5266
+#define PIC_MAP_A05 5267
+#define PIC_MAP_A06 5268
+#define PIC_MAP_A07 5269
+#define PIC_MAP_A08 5270
+#define PIC_MAP_A09 5271
+#define PIC_MAP_A10 5272
+#define PIC_MAP_A11 5273
+#define PIC_MAP_A12 5274
 #define PIC_MAP_A13 5275
+#define PIC_MAP_A14 5276
+#define PIC_MAP_P01 5277
+#define PIC_MAP_P02 5278
+#define PIC_MAP_P03 5279
+#define PIC_MAP_P04 5280
+#define PIC_MAP_P05 5281
+#define PIC_MAP_P06 5282
+#define PIC_MAP_P07 5283
+#define PIC_MAP_P08 5284
+#define PIC_MAP_P09 5285
+#define PIC_MAP_P10 5286
+#define PIC_MAP_P11 5287
+#define PIC_MAP_P12 5288
+#define PIC_MAP_P13 5289
+#define PIC_MAP_P14 5290
+#define PIC_MAP_P15 5291
+#define PIC_MAP_P16 5292
+#define PIC_MAP_P17 5293
+#define PIC_MAP_P18 5294
 #define PIC_MAP_S01 5223
+#define PIC_MAP_S02 5224
+#define PIC_MAP_S03 5225
+#define PIC_MAP_S04 5226
+#define PIC_MAP_S05 5227
+#define PIC_MAP_S06 5228
+#define PIC_MAP_S07 5229
+#define PIC_MAP_S08 5231
+#define PIC_MAP_S09 5230
+#define PIC_MAP_S10 5232
+#define PIC_MAP_S11 5233
+#define PIC_MAP_S12 5234
+#define PIC_MAP_S13 5235
+#define PIC_MAP_S14 5236
+#define PIC_MAP_S15 5237
+#define PIC_MAP_S16 5238
+#define PIC_MAP_S17 5239
+#define PIC_MAP_S1819 5240
+#define PIC_MAP_S20 5241
+#define PIC_MAP_S21 5242
+#define PIC_MAP_S22 5243
+#define PIC_MAP_S23_1 5244
+#define PIC_MAP_S23_2 5245
+#define PIC_MAP_S24 5246
+#define PIC_MAP_S25 5247
+#define PIC_MAP_S26 5248
+#define PIC_MAP_S27 5249
+#define PIC_MAP_S28 5250
+#define PIC_MAP_S29 5251
+#define PIC_MAP_S30 5252
+#define PIC_MAP_S31_1 5253
+#define PIC_MAP_S31_2 5254
+#define PIC_MAP_S32_1 5255
+#define PIC_MAP_S32_2 5256
+#define PIC_MAP_S33 5257
+#define PIC_MAP_S34 5258
+#define PIC_MAP_S35 5259
+#define PIC_MAP_S36 5260
+#define PIC_MAP_S37 5261
+#define PIC_MAP_S38 5262
 #define QU_INTR_STARTINTRO 5133
 #define SC_1 301
 #define SC_2 302
@@ -745,6 +815,12 @@ namespace Fullpipe {
 #define ST_MUG17_EMPTY 2739
 #define ST_SMG_SIT 1399
 
+// Scene 18
+#define PIC_SC18_RTRUBA 1520
+
+// Scene 19
+#define PIC_SC19_RTRUBA3 1515
+
 // Scene 20
 #define ANI_GRANDMA_20 2427
 #define MSG_SC20_UPDATELOCKABLE 5217
diff --git a/engines/fullpipe/fullpipe.cpp b/engines/fullpipe/fullpipe.cpp
index 4cfa330..1c319d3 100644
--- a/engines/fullpipe/fullpipe.cpp
+++ b/engines/fullpipe/fullpipe.cpp
@@ -451,21 +451,6 @@ void FullpipeEngine::setObjectState(const char *name, int state) {
 	var->setSubVarAsInt(name, state);
 }
 
-void FullpipeEngine::updateMapPiece(int mapId, int update) {
-	for (int i = 0; i < 200; i++) {
-		int hiWord = (_mapTable[i] >> 16) & 0xffff;
-
-		if (hiWord == mapId) {
-			_mapTable[i] |= update;
-			return;
-		}
-		if (!hiWord) {
-			_mapTable[i] = (mapId << 16) | update;
-			return;
-		}
-	}
-}
-
 void FullpipeEngine::disableSaves(ExCommand *ex) {
 	warning("STUB: FullpipeEngine::disableSaves()");
 }
diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 32c26cc..0136ea9 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -993,6 +993,335 @@ void FullpipeEngine::processArcade(ExCommand *ex) {
 	warning("STUB: FullpipeEngine::processArcade()");
 }
 
+void FullpipeEngine::updateMapPiece(int mapId, int update) {
+	for (int i = 0; i < 200; i++) {
+		int hiWord = (_mapTable[i] >> 16) & 0xffff;
+
+		if (hiWord == mapId) {
+			_mapTable[i] |= update;
+			return;
+		}
+		if (!hiWord) {
+			_mapTable[i] = (mapId << 16) | update;
+			return;
+		}
+	}
+}
+
+void FullpipeEngine::updateMap(PreloadItem *pre) {
+	switch (pre->sceneId) {
+	case SC_29:
+		updateMapPiece(PIC_MAP_S29, 1);
+
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_A05, 1);
+
+		break;
+
+	case SC_30:
+		updateMapPiece(PIC_MAP_S30, 1);
+
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_P09, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_A04, 1);
+
+		break;
+
+	case SC_31:
+		updateMapPiece(PIC_MAP_S31_2, 1);
+
+		if (getObjectState("Кактус") == getObjectEnumState("Кактус", "Вырос"))
+			updateMapPiece(PIC_MAP_S31_1, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_P09, 1);
+
+		break;
+
+	case SC_32:
+		updateMapPiece(PIC_MAP_S32_2, 1);
+
+		if (getObjectState("Кактус") == getObjectEnumState("Кактус", "Вырос"))
+			updateMapPiece(PIC_MAP_S32_1, 1);
+
+		break;
+
+	case SC_33:
+		updateMapPiece(PIC_MAP_S33, 1);
+		break;
+
+	case SC_34:
+		updateMapPiece(PIC_MAP_S34, 1);
+
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_A03, 1);
+
+		break;
+
+	case SC_35:
+		updateMapPiece(PIC_MAP_S35, 1);
+
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_A02, 1);
+
+		if (pre->keyCode == TrubaDown)
+			updateMapPiece(PIC_MAP_A03, 1);
+
+		break;
+
+	case SC_36:
+		updateMapPiece(PIC_MAP_S36, 1);
+		break;
+
+	case SC_37:
+		updateMapPiece(PIC_MAP_S37, 1);
+		updateMapPiece(PIC_MAP_A01, 1);
+		break;
+
+	case SC_38:
+		updateMapPiece(PIC_MAP_S38, 1);
+
+		switch (pre->preloadId1) {
+		case SC_15:
+			updateMapPiece(PIC_MAP_P16, 1);
+			break;
+
+		case SC_1:
+			updateMapPiece(PIC_MAP_P10, 1);
+			break;
+
+		case SC_10:
+			updateMapPiece(PIC_MAP_P17, 1);
+			break;
+
+		case SC_19:
+			updateMapPiece(PIC_MAP_P12, 1);
+			break;
+		}
+		break;
+
+	case SC_28:
+		updateMapPiece(PIC_MAP_S28, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_A06, 1);
+
+		break;
+
+	case SC_22:
+		updateMapPiece(PIC_MAP_S22, 1);
+		break;
+
+	case SC_23:
+		if (getObjectState("Верхний люк_23") == getObjectEnumState("Верхний люк_23", "Открыт")) {
+			updateMapPiece(PIC_MAP_S23_1, 0);
+			updateMapPiece(PIC_MAP_S23_2, 1);
+			updateMapPiece(PIC_MAP_P07, 1);
+		} else {
+			updateMapPiece(PIC_MAP_S23_1, 1);
+			updateMapPiece(PIC_MAP_S23_2, 0);
+		}
+		break;
+
+	case SC_24:
+		updateMapPiece(PIC_MAP_S24, 1);
+
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_A08, 1);
+
+		if (pre->keyCode == TrubaDown) {
+			updateMapPiece(PIC_MAP_P13, 1);
+			updateMapPiece(PIC_MAP_A07, 1);
+		}
+		break;
+
+	case SC_25:
+		updateMapPiece(PIC_MAP_S25, 1);
+		break;
+
+	case SC_26:
+		updateMapPiece(PIC_MAP_S26, 1);
+
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_A06, 1);
+
+		if (pre->keyCode == TrubaUp) {
+			updateMapPiece(PIC_MAP_P13, 1);
+			updateMapPiece(PIC_MAP_A07, 1);
+		}
+
+		break;
+
+	case SC_27:
+		updateMapPiece(PIC_MAP_S27, 1);
+		break;
+
+	case SC_21:
+		updateMapPiece(PIC_MAP_S21, 1);
+
+		if (pre->keyCode == TrubaLeft) {
+			updateMapPiece(PIC_MAP_P15, 1);
+			updateMapPiece(PIC_MAP_A09, 1);
+		}
+
+		if (pre->keyCode == TrubaDown)
+			updateMapPiece(PIC_MAP_A08, 1);
+
+		break;
+
+	case SC_14:
+		updateMapPiece(PIC_MAP_S14, 1);
+		break;
+
+	case SC_15:
+		updateMapPiece(PIC_MAP_S15, 1);
+
+		if (pre->keyCode == TrubaUp) {
+			updateMapPiece(PIC_MAP_P08, 1);
+			updateMapPiece(PIC_MAP_A14, 1);
+		}
+
+		break;
+
+	case SC_16:
+		updateMapPiece(PIC_MAP_S16, 1);
+		break;
+
+	case SC_17:
+		updateMapPiece(PIC_MAP_S17, 1);
+		break;
+
+	case SC_18:
+		updateMapPiece(PIC_MAP_S1819, 1);
+
+		if (pre->keyCode == PIC_SC18_RTRUBA)
+			updateMapPiece(PIC_MAP_P14, 1);
+
+		break;
+
+	case SC_19:
+		updateMapPiece(PIC_MAP_S1819, 1);
+
+		if (pre->keyCode == PIC_SC19_RTRUBA3) {
+			updateMapPiece(PIC_MAP_P15, 1);
+			updateMapPiece(PIC_MAP_A09, 1);
+		}
+
+		break;
+
+	case SC_20:
+		updateMapPiece(PIC_MAP_S20, 1);
+		break;
+
+	case SC_13:
+		updateMapPiece(PIC_MAP_S13, 1);
+
+		if (pre->keyCode == TrubaUp) {
+			updateMapPiece(PIC_MAP_P06, 1);
+			updateMapPiece(PIC_MAP_A10, 1);
+		}
+		break;
+
+	case SC_7:
+		updateMapPiece(PIC_MAP_S07, 1);
+
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_P18, 1);
+
+		break;
+
+	case SC_8:
+		updateMapPiece(PIC_MAP_S08, 1);
+
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_P11, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_P18, 1);
+
+		return;
+
+	case SC_9:
+		updateMapPiece(PIC_MAP_S09, 1);
+
+		if (pre->keyCode == TrubaDown)
+			updateMapPiece(PIC_MAP_P11, 1);
+
+		return;
+
+	case SC_10:
+		updateMapPiece(PIC_MAP_S10, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_P02, 1);
+
+		break;
+
+	case SC_11:
+		updateMapPiece(PIC_MAP_S11, 1);
+
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_P02, 1);
+
+		break;
+
+	case SC_12:
+		updateMapPiece(PIC_MAP_S12, 1);
+		break;
+
+	case SC_6:
+		updateMapPiece(PIC_MAP_S06, 1);
+
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_A12, 1);
+
+		break;
+
+	case SC_1:
+		updateMapPiece(PIC_MAP_S01, 1);
+
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_P01, 1);
+
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_A13, 1);
+		break;
+
+	case SC_2:
+		updateMapPiece(PIC_MAP_S02, 1);
+
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_P01, 1);
+
+		break;
+
+	case SC_3:
+		updateMapPiece(PIC_MAP_S03, 1);
+		break;
+
+	case SC_4:
+		updateMapPiece(PIC_MAP_S04, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_P04, 1);
+
+		break;
+
+	case SC_5:
+		updateMapPiece(PIC_MAP_S05, 1);
+
+		if (pre->keyCode == TrubaLeft) {
+			updateMapPiece(PIC_MAP_P04, 1);
+	    }
+
+		if (pre->keyCode == TrubaUp) {
+			updateMapPiece(PIC_MAP_P05, 1);
+			updateMapPiece(PIC_MAP_A11, 1);
+	    }
+    }
+}
 
 
 } // End of namespace Fullpipe
diff --git a/engines/fullpipe/stateloader.cpp b/engines/fullpipe/stateloader.cpp
index fdf38ad..ccf77ff 100644
--- a/engines/fullpipe/stateloader.cpp
+++ b/engines/fullpipe/stateloader.cpp
@@ -328,8 +328,4 @@ bool PicAniInfo::load(MfcArchive &file) {
 	return true;
 }
 
-void FullpipeEngine::updateMap(PreloadItem *pre) {
-	warning("STUB: FullpipeEngine::updateMap()");
-}
-
 } // End of namespace Fullpipe


Commit: 2438c5582b96af74a1003ff3948192aee656714d
    https://github.com/scummvm/scummvm/commit/2438c5582b96af74a1003ff3948192aee656714d
Author: Eugene Sandulenko (sev at scummvm.org)
Date: 2014-01-14T03:17:15-08:00

Commit Message:
FULLPIPE: Sort scenes in updateMap()

Changed paths:
    engines/fullpipe/scenes.cpp



diff --git a/engines/fullpipe/scenes.cpp b/engines/fullpipe/scenes.cpp
index 0136ea9..02fb33b 100644
--- a/engines/fullpipe/scenes.cpp
+++ b/engines/fullpipe/scenes.cpp
@@ -1010,165 +1010,112 @@ void FullpipeEngine::updateMapPiece(int mapId, int update) {
 
 void FullpipeEngine::updateMap(PreloadItem *pre) {
 	switch (pre->sceneId) {
-	case SC_29:
-		updateMapPiece(PIC_MAP_S29, 1);
+	case SC_1:
+		updateMapPiece(PIC_MAP_S01, 1);
 
 		if (pre->keyCode == TrubaUp)
-			updateMapPiece(PIC_MAP_A05, 1);
+			updateMapPiece(PIC_MAP_P01, 1);
 
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_A13, 1);
 		break;
 
-	case SC_30:
-		updateMapPiece(PIC_MAP_S30, 1);
+	case SC_2:
+		updateMapPiece(PIC_MAP_S02, 1);
 
 		if (pre->keyCode == TrubaLeft)
-			updateMapPiece(PIC_MAP_P09, 1);
-
-		if (pre->keyCode == TrubaRight)
-			updateMapPiece(PIC_MAP_A04, 1);
+			updateMapPiece(PIC_MAP_P01, 1);
 
 		break;
 
-	case SC_31:
-		updateMapPiece(PIC_MAP_S31_2, 1);
+	case SC_3:
+		updateMapPiece(PIC_MAP_S03, 1);
+		break;
 
-		if (getObjectState("Кактус") == getObjectEnumState("Кактус", "Вырос"))
-			updateMapPiece(PIC_MAP_S31_1, 1);
+	case SC_4:
+		updateMapPiece(PIC_MAP_S04, 1);
 
 		if (pre->keyCode == TrubaRight)
-			updateMapPiece(PIC_MAP_P09, 1);
+			updateMapPiece(PIC_MAP_P04, 1);
 
 		break;
 
-	case SC_32:
-		updateMapPiece(PIC_MAP_S32_2, 1);
+	case SC_5:
+		updateMapPiece(PIC_MAP_S05, 1);
 
-		if (getObjectState("Кактус") == getObjectEnumState("Кактус", "Вырос"))
-			updateMapPiece(PIC_MAP_S32_1, 1);
+		if (pre->keyCode == TrubaLeft) {
+			updateMapPiece(PIC_MAP_P04, 1);
+	    }
 
-		break;
+		if (pre->keyCode == TrubaUp) {
+			updateMapPiece(PIC_MAP_P05, 1);
+			updateMapPiece(PIC_MAP_A11, 1);
+	    }
 
-	case SC_33:
-		updateMapPiece(PIC_MAP_S33, 1);
 		break;
 
-	case SC_34:
-		updateMapPiece(PIC_MAP_S34, 1);
+	case SC_6:
+		updateMapPiece(PIC_MAP_S06, 1);
 
 		if (pre->keyCode == TrubaUp)
-			updateMapPiece(PIC_MAP_A03, 1);
+			updateMapPiece(PIC_MAP_A12, 1);
 
 		break;
 
-	case SC_35:
-		updateMapPiece(PIC_MAP_S35, 1);
+	case SC_7:
+		updateMapPiece(PIC_MAP_S07, 1);
 
 		if (pre->keyCode == TrubaLeft)
-			updateMapPiece(PIC_MAP_A02, 1);
-
-		if (pre->keyCode == TrubaDown)
-			updateMapPiece(PIC_MAP_A03, 1);
-
-		break;
-
-	case SC_36:
-		updateMapPiece(PIC_MAP_S36, 1);
-		break;
+			updateMapPiece(PIC_MAP_P18, 1);
 
-	case SC_37:
-		updateMapPiece(PIC_MAP_S37, 1);
-		updateMapPiece(PIC_MAP_A01, 1);
 		break;
 
-	case SC_38:
-		updateMapPiece(PIC_MAP_S38, 1);
-
-		switch (pre->preloadId1) {
-		case SC_15:
-			updateMapPiece(PIC_MAP_P16, 1);
-			break;
-
-		case SC_1:
-			updateMapPiece(PIC_MAP_P10, 1);
-			break;
-
-		case SC_10:
-			updateMapPiece(PIC_MAP_P17, 1);
-			break;
-
-		case SC_19:
-			updateMapPiece(PIC_MAP_P12, 1);
-			break;
-		}
-		break;
+	case SC_8:
+		updateMapPiece(PIC_MAP_S08, 1);
 
-	case SC_28:
-		updateMapPiece(PIC_MAP_S28, 1);
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_P11, 1);
 
 		if (pre->keyCode == TrubaRight)
-			updateMapPiece(PIC_MAP_A06, 1);
+			updateMapPiece(PIC_MAP_P18, 1);
 
-		break;
+		return;
 
-	case SC_22:
-		updateMapPiece(PIC_MAP_S22, 1);
-		break;
+	case SC_9:
+		updateMapPiece(PIC_MAP_S09, 1);
 
-	case SC_23:
-		if (getObjectState("Верхний люк_23") == getObjectEnumState("Верхний люк_23", "Открыт")) {
-			updateMapPiece(PIC_MAP_S23_1, 0);
-			updateMapPiece(PIC_MAP_S23_2, 1);
-			updateMapPiece(PIC_MAP_P07, 1);
-		} else {
-			updateMapPiece(PIC_MAP_S23_1, 1);
-			updateMapPiece(PIC_MAP_S23_2, 0);
-		}
-		break;
+		if (pre->keyCode == TrubaDown)
+			updateMapPiece(PIC_MAP_P11, 1);
 
-	case SC_24:
-		updateMapPiece(PIC_MAP_S24, 1);
+		return;
 
-		if (pre->keyCode == TrubaUp)
-			updateMapPiece(PIC_MAP_A08, 1);
+	case SC_10:
+		updateMapPiece(PIC_MAP_S10, 1);
 
-		if (pre->keyCode == TrubaDown) {
-			updateMapPiece(PIC_MAP_P13, 1);
-			updateMapPiece(PIC_MAP_A07, 1);
-		}
-		break;
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_P02, 1);
 
-	case SC_25:
-		updateMapPiece(PIC_MAP_S25, 1);
 		break;
 
-	case SC_26:
-		updateMapPiece(PIC_MAP_S26, 1);
+	case SC_11:
+		updateMapPiece(PIC_MAP_S11, 1);
 
 		if (pre->keyCode == TrubaLeft)
-			updateMapPiece(PIC_MAP_A06, 1);
-
-		if (pre->keyCode == TrubaUp) {
-			updateMapPiece(PIC_MAP_P13, 1);
-			updateMapPiece(PIC_MAP_A07, 1);
-		}
+			updateMapPiece(PIC_MAP_P02, 1);
 
 		break;
 
-	case SC_27:
-		updateMapPiece(PIC_MAP_S27, 1);
+	case SC_12:
+		updateMapPiece(PIC_MAP_S12, 1);
 		break;
 
-	case SC_21:
-		updateMapPiece(PIC_MAP_S21, 1);
+	case SC_13:
+		updateMapPiece(PIC_MAP_S13, 1);
 
-		if (pre->keyCode == TrubaLeft) {
-			updateMapPiece(PIC_MAP_P15, 1);
-			updateMapPiece(PIC_MAP_A09, 1);
+		if (pre->keyCode == TrubaUp) {
+			updateMapPiece(PIC_MAP_P06, 1);
+			updateMapPiece(PIC_MAP_A10, 1);
 		}
-
-		if (pre->keyCode == TrubaDown)
-			updateMapPiece(PIC_MAP_A08, 1);
-
 		break;
 
 	case SC_14:
@@ -1215,111 +1162,166 @@ void FullpipeEngine::updateMap(PreloadItem *pre) {
 		updateMapPiece(PIC_MAP_S20, 1);
 		break;
 
-	case SC_13:
-		updateMapPiece(PIC_MAP_S13, 1);
+	case SC_21:
+		updateMapPiece(PIC_MAP_S21, 1);
 
-		if (pre->keyCode == TrubaUp) {
-			updateMapPiece(PIC_MAP_P06, 1);
-			updateMapPiece(PIC_MAP_A10, 1);
+		if (pre->keyCode == TrubaLeft) {
+			updateMapPiece(PIC_MAP_P15, 1);
+			updateMapPiece(PIC_MAP_A09, 1);
 		}
-		break;
 
-	case SC_7:
-		updateMapPiece(PIC_MAP_S07, 1);
+		if (pre->keyCode == TrubaDown)
+			updateMapPiece(PIC_MAP_A08, 1);
 
-		if (pre->keyCode == TrubaLeft)
-			updateMapPiece(PIC_MAP_P18, 1);
+		break;
 
+	case SC_22:
+		updateMapPiece(PIC_MAP_S22, 1);
 		break;
 
-	case SC_8:
-		updateMapPiece(PIC_MAP_S08, 1);
+	case SC_23:
+		if (getObjectState("Верхний люк_23") == getObjectEnumState("Верхний люк_23", "Открыт")) {
+			updateMapPiece(PIC_MAP_S23_1, 0);
+			updateMapPiece(PIC_MAP_S23_2, 1);
+			updateMapPiece(PIC_MAP_P07, 1);
+		} else {
+			updateMapPiece(PIC_MAP_S23_1, 1);
+			updateMapPiece(PIC_MAP_S23_2, 0);
+		}
+		break;
+
+	case SC_24:
+		updateMapPiece(PIC_MAP_S24, 1);
 
 		if (pre->keyCode == TrubaUp)
-			updateMapPiece(PIC_MAP_P11, 1);
+			updateMapPiece(PIC_MAP_A08, 1);
 
-		if (pre->keyCode == TrubaRight)
-			updateMapPiece(PIC_MAP_P18, 1);
+		if (pre->keyCode == TrubaDown) {
+			updateMapPiece(PIC_MAP_P13, 1);
+			updateMapPiece(PIC_MAP_A07, 1);
+		}
+		break;
 
-		return;
+	case SC_25:
+		updateMapPiece(PIC_MAP_S25, 1);
+		break;
 
-	case SC_9:
-		updateMapPiece(PIC_MAP_S09, 1);
+	case SC_26:
+		updateMapPiece(PIC_MAP_S26, 1);
 
-		if (pre->keyCode == TrubaDown)
-			updateMapPiece(PIC_MAP_P11, 1);
+		if (pre->keyCode == TrubaLeft)
+			updateMapPiece(PIC_MAP_A06, 1);
 
-		return;
+		if (pre->keyCode == TrubaUp) {
+			updateMapPiece(PIC_MAP_P13, 1);
+			updateMapPiece(PIC_MAP_A07, 1);
+		}
 
-	case SC_10:
-		updateMapPiece(PIC_MAP_S10, 1);
+		break;
+
+	case SC_27:
+		updateMapPiece(PIC_MAP_S27, 1);
+		break;
+
+	case SC_28:
+		updateMapPiece(PIC_MAP_S28, 1);
 
 		if (pre->keyCode == TrubaRight)
-			updateMapPiece(PIC_MAP_P02, 1);
+			updateMapPiece(PIC_MAP_A06, 1);
 
 		break;
 
-	case SC_11:
-		updateMapPiece(PIC_MAP_S11, 1);
+	case SC_29:
+		updateMapPiece(PIC_MAP_S29, 1);
+
+		if (pre->keyCode == TrubaUp)
+			updateMapPiece(PIC_MAP_A05, 1);
+
+		break;
+
+	case SC_30:
+		updateMapPiece(PIC_MAP_S30, 1);
 
 		if (pre->keyCode == TrubaLeft)
-			updateMapPiece(PIC_MAP_P02, 1);
+			updateMapPiece(PIC_MAP_P09, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_A04, 1);
 
 		break;
 
-	case SC_12:
-		updateMapPiece(PIC_MAP_S12, 1);
+	case SC_31:
+		updateMapPiece(PIC_MAP_S31_2, 1);
+
+		if (getObjectState("Кактус") == getObjectEnumState("Кактус", "Вырос"))
+			updateMapPiece(PIC_MAP_S31_1, 1);
+
+		if (pre->keyCode == TrubaRight)
+			updateMapPiece(PIC_MAP_P09, 1);
+
 		break;
 
-	case SC_6:
-		updateMapPiece(PIC_MAP_S06, 1);
+	case SC_32:
+		updateMapPiece(PIC_MAP_S32_2, 1);
 
-		if (pre->keyCode == TrubaUp)
-			updateMapPiece(PIC_MAP_A12, 1);
+		if (getObjectState("Кактус") == getObjectEnumState("Кактус", "Вырос"))
+			updateMapPiece(PIC_MAP_S32_1, 1);
 
 		break;
 
-	case SC_1:
-		updateMapPiece(PIC_MAP_S01, 1);
+	case SC_33:
+		updateMapPiece(PIC_MAP_S33, 1);
+		break;
+
+	case SC_34:
+		updateMapPiece(PIC_MAP_S34, 1);
 
 		if (pre->keyCode == TrubaUp)
-			updateMapPiece(PIC_MAP_P01, 1);
+			updateMapPiece(PIC_MAP_A03, 1);
 
-		if (pre->keyCode == TrubaLeft)
-			updateMapPiece(PIC_MAP_A13, 1);
 		break;
 
-	case SC_2:
-		updateMapPiece(PIC_MAP_S02, 1);
+	case SC_35:
+		updateMapPiece(PIC_MAP_S35, 1);
 
 		if (pre->keyCode == TrubaLeft)
-			updateMapPiece(PIC_MAP_P01, 1);
+			updateMapPiece(PIC_MAP_A02, 1);
+
+		if (pre->keyCode == TrubaDown)
+			updateMapPiece(PIC_MAP_A03, 1);
 
 		break;
 
-	case SC_3:
-		updateMapPiece(PIC_MAP_S03, 1);
+	case SC_36:
+		updateMapPiece(PIC_MAP_S36, 1);
 		break;
 
-	case SC_4:
-		updateMapPiece(PIC_MAP_S04, 1);
+	case SC_37:
+		updateMapPiece(PIC_MAP_S37, 1);
+		updateMapPiece(PIC_MAP_A01, 1);
+		break;
 
-		if (pre->keyCode == TrubaRight)
-			updateMapPiece(PIC_MAP_P04, 1);
+	case SC_38:
+		updateMapPiece(PIC_MAP_S38, 1);
 
-		break;
+		switch (pre->preloadId1) {
+		case SC_15:
+			updateMapPiece(PIC_MAP_P16, 1);
+			break;
 
-	case SC_5:
-		updateMapPiece(PIC_MAP_S05, 1);
+		case SC_1:
+			updateMapPiece(PIC_MAP_P10, 1);
+			break;
 
-		if (pre->keyCode == TrubaLeft) {
-			updateMapPiece(PIC_MAP_P04, 1);
-	    }
+		case SC_10:
+			updateMapPiece(PIC_MAP_P17, 1);
+			break;
 
-		if (pre->keyCode == TrubaUp) {
-			updateMapPiece(PIC_MAP_P05, 1);
-			updateMapPiece(PIC_MAP_A11, 1);
-	    }
+		case SC_19:
+			updateMapPiece(PIC_MAP_P12, 1);
+			break;
+		}
+		break;
     }
 }
 






More information about the Scummvm-git-logs mailing list