[Scummvm-git-logs] scummvm master -> b7c06ee881280b0f447ce31ba8d9f6fe8386a474
neuromancer
noreply at scummvm.org
Mon Jan 17 09:00:34 UTC 2022
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:
b7c06ee881 HYPNO: fixes in puzzles and menu in spider
Commit: b7c06ee881280b0f447ce31ba8d9f6fe8386a474
https://github.com/scummvm/scummvm/commit/b7c06ee881280b0f447ce31ba8d9f6fe8386a474
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-01-17T09:58:49+01:00
Commit Message:
HYPNO: fixes in puzzles and menu in spider
Changed paths:
engines/hypno/actions.cpp
engines/hypno/spider/hard.cpp
engines/hypno/spider/spider.cpp
diff --git a/engines/hypno/actions.cpp b/engines/hypno/actions.cpp
index f740e132120..88b2955512c 100644
--- a/engines/hypno/actions.cpp
+++ b/engines/hypno/actions.cpp
@@ -71,13 +71,12 @@ void HypnoEngine::runMenu(Hotspots hs) {
if (_conversation.empty()) {
if (h.flags[0] == "HINTS" || h.flags[1] == "HINTS" || h.flags[2] == "HINTS")
loadImage("int_main/hint1.smk", 0, 0, true);
- else if (h.flags[0] == "AUTO_BUTTONS") {
+ else if (h.flags[0] == "AUTO_BUTTONS" || h.flags[0] == "SINGLE_RUN") {
if (isDemo())
loadImage("int_main/resume.smk", 0, 0, true, false, 0);
else
loadImage("int_main/menu.smk", 0, 0, true, false, 0);
}
-
}
}
diff --git a/engines/hypno/spider/hard.cpp b/engines/hypno/spider/hard.cpp
index 60cb7c4464f..c099f7d9ab1 100644
--- a/engines/hypno/spider/hard.cpp
+++ b/engines/hypno/spider/hard.cpp
@@ -174,7 +174,7 @@ void SpiderEngine::addIngredient(Code *code) {
void SpiderEngine::checkMixture(Code *code) {
_nextLevel = "bushard2.mi_";
if (ingredients[0]) {
- MVideo video("spider/cine/blcs005s.smk", Common::Point(0, 0), false, true, false);
+ MVideo video("cine/blcs005s.smk", Common::Point(0, 0), false, true, false);
runIntro(video);
memset(ingredients, 0, 7);
return;
@@ -191,7 +191,7 @@ void SpiderEngine::checkMixture(Code *code) {
for (int i = 1; i < 7; i++) {
if (!ingredients[i]) {
- MVideo video("spider/cine/blcs005s.smk", Common::Point(0, 0), false, true, false);
+ MVideo video("cine/blcs005s.smk", Common::Point(0, 0), false, true, false);
runIntro(video);
memset(ingredients, 0, 7);
return;
@@ -558,20 +558,20 @@ void SpiderEngine::runFileCabinet(Code *code) {
sel[4] = Common::Rect(453, 176, 526, 301);
sel[5] = Common::Rect(545, 176, 618, 301);
- Common::String intro = "spider/cine/spv040s.smk";
+ Common::String intro = "cine/spv040s.smk";
if (!_intros.contains(intro)) {
MVideo v(intro, Common::Point(0, 0), false, false, false);
runIntro(v);
_intros[intro] = true;
}
- Frames nums = decodeFrames("spider/int_alof/combo.smk");
+ Frames nums = decodeFrames("int_alof/combo.smk");
if (nums.size() != 10)
error("Invalid number of digits: %d", nums.size());
defaultCursor();
Common::Rect back(0, 446, 640, 480);
- loadImage("spider/int_alof/combobg.smk", 0, 0, false, true);
+ loadImage("int_alof/combobg.smk", 0, 0, false, true);
for (int i = 0; i < 6; i++) {
drawImage(*nums[comb[i]], sel[i].left, sel[i].top, true);
}
@@ -589,8 +589,9 @@ void SpiderEngine::runFileCabinet(Code *code) {
case Common::EVENT_LBUTTONDOWN:
if (back.contains(mousePos)) {
- if (comb[0] == 3 && comb[1] == 2 && comb[2] == 5 && comb[3] == 7 && comb[4] == 0 && comb[5] == 1) {
- MVideo v("spider/cine/file0000.smk", Common::Point(0, 0), false, false, false);
+ if ((_sceneState["GS_PUZZLELEVEL"] == 0 && comb[0] == 3 && comb[1] == 2 && comb[2] == 5 && comb[3] == 7 && comb[4] == 0 && comb[5] == 1) \
+ || (_sceneState["GS_PUZZLELEVEL"] == 1 && comb[0] == 2 && comb[1] == 2 && comb[2] == 5 && comb[3] == 7 && comb[4] == 1 && comb[5] == 6)) {
+ MVideo v("cine/file0000.smk", Common::Point(0, 0), false, false, false);
runIntro(v);
_sceneState["GS_SWITCH0"] = 1;
}
@@ -604,7 +605,7 @@ void SpiderEngine::runFileCabinet(Code *code) {
comb[i] = (comb[i] + 1) % 10;
}
- loadImage("spider/int_alof/combobg.smk", 0, 0, false, true);
+ loadImage("int_alof/combobg.smk", 0, 0, false, true);
for (int i = 0; i < 6; i++) {
drawImage(*nums[comb[i]], sel[i].left, sel[i].top, true);
}
@@ -619,7 +620,7 @@ void SpiderEngine::runFileCabinet(Code *code) {
comb[i] = comb[i] - 1;
}
- loadImage("spider/int_alof/combobg.smk", 0, 0, false, true);
+ loadImage("int_alof/combobg.smk", 0, 0, false, true);
for (int i = 0; i < 6; i++) {
drawImage(*nums[comb[i]], sel[i].left, sel[i].top, true);
}
@@ -685,7 +686,7 @@ void SpiderEngine::runLock(Code *code) {
if (act.contains(mousePos)) {
if (_sceneState["GS_PUZZLELEVEL"] == 0 && comb[0] == 4 && comb[1] == 0 && comb[2] == 3 && comb[3] == 1 && comb[4] == 2) {
_nextLevel = code->levelIfWin;
- } else if (_sceneState["GS_PUZZLELEVEL"] == 1 && comb[0] == 1 && comb[1] == 1 && comb[2] == 1 && comb[3] == 1 && comb[4] == 1) {
+ } else if (_sceneState["GS_PUZZLELEVEL"] == 1 && comb[0] == 1 && comb[1] == 3 && comb[2] == 4 && comb[3] == 2 && comb[4] == 0) {
_nextLevel = code->levelIfWin;
}
}
diff --git a/engines/hypno/spider/spider.cpp b/engines/hypno/spider/spider.cpp
index 0d033df4034..e5255f8b1be 100644
--- a/engines/hypno/spider/spider.cpp
+++ b/engines/hypno/spider/spider.cpp
@@ -264,7 +264,7 @@ void SpiderEngine::loadAssetsFullGame() {
// Transitions
Transition *after_bank = new Transition("<trans_apt_2>");
- after_bank->intros.push_back("spider/cine/blcs003.smk");
+ after_bank->intros.push_back("spider/cine/bals003s.smk");
_levels["<after_bank>"] = after_bank;
Transition *trans_apt_1 = new Transition("busint.mi_");
@@ -482,6 +482,14 @@ void SpiderEngine::loadAssetsFullGame() {
_levels["<file_cabinet>"] = file_cabinet;
loadSceneLevel("alverofh.mi_", "", prefix);
+ sc = (Scene *) _levels["alverofh.mi_"];
+
+ cl = new ChangeLevel("<tape>");
+ sc->hots[2].actions.push_back(cl);
+
+ cl = new ChangeLevel("<file_cabinet>");
+ sc->hots[3].actions.push_back(cl);
+
loadSceneLevel("alveroff.mi_", "", prefix);
sc = (Scene *) _levels["alveroff.mi_"];
More information about the Scummvm-git-logs
mailing list