[Scummvm-git-logs] scummvm master -> 3fff0fd1871aef712b22077def03d4d50d3aec12

neuromancer noreply at scummvm.org
Sat Jun 18 16:54:07 UTC 2022


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:
c5710b585a HYPNO: highlight all territories during flashback mode in boyz
3fff0fd187 HYPNO: implemented original exit menu in boyz


Commit: c5710b585aa26203251b33ec2ee1ee562b3947e9
    https://github.com/scummvm/scummvm/commit/c5710b585aa26203251b33ec2ee1ee562b3947e9
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-06-18T18:47:35+02:00

Commit Message:
HYPNO: highlight all territories during flashback mode in boyz

Changed paths:
    engines/hypno/boyz/boyz.cpp


diff --git a/engines/hypno/boyz/boyz.cpp b/engines/hypno/boyz/boyz.cpp
index 8eb55ed077c..60c507889d3 100644
--- a/engines/hypno/boyz/boyz.cpp
+++ b/engines/hypno/boyz/boyz.cpp
@@ -485,14 +485,29 @@ void BoyzEngine::loadAssets() {
 
 		cl = new ChangeLevel("<main_menu>");
 		sc->hots[1].actions.push_back(cl);
+
+		hl = new Highlight("GS_SEQ_19");
+		sc->hots[2].actions.push_back(hl);
 		cl = new ChangeLevel("<select_t1>");
 		sc->hots[2].actions.push_back(cl);
+
+		hl = new Highlight("GS_SEQ_21");
+		sc->hots[3].actions.push_back(hl);
 		cl = new ChangeLevel("<select_t2>");
 		sc->hots[3].actions.push_back(cl);
+
+		hl = new Highlight("GS_SEQ_31");
+		sc->hots[4].actions.push_back(hl);
 		cl = new ChangeLevel("<select_t3>");
 		sc->hots[4].actions.push_back(cl);
+
+		hl = new Highlight("GS_SEQ_41");
+		sc->hots[5].actions.push_back(hl);
 		cl = new ChangeLevel("<select_t4>");
 		sc->hots[5].actions.push_back(cl);
+
+		hl = new Highlight("GS_SEQ_51");
+		sc->hots[6].actions.push_back(hl);
 		cl = new ChangeLevel("<select_t5>");
 		sc->hots[6].actions.push_back(cl);
 	}


Commit: 3fff0fd1871aef712b22077def03d4d50d3aec12
    https://github.com/scummvm/scummvm/commit/3fff0fd1871aef712b22077def03d4d50d3aec12
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-06-18T18:47:35+02:00

Commit Message:
HYPNO: implemented original exit menu in boyz

Changed paths:
    engines/hypno/boyz/hard.cpp
    engines/hypno/hypno.h


diff --git a/engines/hypno/boyz/hard.cpp b/engines/hypno/boyz/hard.cpp
index 37bb2ff335b..af12de65a68 100644
--- a/engines/hypno/boyz/hard.cpp
+++ b/engines/hypno/boyz/hard.cpp
@@ -85,7 +85,12 @@ void BoyzEngine::runMainMenu(Code *code) {
 					_name.deleteLastChar();
 				else if (event.kbd.keycode == Common::KEYCODE_RETURN && !_name.empty()) {
 					cont = false;
+				} else if (event.kbd.keycode == Common::KEYCODE_ESCAPE) {
+					if (runExitMenu())
+						quitGame();
+					disableCursor();
 				}
+
 				else if (Common::isAlpha(event.kbd.keycode)) {
 					playSound("sound/m_choice.raw", 1);
 					_name = _name + char(event.kbd.keycode - 32);
@@ -113,6 +118,9 @@ void BoyzEngine::runMainMenu(Code *code) {
 	menu->free();
 	delete menu;
 
+	if (shouldQuit())
+		return;
+
 	_name.toLowercase();
 	bool found = loadProfile(_name);
 	if (!found) {
@@ -127,6 +135,64 @@ void BoyzEngine::runMainMenu(Code *code) {
 
 }
 
+bool BoyzEngine::runExitMenu() {
+	changeCursor("crosshair");
+	bool quit = false;
+	Common::Event event;
+	byte *palette;
+	Graphics::Surface *menu = decodeFrame("preload/mainmenu.smk", 8, &palette);
+	loadPalette(palette, 0, 256);
+	drawImage(*menu, 0, 0, false);
+	Common::Rect yesBox(142, 87, 179, 102);
+	Common::Rect noBox(142, 104, 179, 119);
+	bool cont = true;
+	while (!shouldQuit() && cont) {
+		while (g_system->getEventManager()->pollEvent(event)) {
+			Common::Point mousePos = g_system->getEventManager()->getMousePos();
+			// Events
+			switch (event.type) {
+
+			case Common::EVENT_QUIT:
+			case Common::EVENT_RETURN_TO_LAUNCHER:
+				break;
+
+			case Common::EVENT_KEYDOWN:
+				if (event.kbd.keycode == Common::KEYCODE_y) {
+					quit = true;
+					cont = false;
+
+				} else if (event.kbd.keycode == Common::KEYCODE_n) {
+					quit = false;
+					cont = false;
+					break;
+				}
+			break;
+
+			case Common::EVENT_LBUTTONDOWN:
+				if (yesBox.contains(mousePos)) {
+					quit = true;
+					cont = false;
+					break;
+				} else if (noBox.contains(mousePos)) {
+					quit = false;
+					cont = false;
+					break;
+				}
+			break;
+
+			default:
+				break;
+			}
+		}
+
+		drawScreen();
+		g_system->delayMillis(10);
+	}
+	menu->free();
+	delete menu;
+	return quit;
+}
+
 void BoyzEngine::runDifficultyMenu(Code *code) {
 	changeCursor("crosshair");
 	_difficulty.clear();
diff --git a/engines/hypno/hypno.h b/engines/hypno/hypno.h
index a0527f135db..2ab11cac84c 100644
--- a/engines/hypno/hypno.h
+++ b/engines/hypno/hypno.h
@@ -590,6 +590,7 @@ public:
 	char selectDirection();
 
 	void runMainMenu(Code *code);
+	bool runExitMenu();
 	void runRetryMenu(Code *code);
 	void runCheckC3(Code *code);
 	void runCheckHo(Code *code);




More information about the Scummvm-git-logs mailing list