/// <summary> /// Fills the lists of element names and values for the tps file settings. /// </summary> /// <param name="values"></param> /// <param name="elementNames"></param> private void FillStruct(List <object> values, List <ItemsChoiceType2> elementNames) { elementNames.Add(ItemsChoiceType2.key); values.Add("fileFormatVersion"); elementNames.Add(ItemsChoiceType2.@int); values.Add(3); elementNames.Add(ItemsChoiceType2.key); values.Add("texturePackerVersion"); elementNames.Add(ItemsChoiceType2.@string); values.Add("4.0.1"); elementNames.Add(ItemsChoiceType2.key); values.Add("fileName"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("autoSDSettings"); elementNames.Add(ItemsChoiceType2.array); values.Add(new dataStructArray { @struct = new[] { CreateNewAtlasSettings("") } }); elementNames.Add(ItemsChoiceType2.key); values.Add("allowRotation"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("premultiplyAlpha"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("shapeDebug"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("dpi"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(72); elementNames.Add(ItemsChoiceType2.key); values.Add("dataFormat"); elementNames.Add(ItemsChoiceType2.@string); values.Add("monogame"); elementNames.Add(ItemsChoiceType2.key); values.Add("textureFileName"); elementNames.Add(ItemsChoiceType2.filename); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("flipPVR"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("pvrCompressionQuality"); elementNames.Add(ItemsChoiceType2.@enum); var enumStruct = new dataStructEnum { type = "SettingsBase::PvrCompressionQuality", Value = "PVR_QUALITY_NORMAL" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("atfCompressionData"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("mipMapMinSize"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(32768); elementNames.Add(ItemsChoiceType2.key); values.Add("etc1CompressionQuality"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::Etc1CompressionQuality", Value = "ETC1_QUALITY_LOW_PERCEPTUAL" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("dxtCompressionMode"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::DxtCompressionMode", Value = "DXT_PERCEPTUAL" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("jxrColorFormat"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::JpegXrColorMode", Value = "JXR_YUV444" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("jxrTrimFlexBits"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("jxrCompressionLevel"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("ditherType"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::DitherType", Value = "NearestNeighbour" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("backgroundColor"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("libGdx"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateLibGDXStruct()); elementNames.Add(ItemsChoiceType2.key); values.Add("shapePadding"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("jpgQuality"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(80); elementNames.Add(ItemsChoiceType2.key); values.Add("pngOptimizationLevel"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(1); elementNames.Add(ItemsChoiceType2.key); values.Add("webpQualityLevel"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(101); elementNames.Add(ItemsChoiceType2.key); values.Add("textureSubPath"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("textureFormat"); elementNames.Add(ItemsChoiceType2.@enum); values.Add(new dataStructEnum { type = "SettingsBase::TextureFormat", Value = "png" }); elementNames.Add(ItemsChoiceType2.key); values.Add("borderPadding"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("maxTextureSize"); elementNames.Add(ItemsChoiceType2.QSize); values.Add(CreateSizeStruct(2048, 2048)); elementNames.Add(ItemsChoiceType2.key); values.Add("fixedTextureSize"); elementNames.Add(ItemsChoiceType2.QSize); values.Add(CreateSizeStruct(-1, -1)); elementNames.Add(ItemsChoiceType2.key); values.Add("reduceBorderArtifacts"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("algorithmSettings"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateAlgorithmSettings()); elementNames.Add(ItemsChoiceType2.key); values.Add("andEngine"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateAndEngineStruct()); elementNames.Add(ItemsChoiceType2.key); values.Add("dataFileNames"); elementNames.Add(ItemsChoiceType2.map); values.Add(CreateMapStruct()); elementNames.Add(ItemsChoiceType2.key); values.Add("multiPack"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("forceIdenticalLayout"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("outputFormat"); elementNames.Add(ItemsChoiceType2.@enum); values.Add(new dataStructEnum { type = "SettingsBase::OutputFormat", Value = "RGBA8888" }); elementNames.Add(ItemsChoiceType2.key); values.Add("contentProtection"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(new dataStructStruct { type = "ContentProtection", ItemsElementName = new[] { ItemsChoiceType1.key, ItemsChoiceType1.@string }, Items = new object[] { "key", "" } }); elementNames.Add(ItemsChoiceType2.key); values.Add("autoAliasEnabled"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("trimSpriteNames"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("prependSmartFolderName"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("cleanTransparentPixels"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("globalSpriteSettings"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateSpriteSettings()); elementNames.Add(ItemsChoiceType2.key); values.Add("fileList"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { filename = "../", @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("ignoreFileList"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("replaceList"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("ignoredWarnings"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("commonDivisorX"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(1); elementNames.Add(ItemsChoiceType2.key); values.Add("commonDivisorY"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(1); elementNames.Add(ItemsChoiceType2.key); values.Add("packNormalMaps"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("autodetectNormalMaps"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("normalMapFilter"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("normalMapSuffix"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("normalMapSheetFileName"); elementNames.Add(ItemsChoiceType2.@filename); values.Add(""); }
/// <summary> /// Fills the lists of element names and values for the tps file settings. /// </summary> /// <param name="values"></param> /// <param name="elementNames"></param> private void FillStruct(List<object> values, List<ItemsChoiceType2> elementNames) { elementNames.Add(ItemsChoiceType2.key); values.Add("fileFormatVersion"); elementNames.Add(ItemsChoiceType2.@int); values.Add(3); elementNames.Add(ItemsChoiceType2.key); values.Add("texturePackerVersion"); elementNames.Add(ItemsChoiceType2.@string); values.Add("4.0.1"); elementNames.Add(ItemsChoiceType2.key); values.Add("fileName"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("autoSDSettings"); elementNames.Add(ItemsChoiceType2.array); values.Add(new dataStructArray {@struct = new[] {CreateNewAtlasSettings("")}}); elementNames.Add(ItemsChoiceType2.key); values.Add("allowRotation"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("premultiplyAlpha"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("shapeDebug"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("dpi"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(72); elementNames.Add(ItemsChoiceType2.key); values.Add("dataFormat"); elementNames.Add(ItemsChoiceType2.@string); values.Add("monogame"); elementNames.Add(ItemsChoiceType2.key); values.Add("textureFileName"); elementNames.Add(ItemsChoiceType2.filename); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("flipPVR"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("pvrCompressionQuality"); elementNames.Add(ItemsChoiceType2.@enum); var enumStruct = new dataStructEnum {type = "SettingsBase::PvrCompressionQuality", Value = "PVR_QUALITY_NORMAL"}; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("atfCompressionData"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("mipMapMinSize"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(32768); elementNames.Add(ItemsChoiceType2.key); values.Add("etc1CompressionQuality"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::Etc1CompressionQuality", Value = "ETC1_QUALITY_LOW_PERCEPTUAL" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("dxtCompressionMode"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::DxtCompressionMode", Value = "DXT_PERCEPTUAL" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("jxrColorFormat"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::JpegXrColorMode", Value = "JXR_YUV444" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("jxrTrimFlexBits"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("jxrCompressionLevel"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("ditherType"); elementNames.Add(ItemsChoiceType2.@enum); enumStruct = new dataStructEnum { type = "SettingsBase::DitherType", Value = "NearestNeighbour" }; values.Add(enumStruct); elementNames.Add(ItemsChoiceType2.key); values.Add("backgroundColor"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("libGdx"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateLibGDXStruct()); elementNames.Add(ItemsChoiceType2.key); values.Add("shapePadding"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("jpgQuality"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(80); elementNames.Add(ItemsChoiceType2.key); values.Add("pngOptimizationLevel"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(1); elementNames.Add(ItemsChoiceType2.key); values.Add("webpQualityLevel"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(101); elementNames.Add(ItemsChoiceType2.key); values.Add("textureSubPath"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("textureFormat"); elementNames.Add(ItemsChoiceType2.@enum); values.Add(new dataStructEnum { type = "SettingsBase::TextureFormat", Value = "png" }); elementNames.Add(ItemsChoiceType2.key); values.Add("borderPadding"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(0); elementNames.Add(ItemsChoiceType2.key); values.Add("maxTextureSize"); elementNames.Add(ItemsChoiceType2.QSize); values.Add(CreateSizeStruct(2048, 2048)); elementNames.Add(ItemsChoiceType2.key); values.Add("fixedTextureSize"); elementNames.Add(ItemsChoiceType2.QSize); values.Add(CreateSizeStruct(-1, -1)); elementNames.Add(ItemsChoiceType2.key); values.Add("reduceBorderArtifacts"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("algorithmSettings"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateAlgorithmSettings()); elementNames.Add(ItemsChoiceType2.key); values.Add("andEngine"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateAndEngineStruct()); elementNames.Add(ItemsChoiceType2.key); values.Add("dataFileNames"); elementNames.Add(ItemsChoiceType2.map); values.Add(CreateMapStruct()); elementNames.Add(ItemsChoiceType2.key); values.Add("multiPack"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("forceIdenticalLayout"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("outputFormat"); elementNames.Add(ItemsChoiceType2.@enum); values.Add(new dataStructEnum { type = "SettingsBase::OutputFormat", Value = "RGBA8888" }); elementNames.Add(ItemsChoiceType2.key); values.Add("contentProtection"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(new dataStructStruct { type = "ContentProtection", ItemsElementName = new[] { ItemsChoiceType1.key, ItemsChoiceType1.@string }, Items = new object[] { "key", "" } }); elementNames.Add(ItemsChoiceType2.key); values.Add("autoAliasEnabled"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("trimSpriteNames"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("prependSmartFolderName"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("cleanTransparentPixels"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("globalSpriteSettings"); elementNames.Add(ItemsChoiceType2.@struct); values.Add(CreateSpriteSettings()); elementNames.Add(ItemsChoiceType2.key); values.Add("fileList"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { filename = "../", @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("ignoreFileList"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("replaceList"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("ignoredWarnings"); elementNames.Add(ItemsChoiceType2.@array); values.Add(new dataStructArray { @struct = new dataStructArrayStruct[0] }); elementNames.Add(ItemsChoiceType2.key); values.Add("commonDivisorX"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(1); elementNames.Add(ItemsChoiceType2.key); values.Add("commonDivisorY"); elementNames.Add(ItemsChoiceType2.@uint); values.Add(1); elementNames.Add(ItemsChoiceType2.key); values.Add("packNormalMaps"); elementNames.Add(ItemsChoiceType2.@false); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("autodetectNormalMaps"); elementNames.Add(ItemsChoiceType2.@true); values.Add(new object()); elementNames.Add(ItemsChoiceType2.key); values.Add("normalMapFilter"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("normalMapSuffix"); elementNames.Add(ItemsChoiceType2.@string); values.Add(""); elementNames.Add(ItemsChoiceType2.key); values.Add("normalMapSheetFileName"); elementNames.Add(ItemsChoiceType2.@filename); values.Add(""); }