Index: /trunk/nv/lua/lua_raw.hh
===================================================================
--- /trunk/nv/lua/lua_raw.hh	(revision 493)
+++ /trunk/nv/lua/lua_raw.hh	(revision 494)
@@ -55,4 +55,5 @@
 
 nv::vector<nv::uint8> nlua_tobytearray( lua_State *L, int index );
+nv::vector<nv::uint32> nlua_tou32array( lua_State *L, int index );
 
 void nlua_register( lua_State *L, const char* fname, lua_CFunction func, int index );
Index: /trunk/src/lua/lua_raw.cc
===================================================================
--- /trunk/src/lua/lua_raw.cc	(revision 493)
+++ /trunk/src/lua/lua_raw.cc	(revision 494)
@@ -274,4 +274,20 @@
 }
 
+nv::vector<nv::uint32> nlua_tou32array( lua_State *L, int index )
+{
+	index = nlua_absindex( L, index );
+	nv::vector<nv::uint32> result;
+	if ( lua_istable( L, index ) )
+	{
+		lua_pushnil( L );
+		while ( lua_next( L, index ) != 0 )
+		{
+			result.push_back( static_cast<nv::uint32>( lua_tointeger( L, -1 ) ) );
+			lua_pop( L, 1 );
+		}
+	}
+	return result;
+}
+
 void * nlua_testudata( lua_State *L, int ud, const char *tname )
 {
