[Scummvm-cvs-logs] CVS: residual lua.cpp,1.58,1.59

Joost Peters joostp at users.sourceforge.net
Sun Mar 28 07:15:02 CEST 2004


Update of /cvsroot/scummvm/residual
In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv31345

Modified Files:
	lua.cpp 
Log Message:
Some more endian fixes, Manny can walk around now (although a bit buggy)



Index: lua.cpp
===================================================================
RCS file: /cvsroot/scummvm/residual/lua.cpp,v
retrieving revision 1.58
retrieving revision 1.59
diff -u -d -r1.58 -r1.59
--- lua.cpp	26 Mar 2004 08:44:41 -0000	1.58
+++ lua.cpp	28 Mar 2004 15:03:27 -0000	1.59
@@ -348,6 +348,9 @@
 	float x = luaL_check_number(2);
 	float y = luaL_check_number(3);
 	float z = luaL_check_number(4);
+	x = get_float((const char *)&x);
+	y = get_float((const char *)&y);
+	z = get_float((const char *)&z);
 	act->setPos(Vector3d(x, y, z));
 }
 
@@ -364,6 +367,9 @@
 	float pitch = luaL_check_number(2);
 	float yaw = luaL_check_number(3);
 	float roll = luaL_check_number(4);
+	pitch = get_float((const char *)&pitch);
+	yaw = get_float((const char *)&yaw);
+	roll = get_float((const char *)&roll);
 	if (getbool(5))
 		act->turnTo(pitch, yaw, roll);
 	else
@@ -407,6 +413,7 @@
 static void SetActorWalkRate() {
 	Actor *act = check_actor(1);
 	float rate = luaL_check_number(2);
+	rate = get_float((const char *)&rate);
 	act->setWalkRate(rate);
 }
 
@@ -439,6 +446,12 @@
 	double x = luaL_check_number(2);
 	double y = luaL_check_number(3);
 	double z = luaL_check_number(4);
+	#ifdef SYSTEM_BIG_ENDIAN
+	//is this okay? treating the double as a float
+	x = get_float((const char *)&x);
+	y = get_float((const char *)&y);
+	z = get_float((const char *)&z);
+	#endif	
 	act->walkTo(Vector3d(x, y, z));
 }
 





More information about the Scummvm-git-logs mailing list