public static string lua_tostring(IntPtr luaState, int index) { int num; IntPtr intPtr = LuaDLL.lua_tolstring(luaState, index, out num); if (!(intPtr != IntPtr.Zero)) { return(null); } string text = Marshal.PtrToStringAnsi(intPtr, num); if (text == null) { return(LuaDLL.AnsiToUnicode(intPtr, num)); } return(text); }