/// <summary> /// Returns the full list of necessary files to export. /// </summary> /// <param name="projectScene"></param> /// <returns></returns> public static ArrayList GetItemsToExport(GUIProjectScene projectScene) { ArrayList list = new ArrayList(); // Collect the fonts we'll need to export foreach (GUIFont font in GUIProject.CurrentProject.Fonts) { if (font.Filename != "" && font.FontData != null) { list.Add(font); } } if (projectScene.Scene == null) { projectScene.Open(); } if (projectScene.Scene != null) { projectScene.Scene.GenerateTextureAtlasses(); list.AddRange(projectScene.Scene.TextureAtlasses); // Collect the textures we'll need to export List <TextureInfo> tmpList = new List <TextureInfo>(); foreach (TextureInfo info in projectScene.Scene.Textures) { FinalTexture finalTexture = projectScene.Scene.GetFinalTexture(info.ID); if (finalTexture.mTextureAtlas == null && !list.Contains(info)) { list.Add(info); } } // Collect the sounds we'll need to export foreach (SoundInfo info in projectScene.Scene.Sounds) { if (info.Filename != "" && !list.Contains(info.Filename)) { list.Add(info.Filename); } } // Now add the scene list.Add(projectScene); } return(list); }