[Scummvm-git-logs] scummvm master -> cf4145ae16cdba512c117e72efc0637d0dcd11c4

neuromancer noreply at scummvm.org
Mon Dec 27 16:29:38 UTC 2021


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

Summary:
cf4145ae16 HYPNO: added more scenes and fixes for hardcoded puzzles in spider


Commit: cf4145ae16cdba512c117e72efc0637d0dcd11c4
    https://github.com/scummvm/scummvm/commit/cf4145ae16cdba512c117e72efc0637d0dcd11c4
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2021-12-27T17:24:08+01:00

Commit Message:
HYPNO: added more scenes and fixes for hardcoded puzzles in spider

Changed paths:
    engines/hypno/spider/hard.cpp
    engines/hypno/spider/spider.cpp


diff --git a/engines/hypno/spider/hard.cpp b/engines/hypno/spider/hard.cpp
index 6b263962994..25027bc480a 100644
--- a/engines/hypno/spider/hard.cpp
+++ b/engines/hypno/spider/hard.cpp
@@ -562,11 +562,14 @@ void SpiderEngine::runLock(Code *code) {
 	sel[4] = Common::Rect(552, 57, 601, 134);
 	Common::Rect act(345, 337, 537, 404);
 
-	Common::String intro = "spider/cine/spv051s.smk"; 
-	if (!_intros.contains(intro)) {
-		MVideo v(intro, Common::Point(0, 0), false, false, false);
+	if (_sceneState["GS_PUZZLELEVEL"] == 0) { // easy
+		MVideo v("spider/cine/spv051s.smk", Common::Point(0, 0), false, false, false);
 		runIntro(v);
-		_intros[intro] = true;
+		loadImage("spider/factory/elockbg.smk", 0, 0, false);
+	} else {
+		MVideo v("spider/cine/spv051as.smk", Common::Point(0, 0), false, false, false);
+		runIntro(v);
+		loadImage("spider/factory/hlockbg.smk", 0, 0, false);
 	}
 
 	Frames nums = decodeFrames("spider/factory/button.smk");
@@ -574,7 +577,6 @@ void SpiderEngine::runLock(Code *code) {
 		error("Invalid number of colors: %d", nums.size());
 
 	defaultCursor();
-	loadImage("spider/factory/elockbg.smk", 0, 0, false);
 	for (int i = 0; i < 5; i++) {
 		drawImage(*nums[comb[i]], sel[i].left, sel[i].top, true);
 	}
@@ -603,7 +605,11 @@ void SpiderEngine::runLock(Code *code) {
 						comb[i] = (comb[i] + 1) % 5;
 				}
 
-				loadImage("spider/factory/elockbg.smk", 0, 0, false);
+				if (_sceneState["GS_PUZZLELEVEL"] == 0) // easy
+					loadImage("spider/factory/elockbg.smk", 0, 0, false);
+				else 
+					loadImage("spider/factory/hlockbg.smk", 0, 0, false);
+
 				for (int i = 0; i < 5; i++) {
 					drawImage(*nums[comb[i]], sel[i].left, sel[i].top, true);
 				}
@@ -670,7 +676,7 @@ void SpiderEngine::runFuseBox(Code *code) {
 	if (_sceneState["GS_PUZZLELEVEL"] == 0) { // easy
 		MVideo v("spider/cine/ppv011es.smk", Common::Point(0, 0), false, false, false);
 		runIntro(v);
-		loadImage("spider/movie2/hfusebg.smk", 0, 0, false);
+		loadImage("spider/movie2/efusebg.smk", 0, 0, false);
 	} else { // hard
 		MVideo v("spider/cine/ppv011hs.smk", Common::Point(0, 0), false, false, false);
 		runIntro(v);
@@ -693,7 +699,7 @@ void SpiderEngine::runFuseBox(Code *code) {
 			case Common::EVENT_LBUTTONDOWN:
 				if (matrix.contains(mousePos)) {
 					if (_sceneState["GS_PUZZLELEVEL"] == 0) { // easy
-						loadImage("spider/movie2/hfusebg.smk", 0, 0, false);
+						loadImage("spider/movie2/efusebg.smk", 0, 0, false);
 					} else { // hard
 						loadImage("spider/movie2/hfusebg.smk", 0, 0, false);
 					}
diff --git a/engines/hypno/spider/spider.cpp b/engines/hypno/spider/spider.cpp
index 487d72c6e5d..4483df4eeba 100644
--- a/engines/hypno/spider/spider.cpp
+++ b/engines/hypno/spider/spider.cpp
@@ -360,6 +360,19 @@ void SpiderEngine::loadAssetsFullGame() {
 	cl = new ChangeLevel("decide8.mi_");
 	sc->hots[2].actions.push_back(cl);
 
+	cl = new ChangeLevel("c13.mi_");
+	sc->hots[4].actions.push_back(cl);
+
+	loadArcadeLevel("c13.mi_", "<after_c13>", prefix);
+	_levels["c13.mi_"]->intros.push_back("cine/spf007bs.smk");
+
+	loadArcadeLevel("c13h.mi_", "<after_c13>", prefix);
+	_levels["c13h.mi_"]->intros.push_back("cine/spf007bs.smk");
+
+	Transition *after_c13 = new Transition("c12");
+	after_c13->intros.push_back("spider/cine/vrfs06bs.smk");
+	_levels["<after_c13>"] = after_c13;
+
 	loadSceneLevel("decide8.mi_", "", prefix);
 	sc = (Scene *) _levels["decide8.mi_"];
 
@@ -419,7 +432,6 @@ void SpiderEngine::loadAssetsFullGame() {
 
 	// No c7 level?
 	loadArcadeLevel("c11.mi_", "", prefix);
-	loadArcadeLevel("c13.mi_", "", prefix);
 
 	// // Hard arcade levels
 
@@ -429,7 +441,6 @@ void SpiderEngine::loadAssetsFullGame() {
 
 	// No c7h level?
 	loadArcadeLevel("c11h.mi_", "", prefix);
-	loadArcadeLevel("c13h.mi_", "", prefix);
 
 	loadSceneLevel("decide11.mi_", "", prefix);
 




More information about the Scummvm-git-logs mailing list