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

Strangerke Strangerke at scummvm.org
Thu Apr 12 07:42:35 CEST 2018


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:
cd95328b36 LILLIPUT: Use constants in sequence functions


Commit: cd95328b36183d3b25baedc75c6824398891bfed
    https://github.com/scummvm/scummvm/commit/cd95328b36183d3b25baedc75c6824398891bfed
Author: Strangerke (strangerke at scummvm.org)
Date: 2018-04-12T07:38:34+02:00

Commit Message:
LILLIPUT: Use constants in sequence functions

Changed paths:
    engines/lilliput/lilliput.cpp
    engines/lilliput/lilliput.h


diff --git a/engines/lilliput/lilliput.cpp b/engines/lilliput/lilliput.cpp
index 197d483..b245f1e 100644
--- a/engines/lilliput/lilliput.cpp
+++ b/engines/lilliput/lilliput.cpp
@@ -107,6 +107,7 @@ static const byte _basisPalette[768] = {
 	63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63, 63
 };
 
+
 LilliputEngine::LilliputEngine(OSystem *syst, const LilliputGameDescription *gd) : Engine(syst), _gameDescription(gd) {
 	_system = syst;
 	DebugMan.addDebugChannel(kDebugEngine, "Engine", "Engine debug level");
@@ -1313,11 +1314,11 @@ byte LilliputEngine::sequenceCharacterHomeIn(int index, Common::Point param1) {
 		if (target != _scriptHandler->_characterTilePos[index]) {
 			homeInChooseDirection(index);
 			_scriptHandler->_characterNextSequence[index] -= (param1.x & 0x0F);
-			return 3;
+			return kSeqNoInc | kSeqRepeat;
 		}
 
 		if (target == _characterTargetPos[index])
-			return 2;
+			return kSeqRepeat;
 	}
 
 	homeInPathFinding(index);
@@ -1329,8 +1330,7 @@ byte LilliputEngine::sequenceCharacterHomeIn(int index, Common::Point param1) {
 
 	homeInChooseDirection(index);
 	_scriptHandler->_characterNextSequence[index] -= (param1.x & 0x0F);
-	return 3;
-
+	return kSeqNoInc | kSeqRepeat;
 }
 
 void LilliputEngine::homeInPathFinding(int index) {
@@ -1544,7 +1544,7 @@ void LilliputEngine::addCharToBuf(byte character) {
 void LilliputEngine::numberToString(int param1) {
 	debugC(2, kDebugEngine, "numberToString(%d)", param1);
 
-	static const int _array18AE3[6] = {10000, 1000, 100, 10, 1};
+	static const int exp10[6] = {10000, 1000, 100, 10, 1};
 
 	int var1 = param1;
 	bool hideZeros = true;
@@ -1552,9 +1552,9 @@ void LilliputEngine::numberToString(int param1) {
 		int count = 0;
 		while (var1 >= 0) {
 			++count;
-			var1 -= _array18AE3[i];
+			var1 -= exp10[i];
 		}
-		var1 += _array18AE3[i];
+		var1 += exp10[i];
 		--count;
 
 		byte tmpVal = count + 0x30;
@@ -1574,8 +1574,8 @@ void LilliputEngine::updateCharPosSequence() {
 	int index = _numCharacters - 1;
 	byte result;
 	while (index >= 0) {
-		result = 2;
-		while (result & 2) {
+		result = kSeqRepeat;
+		while (result & kSeqRepeat) {
 			if (_scriptHandler->_characterNextSequence[index] == 16)
 				break;
 
@@ -1594,16 +1594,6 @@ void LilliputEngine::updateCharPosSequence() {
 				// x stands for the next direction, y for the poseType
 				result = sequenceSetCharacterDirection(index, var1.x, var1.y);
 				break;
-			case 2:
-			case 3:
-			case 4:
-			case 5:
-			case 6:
-			case 7:
-			case 8:
-			case 9:
-				result = 0;
-				break;
 			case 10: // Seek move target
 				result = sequenceSeekMovingCharacter(index, var1);
 				break;
@@ -1623,11 +1613,11 @@ void LilliputEngine::updateCharPosSequence() {
 				result = sequenceEnd(index);
 				break;
 			default:
-				error("updateCharPosSequence - unexpected value %d", posSeqType);
+				result = kSeqNone;
 				break;
 			}
 
-			if ((result & 1) == 0) {
+			if ((result & kSeqNoInc) == 0) {
 				++_scriptHandler->_characterNextSequence[index];
 				if (_scriptHandler->_characterNextSequence[index] == 16)
 					_scriptHandler->_characterScriptEnabled[index] = 1;
@@ -1642,26 +1632,27 @@ byte LilliputEngine::sequenceEnd(int index) {
 
 	_scriptHandler->_characterNextSequence[index] = 16;
 	_scriptHandler->_characterScriptEnabled[index] = 1;
-	return 1;
+
+	return kSeqNoInc;
 }
 
 byte LilliputEngine::sequenceRepeat(int index, Common::Point var1, int tmpVal) {
 	debugC(2, kDebugEngine, "sequenceRepeat(%d, %d - %d, %d)", index, var1.x, var1.y, tmpVal);
 
-	byte a2 = var1.y;
-	if (a2 != 0) {
-		if ((a2 & 0xF0) == 0)
-			a2 |= (a2 << 4);
+	byte counter = var1.y;
+	if (counter != 0) {
+		if ((counter & 0xF0) == 0)
+			counter |= (counter << 4);
 
-		a2 -= 16;
-		_scriptHandler->_sequenceArr[tmpVal] = Common::Point(var1.x, a2);
+		counter -= 16;
+		_scriptHandler->_sequenceArr[tmpVal] = Common::Point(var1.x, counter);
 
-		if ((a2 & 0xF0) == 0)
-			return 2;
+		if ((counter & 0xF0) == 0)
+			return kSeqRepeat;
 	}
 
 	_scriptHandler->_characterNextSequence[index] -= (var1.x & 0x0F);
-	return 3;
+	return kSeqNoInc | kSeqRepeat;
 }
 
 byte LilliputEngine::sequenceSetCharacterDirection(int index, int direction, int poseType) {
@@ -1670,14 +1661,15 @@ byte LilliputEngine::sequenceSetCharacterDirection(int index, int direction, int
 	char newDir = direction & 3;
 	_characterDirectionArray[index] = newDir;
 	setCharacterPose(index, poseType);
-	return 0;
+
+	return kSeqNone;
 }
 
 byte LilliputEngine::sequenceSetMobility(int index, Common::Point var1) {
 	debugC(2, kDebugEngine, "sequenceSetMobility(%d, %d - %d)", index, var1.x, var1.y);
 
 	_characterMobility[index] = var1.y;
-	return 2;
+	return kSeqRepeat;
 }
 
 byte LilliputEngine::sequenceSound(int index, Common::Point var1) {
@@ -1687,7 +1679,7 @@ byte LilliputEngine::sequenceSound(int index, Common::Point var1) {
 	int param1 = var1.y;
 	_soundHandler->contentFct2(param1, _scriptHandler->_viewportPos, 
 		_scriptHandler->_characterTilePos[index], Common::Point(param4x, 0));
-	return 2;
+	return kSeqRepeat;
 }
 
 byte LilliputEngine::sequenceSeekMovingCharacter(int index, Common::Point var1) {
@@ -2024,7 +2016,7 @@ byte LilliputEngine::sequenceMoveCharacter(int idx, int moveType, int poseType)
 		warning("sequenceMoveCharacter - Unexpected value %d", moveType);
 	}
 
-	return 0;
+	return kSeqNone;
 }
 
 void LilliputEngine::turnCharacter1(int index) {
diff --git a/engines/lilliput/lilliput.h b/engines/lilliput/lilliput.h
index 184bf6d..187f535 100644
--- a/engines/lilliput/lilliput.h
+++ b/engines/lilliput/lilliput.h
@@ -75,6 +75,10 @@ enum InterfaceHotspotStatus {
 	kHotspotSelected = 3
 };
 
+#define kSeqNone	0
+#define kSeqNoInc	1 << 0
+#define kSeqRepeat	1 << 1
+
 struct LilliputGameDescription;
 
 struct SmallAnim {





More information about the Scummvm-git-logs mailing list