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

neuromancer noreply at scummvm.org
Wed Dec 29 13:21:53 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:
f6bfd24745 HYPNO: fixed practice levels and credits


Commit: f6bfd24745d4fb26d22f602b6ba7995bb2df048a
    https://github.com/scummvm/scummvm/commit/f6bfd24745d4fb26d22f602b6ba7995bb2df048a
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2021-12-29T14:21:19+01:00

Commit Message:
HYPNO: fixed practice levels and credits

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 3300dbebb20..e4d5aca352d 100644
--- a/engines/hypno/spider/hard.cpp
+++ b/engines/hypno/spider/hard.cpp
@@ -799,6 +799,7 @@ void SpiderEngine::showCredits() {
 	changeScreenMode("640x480");
 	MVideo video("cine/credits.smk", Common::Point(0, 0), false, false, false);
 	runIntro(video);
+	_nextLevel = "mainmenu.mi_";
 }
 
 } // End of namespace Hypno
\ No newline at end of file
diff --git a/engines/hypno/spider/spider.cpp b/engines/hypno/spider/spider.cpp
index e26e1c22fdd..ce3f2ab673c 100644
--- a/engines/hypno/spider/spider.cpp
+++ b/engines/hypno/spider/spider.cpp
@@ -64,6 +64,7 @@ void SpiderEngine::loadAssetsFullGame() {
 
 	Scene *sc;
 	ChangeLevel *cl;
+	Global *gl;
 
 	loadSceneLevel("mainmenu.mi_", "", prefix);
 	loadSceneLevel("tryagain.mi_", "", prefix);
@@ -76,6 +77,129 @@ void SpiderEngine::loadAssetsFullGame() {
 	loadSceneLevel("levels.mi_", "mv0t.mi_", prefix);
 	loadSceneLevel("combmenu.mi_", "", prefix);
 
+	// start level
+	Transition *start = new Transition("mainmenu.mi_");
+	start->intros.push_back("spider/cine/dcine1.smk");
+	start->intros.push_back("spider/cine/dcine2.smk");
+	_levels["<start>"] = start;
+
+	sc = (Scene *) _levels["mainmenu.mi_"];
+	cl = new ChangeLevel("levels.mi_");
+	sc->hots[1].actions.push_back(cl);
+	sc->music = "sound.lib/menu_mus.raw";
+
+	cl = new ChangeLevel("options.mi_");
+	sc->hots[4].actions.push_back(cl);
+
+	cl = new ChangeLevel("<quit>");
+	sc->hots[5].actions.push_back(cl);
+
+	sc = (Scene *) _levels["levels.mi_"];
+	cl = new ChangeLevel("levels.mi_");
+	sc->hots[1].actions.push_back(cl);
+	sc->hots[2].actions.push_back(cl);
+	sc->hots[3].actions.push_back(cl);
+	sc->hots[4].actions.push_back(cl);
+
+	gl = new Global("GS_LEVELWON", "TURNON");
+	sc->hots[5].actions.push_back(gl);
+	cl = new ChangeLevel("mainmenu.mi_");
+	sc->hots[6].actions.push_back(cl);
+
+	sc = (Scene *) _levels["options.mi_"]; 
+
+	cl = new ChangeLevel("combmenu.mi_");
+	sc->hots[1].actions.push_back(cl);
+
+	cl = new ChangeLevel("mainmenu.mi_");
+	sc->hots[4].actions.push_back(cl);
+
+	cl = new ChangeLevel("<credits>");
+	sc->hots[5].actions.push_back(cl);
+
+	sc = (Scene *) _levels["combmenu.mi_"]; 
+
+	cl = new ChangeLevel("options.mi_");
+	sc->hots[1].actions.push_back(cl);
+
+	Transition *practice_win = new Transition("combmenu.mi_");
+	practice_win->intros.push_back("spider/cine/practwin.smk");
+	_levels["<practice_win>"] = practice_win;
+
+	Transition *practice_lose = new Transition("combmenu.mi_");
+	practice_lose->intros.push_back("spider/cine/praclose.smk");
+	_levels["<practice_lose>"] = practice_lose;
+
+	loadArcadeLevel("c1h.mi_", "<practice_win>", prefix);
+	_levels["c1h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c1h_solo.mi_"] = _levels["c1h.mi_"];
+
+	cl = new ChangeLevel("c1h_solo.mi_");
+	sc->hots[2].actions.push_back(cl);
+
+	loadArcadeLevel("c2h.mi_", "<practice_win>", prefix);
+	_levels["c2h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c2h_solo.mi_"] = _levels["c2h.mi_"];
+
+	cl = new ChangeLevel("c2h_solo.mi_");
+	sc->hots[3].actions.push_back(cl);
+
+	loadArcadeLevel("c3h.mi_", "<practice_win>", prefix);
+	_levels["c3h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c3h_solo.mi_"] = _levels["c3h.mi_"];
+
+	cl = new ChangeLevel("c3h_solo.mi_");
+	sc->hots[4].actions.push_back(cl);
+
+	loadArcadeLevel("c4h.mi_", "<practice_win>", prefix);
+	_levels["c4h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c4h_solo.mi_"] = _levels["c4h.mi_"];
+
+	cl = new ChangeLevel("c4h_solo.mi_");
+	sc->hots[5].actions.push_back(cl);
+
+	loadArcadeLevel("c5h.mi_", "<practice_win>", prefix);
+	_levels["c5h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c5h_solo.mi_"] = _levels["c5h.mi_"];
+
+	cl = new ChangeLevel("c5h_solo.mi_");
+	sc->hots[6].actions.push_back(cl);
+
+	loadArcadeLevel("c8h.mi_", "<practice_win>", prefix);
+	_levels["c8h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c8h_solo.mi_"] = _levels["c8h.mi_"];
+
+	cl = new ChangeLevel("c8h_solo.mi_");
+	sc->hots[7].actions.push_back(cl);
+
+	loadArcadeLevel("c9h.mi_", "<practice_win>", prefix);
+	_levels["c9h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c9h_solo.mi_"] = _levels["c9h.mi_"];
+
+	cl = new ChangeLevel("c9h_solo.mi_");
+	sc->hots[8].actions.push_back(cl);
+
+	loadArcadeLevel("c10h.mi_", "<practice_win>", prefix);
+	_levels["c10h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c10h_solo.mi_"] = _levels["c10h.mi_"];
+
+	cl = new ChangeLevel("c10h_solo.mi_");
+	sc->hots[9].actions.push_back(cl);
+
+	loadArcadeLevel("c11h.mi_", "<practice_win>", prefix);
+	_levels["c11h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c11h_solo.mi_"] = _levels["c11h.mi_"];
+
+	cl = new ChangeLevel("c11h_solo.mi_");
+	sc->hots[10].actions.push_back(cl);
+
+	loadArcadeLevel("c12h.mi_", "<practice_win>", prefix);
+	_levels["c12h.mi_"]->levelIfLose = "<practice_lose>";
+	_levels["c12h_solo.mi_"] = _levels["c12h.mi_"];
+
+	cl = new ChangeLevel("c12h_solo.mi_");
+	sc->hots[11].actions.push_back(cl);
+
 	loadSceneLevel("mv0t.mi_", "roof.mi_", prefix);
 	_levels["mv0t.mi_"]->intros.push_back("cine/ints001s.smk");
 	_levels["mv0t.mi_"]->music = "sound.lib/sm001.raw";
@@ -176,7 +300,7 @@ void SpiderEngine::loadAssetsFullGame() {
 	sc = (Scene *) _levels["alofintr.mi_"];
 	sc->intros.push_back("cine/swc002as.smk");
 	// This is necessary, for some reason
-	Global *gl = new Global("GS_SWITCH1", "TURNON");	// alarm system
+	gl = new Global("GS_SWITCH1", "TURNON");			// alarm system
 	sc->hots[2].actions.push_back(gl);
 	gl = new Global("GS_SWITCH2", "TURNON");			// camera
 	sc->hots[2].actions.push_back(gl);
@@ -301,7 +425,7 @@ void SpiderEngine::loadAssetsFullGame() {
 	sc->intros.push_back("cine/apts006s.smk");
 	cl = new ChangeLevel("ball1.mi_");
 	sc->hots[2].actions.push_back(cl);
-	cl = new ChangeLevel("c5"); // depens on the difficulty
+	cl = new ChangeLevel("c5");
 	sc->hots[4].actions.push_back(cl);
 
 	loadArcadeLevel("c5.mi_", "<trans_apt_6>", prefix);
@@ -316,6 +440,8 @@ void SpiderEngine::loadAssetsFullGame() {
 	loadSceneLevel("ball1.mi_", "<note>", prefix);
 	loadSceneLevel("ball2.mi_", "balcony.mi_", prefix);
 	loadSceneLevel("balcony.mi_", "factory1.mi_", prefix);
+	// This scene seems to correspond with the dance ones, but I don't know how to trigger them
+	loadSceneLevel("coat.mi_", "???", prefix);
 
 	Code *note = new Code();
 	note->name = "<note>";
@@ -463,80 +589,6 @@ void SpiderEngine::loadAssetsFullGame() {
 
 	loadSceneLevel("decide11.mi_", "", prefix);
 
-	// start level
-	Transition *start = new Transition("mainmenu.mi_");
-	start->intros.push_back("spider/cine/dcine1.smk");
-	start->intros.push_back("spider/cine/dcine2.smk");
-	_levels["<start>"] = start;
-
-	sc = (Scene *) _levels["mainmenu.mi_"];
-	cl = new ChangeLevel("levels.mi_");
-	sc->hots[1].actions.push_back(cl);
-
-	cl = new ChangeLevel("options.mi_");
-	sc->hots[4].actions.push_back(cl);
-
-	cl = new ChangeLevel("<quit>");
-	sc->hots[5].actions.push_back(cl);
-
-	sc = (Scene *) _levels["levels.mi_"];
-	cl = new ChangeLevel("levels.mi_");
-	sc->hots[1].actions.push_back(cl);
-	sc->hots[2].actions.push_back(cl);
-	sc->hots[3].actions.push_back(cl);
-	sc->hots[4].actions.push_back(cl);
-
-	gl = new Global("GS_LEVELWON", "TURNON");
-	sc->hots[5].actions.push_back(gl);
-	cl = new ChangeLevel("mainmenu.mi_");
-	sc->hots[6].actions.push_back(cl);
-
-	sc = (Scene *) _levels["options.mi_"]; 
-
-	cl = new ChangeLevel("combmenu.mi_");
-	sc->hots[1].actions.push_back(cl);
-
-	cl = new ChangeLevel("mainmenu.mi_");
-	sc->hots[4].actions.push_back(cl);
-
-	cl = new ChangeLevel("<credits>");
-	sc->hots[5].actions.push_back(cl);
-
-	sc = (Scene *) _levels["combmenu.mi_"]; 
-
-	cl = new ChangeLevel("options.mi_");
-	sc->hots[1].actions.push_back(cl);
-
-	cl = new ChangeLevel("c1h.mi_");
-	sc->hots[2].actions.push_back(cl);
-
-	cl = new ChangeLevel("c2h.mi_");
-	sc->hots[3].actions.push_back(cl);
-
-	cl = new ChangeLevel("c3h.mi_");
-	sc->hots[4].actions.push_back(cl);
-
-	cl = new ChangeLevel("c4h.mi_");
-	sc->hots[5].actions.push_back(cl);
-
-	cl = new ChangeLevel("c5h.mi_");
-	sc->hots[6].actions.push_back(cl);
-
-	cl = new ChangeLevel("c8h.mi_");
-	sc->hots[7].actions.push_back(cl);
-	
-	cl = new ChangeLevel("c9h.mi_");
-	sc->hots[8].actions.push_back(cl);
-
-	cl = new ChangeLevel("c10h.mi_");
-	sc->hots[9].actions.push_back(cl);
-
-	cl = new ChangeLevel("c11h.mi_");
-	sc->hots[10].actions.push_back(cl);
-
-	cl = new ChangeLevel("c12h.mi_");
-	sc->hots[11].actions.push_back(cl);
-
 	// Game overs
 	Transition *over_apt_1 = new Transition("tryagain.mi_");
 	over_apt_1->intros.push_back("spider/cine/apts01as.smk");




More information about the Scummvm-git-logs mailing list