[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