コード例 #1
0
        public static RMTilesetFile.eAtlasType ParseString(this RMTilesetFile.eAtlasType type, string str)
        {
            switch (str)
            {
            case RMPConstants.TilesetAtlasType.A1_ANIMATION:
                return(RMTilesetFile.eAtlasType.A1_Anim);

            case RMPConstants.TilesetAtlasType.A2_GROUND:
                return(RMTilesetFile.eAtlasType.A2_Ground);

            case RMPConstants.TilesetAtlasType.A3_BUILDINGS:
                return(RMTilesetFile.eAtlasType.A3_Building);

            case RMPConstants.TilesetAtlasType.A4_WALLS:
                return(RMTilesetFile.eAtlasType.A4_Walls);

            case RMPConstants.TilesetAtlasType.A5_NORMAL:
                return(RMTilesetFile.eAtlasType.A5_Normal);

            case RMPConstants.TilesetAtlasType.B_ATLAS:
                return(RMTilesetFile.eAtlasType.B_Atlas);

            case RMPConstants.TilesetAtlasType.C_ATLAS:
                return(RMTilesetFile.eAtlasType.C_Atlas);

            case RMPConstants.TilesetAtlasType.D_ATLAS:
                return(RMTilesetFile.eAtlasType.D_Atlas);

            case RMPConstants.TilesetAtlasType.E_ATLAS:
                return(RMTilesetFile.eAtlasType.E_Atlas);

            default:
                return(RMTilesetFile.eAtlasType.NotSpecified);
            }
        }
コード例 #2
0
        public static string ToXMLString(this RMTilesetFile.eAtlasType type)
        {
            switch (type)
            {
            case RMTilesetFile.eAtlasType.A1_Anim:
                return(RMPConstants.TilesetAtlasType.A1_ANIMATION);

            case RMTilesetFile.eAtlasType.A2_Ground:
                return(RMPConstants.TilesetAtlasType.A2_GROUND);

            case RMTilesetFile.eAtlasType.A3_Building:
                return(RMPConstants.TilesetAtlasType.A3_BUILDINGS);

            case RMTilesetFile.eAtlasType.A4_Walls:
                return(RMPConstants.TilesetAtlasType.A4_WALLS);

            case RMTilesetFile.eAtlasType.A5_Normal:
                return(RMPConstants.TilesetAtlasType.A5_NORMAL);

            case RMTilesetFile.eAtlasType.B_Atlas:
                return(RMPConstants.TilesetAtlasType.B_ATLAS);

            case RMTilesetFile.eAtlasType.C_Atlas:
                return(RMPConstants.TilesetAtlasType.C_ATLAS);

            case RMTilesetFile.eAtlasType.D_Atlas:
                return(RMPConstants.TilesetAtlasType.D_ATLAS);

            case RMTilesetFile.eAtlasType.E_Atlas:
                return(RMPConstants.TilesetAtlasType.E_ATLAS);

            default:
                return(string.Empty);
            }
        }
コード例 #3
0
        public TilesetTypeAndName(string fileName)
        {
            atlasType = RMTilesetFile.eAtlasType.NotSpecified;
            string upperCaseName = fileName.ToUpper();

            if (string.IsNullOrWhiteSpace(fileName))
            {
                internalName = null;
                Name         = null;
            }
            char[]        arrayOfChar           = upperCaseName.ToCharArray();
            StringBuilder sb                    = new StringBuilder();
            bool          hasRetrievedAtlasType = false;
            int           endOfName             = arrayOfChar.Length;

            for (int i = arrayOfChar.Length - 1; i >= 0; i--)
            {
                char workChar = arrayOfChar[i];
                if (!hasRetrievedAtlasType && workChar == '_')
                {
                    atlasType             = atlasType.ParseString(Reverse(sb.ToString()));
                    hasRetrievedAtlasType = true;
                    endOfName             = i;
                    sb = new StringBuilder();
                    continue;
                }
                sb.Append(workChar);
            }
            internalName = Reverse(sb.ToString()).ToLower();

            Name = fileName.Substring(0, endOfName);
        }