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

neuromancer noreply at scummvm.org
Fri Apr 22 21:24:02 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:
e2dfb38915 HYPNO: complete path in level c40 in wet
3a01a16e12 HYPNO: improved player rendering in level c50 in wet


Commit: e2dfb389159af179518dca078428890ce0d4e5ff
    https://github.com/scummvm/scummvm/commit/e2dfb389159af179518dca078428890ce0d4e5ff
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-04-22T20:28:19+02:00

Commit Message:
HYPNO: complete path in level c40 in wet

Changed paths:
    engines/hypno/wet/arcade.cpp


diff --git a/engines/hypno/wet/arcade.cpp b/engines/hypno/wet/arcade.cpp
index 547c3e7274f..a37d4632876 100644
--- a/engines/hypno/wet/arcade.cpp
+++ b/engines/hypno/wet/arcade.cpp
@@ -37,24 +37,44 @@ void WetEngine::initSegment(ArcadeShooting *arc) {
 		_segmentShootSequenceMax = 7;
 	} else if (_arcadeMode == "Y4") {
 		_c40SegmentNext.clear();
-		_c40SegmentNext.push_back(2);
-		_c40SegmentPath.push_back(3);
 
-		_c40SegmentNext.push_back(2);
-		_c40SegmentPath.push_back(5);
+		_c40SegmentNext.push_back(2);  // Road fork (down)
+		_c40SegmentPath.push_back(3);  // Go straight
 
-		_c40SegmentNext.push_back(6);
-		_c40SegmentPath.push_back(8);
+		_c40SegmentNext.push_back(9);  // Tunnel entry
+		_c40SegmentPath.push_back(9);  // Go straight
+		_c40SegmentNext.push_back(1);  // Tunnel section
+		_c40SegmentPath.push_back(11); // Tunnel exit
 
-		_c40SegmentNext.push_back(15);
-		_c40SegmentPath.push_back(16);
+		_c40SegmentNext.push_back(2);  // Road fork
+		_c40SegmentPath.push_back(5);  // Turn left
+
+		_c40SegmentNext.push_back(6);  // Ramp
+		_c40SegmentPath.push_back(8);  // Take ramp
+
+		_c40SegmentNext.push_back(15);  // Road fork (up)
+		_c40SegmentPath.push_back(18);  // Take right
+
+		_c40SegmentNext.push_back(22);  // Tunnel entry
+		_c40SegmentPath.push_back(22);  // Go straight
+		_c40SegmentNext.push_back(14);  // Tunnel section
+		_c40SegmentPath.push_back(24);  // Tunnel exit
+
+		_c40SegmentNext.push_back(15);  // Road fork (up)
+		_c40SegmentPath.push_back(17);  // Take left
+
+		_c40SegmentNext.push_back(19);  // Ramp
+		_c40SegmentPath.push_back(21);  // Take ramp
+
+		_c40SegmentNext.push_back(2);  // Road fork (down)
+		_c40SegmentPath.push_back(3);  // Go straight
 
 		_c40SegmentNext.push_back(26);
 		_c40SegmentIdx = 0;
 		_c40lastTurn = -1;
 
 		_segmentShootSequenceOffset = 0;
-		_segmentShootSequenceMax = 3;
+		_segmentShootSequenceMax = 5;
 	} else if (_arcadeMode == "Y5") {
 		_c50LeftTurns = 0;
 		_c50RigthTurns = 0;
@@ -169,10 +189,10 @@ void WetEngine::findNextSegment(ArcadeShooting *arc) {
 			else
 				_segmentIdx = _segmentIdx + 1;
 
-		} else if (segments[_segmentIdx].type == 'a') {
-			_segmentIdx = 1;
+		/*} else if (segments[_segmentIdx].type == 'a') {
+			_segmentIdx = 1;*/
 		} else if (segments[_segmentIdx].type == 's') {
-			_segmentIdx = 11;
+			_segmentIdx = _segmentIdx + 10; // _segmentIdx = 11;
 		} else {
 
 			// Objective checking
@@ -197,15 +217,29 @@ void WetEngine::findNextSegment(ArcadeShooting *arc) {
 					_segmentShootSequenceOffset = 8;
 					_segmentShootSequenceMax = 7;
 				} else if (_arcadeMode == "Y4") {
-					_segmentOffset = 13;
-					_segmentShootSequenceOffset = 1; // TODO
-					_segmentShootSequenceMax = 1;    // TODO
+					if (_segmentOffset == 0) {
+						_segmentOffset = 13;
+						_segmentShootSequenceOffset = 10; // TODO
+						_segmentShootSequenceMax = 5;    // TODO
+					} else {
+						_segmentOffset = 0;
+						_segmentShootSequenceOffset = 0;
+						_segmentShootSequenceMax = 5;
+					}
 				} else
 					error("Invalid segment type for mode: %s at the end of segment %x", _arcadeMode.c_str(), segments[_segmentIdx].type);
 			} else if (segments[_segmentIdx].type == 0xbb) {
 				_segmentOffset = 0;
 				_segmentShootSequenceOffset = 0;
 				_segmentShootSequenceMax = 7;
+			} else if (segments[_segmentIdx].type == 0x61) {
+				_segmentOffset = _segmentOffset + 1; // _segmentOffset = 1;
+				_segmentShootSequenceOffset = 6;
+				_segmentShootSequenceMax = 4;
+			} else if (segments[_segmentIdx].type == 0x63) {
+				_segmentOffset = _segmentOffset - 1; // _segmentOffset = 0;
+				//_segmentShootSequenceOffset = 0; // TODO
+				//_segmentShootSequenceMax = 7; // TODO
 			}
 
 			if (_arcadeMode == "Y4") {


Commit: 3a01a16e12916ec5e40f5e7f52456ee1aba3959d
    https://github.com/scummvm/scummvm/commit/3a01a16e12916ec5e40f5e7f52456ee1aba3959d
Author: neuromancer (gustavo.grieco at gmail.com)
Date: 2022-04-22T23:24:22+02:00

Commit Message:
HYPNO: improved player rendering in level c50 in wet

Changed paths:
    engines/hypno/wet/arcade.cpp


diff --git a/engines/hypno/wet/arcade.cpp b/engines/hypno/wet/arcade.cpp
index a37d4632876..88850c2f598 100644
--- a/engines/hypno/wet/arcade.cpp
+++ b/engines/hypno/wet/arcade.cpp
@@ -710,9 +710,11 @@ void WetEngine::drawPlayer() {
 		_playerFrameIdx = _playerFrameStart;
 	}
 
-	if (_arcadeMode == "Y5")
-		_playerFrameIdx = 1;
-	else if (_arcadeMode == "Y4") {
+	if (_arcadeMode == "Y5") {
+		int x = mousePos.x / (_screenW / 3);
+		int y = mousePos.y / (_screenH / 3);
+		_playerFrameIdx = 2 * (x + 3*y) + 1;
+	} else if (_arcadeMode == "Y4") {
 		if (mousePos.x <= 25)
 			_playerFrameIdx = 0;
 		else if (mousePos.x <= 50)




More information about the Scummvm-git-logs mailing list