[Scummvm-cvs-logs] SF.net SVN: scummvm:[40634] scummvm/trunk/engines/cruise

dreammaster at users.sourceforge.net dreammaster at users.sourceforge.net
Sun May 17 08:59:19 CEST 2009


Revision: 40634
          http://scummvm.svn.sourceforge.net/scummvm/?rev=40634&view=rev
Author:   dreammaster
Date:     2009-05-17 06:59:19 +0000 (Sun, 17 May 2009)

Log Message:
-----------
Properly named the script structure offset field, and fixed an endian bug

Modified Paths:
--------------
    scummvm/trunk/engines/cruise/saveload.cpp
    scummvm/trunk/engines/cruise/script.cpp
    scummvm/trunk/engines/cruise/script.h

Modified: scummvm/trunk/engines/cruise/saveload.cpp
===================================================================
--- scummvm/trunk/engines/cruise/saveload.cpp	2009-05-17 05:14:55 UTC (rev 40633)
+++ scummvm/trunk/engines/cruise/saveload.cpp	2009-05-17 06:59:19 UTC (rev 40634)
@@ -329,7 +329,7 @@
 
 		s.syncAsUint16LE(dummyWord);
 		s.syncAsSint16LE(ptr->ccr);
-		s.syncAsSint16LE(ptr->var4);
+		s.syncAsSint16LE(ptr->scriptOffset);
 		s.syncAsUint32LE(dummyLong);
 		s.syncAsSint16LE(ptr->varA);
 		s.syncAsSint16LE(ptr->scriptNumber);

Modified: scummvm/trunk/engines/cruise/script.cpp
===================================================================
--- scummvm/trunk/engines/cruise/script.cpp	2009-05-17 05:14:55 UTC (rev 40633)
+++ scummvm/trunk/engines/cruise/script.cpp	2009-05-17 06:59:19 UTC (rev 40634)
@@ -24,6 +24,7 @@
  */
 
 #include "cruise/cruise_main.h"
+#include "common/endian.h"
 
 namespace Cruise {
 
@@ -33,20 +34,16 @@
 scriptInstanceStruct *currentScriptPtr;
 
 int8 getByteFromScript(void) {
-	int8 var = *(int8*)(currentData3DataPtr + currentScriptPtr->var4);
+	int8 var = *(int8*)(currentData3DataPtr + currentScriptPtr->scriptOffset);
+	++currentScriptPtr->scriptOffset;
 
-	currentScriptPtr->var4 = currentScriptPtr->var4 + 1;
-
 	return (var);
 }
 
 short int getShortFromScript(void) {
-	short int var = *(int16 *)(currentData3DataPtr + currentScriptPtr->var4);
+	short int var = (int16)READ_BE_UINT16(currentData3DataPtr + currentScriptPtr->scriptOffset);
+	currentScriptPtr->scriptOffset += 2;
 
-	currentScriptPtr->var4 = currentScriptPtr->var4 + 2;
-
-	flipShort(&var);
-
 	return (var);
 }
 
@@ -362,7 +359,7 @@
 }
 
 int32 opcodeType5(void) {
-	int offset = currentScriptPtr->var4;
+	int offset = currentScriptPtr->scriptOffset;
 	int short1 = getShortFromScript();
 	int newSi = short1 + offset;
 	int bitMask = currentScriptPtr->ccr;
@@ -370,37 +367,37 @@
 	switch (currentScriptOpcodeType) {
 	case 0: {
 		if (!(bitMask & 1)) {
-			currentScriptPtr->var4 = newSi;
+			currentScriptPtr->scriptOffset = newSi;
 		}
 		break;
 	}
 	case 1: {
 		if (bitMask & 1) {
-			currentScriptPtr->var4 = newSi;
+			currentScriptPtr->scriptOffset = newSi;
 		}
 		break;
 	}
 	case 2: {
 		if (bitMask & 2) {
-			currentScriptPtr->var4 = newSi;
+			currentScriptPtr->scriptOffset = newSi;
 		}
 		break;
 	}
 	case 3: {
 		if (bitMask & 3) {
-			currentScriptPtr->var4 = newSi;
+			currentScriptPtr->scriptOffset = newSi;
 		}
 		break;
 	}
 	case 4: {
 		if (bitMask & 4) {
-			currentScriptPtr->var4 = newSi;
+			currentScriptPtr->scriptOffset = newSi;
 		}
 		break;
 	}
 	case 5: {
 		if (bitMask & 5) {
-			currentScriptPtr->var4 = newSi;
+			currentScriptPtr->scriptOffset = newSi;
 		}
 		break;
 	}
@@ -408,7 +405,7 @@
 		break;	// never
 	}
 	case 7: {
-		currentScriptPtr->var4 = newSi;	//always
+		currentScriptPtr->scriptOffset = newSi;	//always
 		break;
 	}
 	}
@@ -556,7 +553,7 @@
 
 	tempPtr->varA = var_C;
 	tempPtr->nextScriptPtr = NULL;
-	tempPtr->var4 = 0;
+	tempPtr->scriptOffset = 0;
 
 	tempPtr->scriptNumber = param;
 	tempPtr->overlayNumber = overlayNumber;
@@ -626,10 +623,10 @@
 	positionInStack = 0;
 
 	do {
-		if (currentScriptPtr->var4 == 290
+		if (currentScriptPtr->scriptOffset == 290
 		        && currentScriptPtr->overlayNumber == 4
 		        && currentScriptPtr->scriptNumber == 0) {
-			currentScriptPtr->var4 = 923;
+			currentScriptPtr->scriptOffset = 923;
 		}
 		opcodeType = getByteFromScript();
 

Modified: scummvm/trunk/engines/cruise/script.h
===================================================================
--- scummvm/trunk/engines/cruise/script.h	2009-05-17 05:14:55 UTC (rev 40633)
+++ scummvm/trunk/engines/cruise/script.h	2009-05-17 06:59:19 UTC (rev 40634)
@@ -38,7 +38,7 @@
 struct scriptInstanceStruct {
 	struct scriptInstanceStruct *nextScriptPtr;
 	int16 ccr;
-	int16 var4;
+	int16 scriptOffset;
 	uint8 *var6;
 	int16 varA;
 	int16 scriptNumber;


This was sent by the SourceForge.net collaborative development platform, the world's largest Open Source development site.




More information about the Scummvm-git-logs mailing list