/// <summary>
        /// 上書き設定の生成
        /// </summary>
        /// <param name="settings"></param>
        /// <returns></returns>
        private static OverrideSettings CreateOverrideSettings(NodeReader settings)
        {
            OverrideSettings overrideSettings = new OverrideSettings();

            {
                var fps        = settings.ChildOrNull("fps");
                var frameCount = settings.ChildOrNull("frameCount");
                var sortMode   = settings.ChildOrNull("sortMode");
                var pivot      = settings.ChildOrNull("pivot");

                overrideSettings.fps        = fps != null ? (int?)fps.AtInteger() : null;
                overrideSettings.frameCount = frameCount != null ? (int?)frameCount.AtInteger() : null;
                overrideSettings.sortMode   = sortMode != null ? (SortMode?)SortModeOpeartor.FromString(sortMode.AtText()) : null;
                if (pivot != null)
                {
                    float[] pivots = pivot.AtFloats(' ');
                    overrideSettings.pivotX = pivots[0];
                    overrideSettings.pivotY = pivots[1];
                }
                else
                {
                    overrideSettings.pivotX = null;
                    overrideSettings.pivotY = null;
                }
            }
            return(overrideSettings);
        }
Esempio n. 2
0
        /// <summary>
        /// インポート
        /// </summary>
        /// <param name="fileName"></param>
        public Information Import(string fileName)
        {
            var xml = new XmlDocument();

            xml.Load(fileName);

            // 各種データを取得
            var    animeSettings = NodeReader.findFirst(xml, "SpriteStudioProject/animeSettings");
            int    fps           = animeSettings.AtInteger("fps");
            int    frameCount    = animeSettings.AtInteger("frameCount");
            string sortMode      = animeSettings.AtText("sortMode");

            float[] pivot = animeSettings.AtFloats("pivot", ' ');

            var cellMaps     = NodeReader.findFirst(xml, "SpriteStudioProject/cellmapNames");
            var cellMapNames = cellMaps.Children("value").AtText();

            var animePacks     = NodeReader.findFirst(xml, "SpriteStudioProject/animepackNames");
            var animePackNames = animePacks.Children("value").AtText();

            return(new Information()
            {
                fps = fps,
                frameCount = frameCount,
                sortMode = SortModeOpeartor.FromString(sortMode),
                pivotX = pivot[0],
                pivotY = pivot[1],
                cellMaps = cellMapNames,
                animePacks = animePackNames,
            });
        }