コード例 #1
0
        public static string GetContainingDirectoryName(this RMGenFile.GenFileType fileType)
        {
            switch (fileType)
            {
            case RMGenFile.GenFileType.Face:
                return(DirectoryNames.Generator.FACE);

            case RMGenFile.GenFileType.SV:
                return(DirectoryNames.Generator.SV);

            case RMGenFile.GenFileType.SV_C:
                return(DirectoryNames.Generator.SV);

            case RMGenFile.GenFileType.TV:
                return(DirectoryNames.Generator.TV);

            case RMGenFile.GenFileType.TVD:
                return(DirectoryNames.Generator.TVD);

            case RMGenFile.GenFileType.TVD_C:
                return(DirectoryNames.Generator.TVD);

            case RMGenFile.GenFileType.TV_C:
                return(DirectoryNames.Generator.TV);

            case RMGenFile.GenFileType.Var:
                return(DirectoryNames.Generator.VARIATION);

            default:
                return(string.Empty);
            }
        }
コード例 #2
0
        public static string ToFilePrefix(this RMGenFile.GenFileType fileType)
        {
            switch (fileType)
            {
            case RMGenFile.GenFileType.Face:
                return(RMPConstants.GenFileNamePrefixANDSuffix.FACE);

            case RMGenFile.GenFileType.SV:
                return(RMPConstants.GenFileNamePrefixANDSuffix.SV);

            case RMGenFile.GenFileType.SV_C:
                return(RMPConstants.GenFileNamePrefixANDSuffix.SV);

            case RMGenFile.GenFileType.TV:
                return(RMPConstants.GenFileNamePrefixANDSuffix.TV);

            case RMGenFile.GenFileType.TVD:
                return(RMPConstants.GenFileNamePrefixANDSuffix.TVD);

            case RMGenFile.GenFileType.TVD_C:
                return(RMPConstants.GenFileNamePrefixANDSuffix.TVD);

            case RMGenFile.GenFileType.TV_C:
                return(RMPConstants.GenFileNamePrefixANDSuffix.TV);

            case RMGenFile.GenFileType.Var:
                return(RMPConstants.GenFileNamePrefixANDSuffix.VARIATION);

            default:
                return(string.Empty);
            }
        }
コード例 #3
0
        public static string ToParsableString(this RMGenFile.GenFileType fileType)
        {
            switch (fileType)
            {
            case RMGenFile.GenFileType.Face:
                return(RMPConstants.GenFileTypes.FACE);

            case RMGenFile.GenFileType.SV:
                return(RMPConstants.GenFileTypes.SV);

            case RMGenFile.GenFileType.SV_C:
                return(RMPConstants.GenFileTypes.SV_C);

            case RMGenFile.GenFileType.TV:
                return(RMPConstants.GenFileTypes.TV);

            case RMGenFile.GenFileType.TVD:
                return(RMPConstants.GenFileTypes.TVD);

            case RMGenFile.GenFileType.TVD_C:
                return(RMPConstants.GenFileTypes.TVD_C);

            case RMGenFile.GenFileType.TV_C:
                return(RMPConstants.GenFileTypes.TV_C);

            case RMGenFile.GenFileType.Var:
                return(RMPConstants.GenFileTypes.VARIATION);

            default:
                return(string.Empty);
            }
        }
コード例 #4
0
 public static bool IsACFile(this RMGenFile.GenFileType fileType)
 {
     if (fileType == RMGenFile.GenFileType.SV_C || fileType == RMGenFile.GenFileType.TVD_C || fileType == RMGenFile.GenFileType.TV_C)
     {
         return(true);
     }
     return(false);
 }
コード例 #5
0
            static void RetrieveGeneratorPartOnGender(string path, string rootPath, string _namespace, bool trimRootPath, out LogDataList log, ref List <RMGenPart> partsCollection, RMGenFile.GenFileType whichFilePart, RMGenPart.eGender whichGender, RMGeneratorCollection parent)
            {
                log = new LogDataList();
                log.WriteInformationLog(LoggerMessages.RMPackage.Info.RetrievedAutoData(parent.Parent.Name, path, RMCollectionType.Generator), _namespace);
                string[] listOfFiles = null;
                try
                {
                    listOfFiles = Directory.GetFiles(path, "*" + RMPConstants.GenFileNamePrefixANDSuffix.PNG);
                }
                catch (Exception ex)
                {
                    log.WriteErrorLog(LoggerMessages.RMPackage.Error.RetrieveAutoError(path, parent.Parent.Name, RMCollectionType.Generator), _namespace, ex);
                    return;
                }
                if (listOfFiles == null || listOfFiles.Length == 0)
                {
                    return;
                }
                string prefix;

                switch (whichFilePart)
                {
                case RMGenFile.GenFileType.Face:
                    prefix = RMPConstants.GenFileNamePrefixANDSuffix.FACE_LOWER + RMPConstants.GenFileNamePrefixANDSuffix.SEPARATOR;
                    break;

                case RMGenFile.GenFileType.SV:
                    prefix = RMPConstants.GenFileNamePrefixANDSuffix.SV_LOWER + RMPConstants.GenFileNamePrefixANDSuffix.SEPARATOR;
                    break;

                case RMGenFile.GenFileType.TV:
                    prefix = RMPConstants.GenFileNamePrefixANDSuffix.TV_LOWER + RMPConstants.GenFileNamePrefixANDSuffix.SEPARATOR;
                    break;

                case RMGenFile.GenFileType.TVD:
                    prefix = RMPConstants.GenFileNamePrefixANDSuffix.TVD_LOWER + RMPConstants.GenFileNamePrefixANDSuffix.SEPARATOR;
                    break;

                case RMGenFile.GenFileType.Var:
                    prefix = RMPConstants.GenFileNamePrefixANDSuffix.VARIATION + RMPConstants.GenFileNamePrefixANDSuffix.SEPARATOR;
                    break;

                default:
                    return;
                }
                for (int i = 0; i < listOfFiles.Length; ++i)
                {
                    string nonLoweredPath = listOfFiles[i];
                    listOfFiles[i] = listOfFiles[i].ToLower();
                    string fileName = Path.GetFileName(listOfFiles[i]);


                    if (fileName.Length > prefix.Length && fileName.StartsWith(prefix))
                    {
                        TempGenFileNameParsed tgfnm = null;
                        try
                        {
                            tgfnm = new TempGenFileNameParsed(fileName, prefix.Length);
                            VerifyFile(tgfnm, listOfFiles[i]);
                        }
                        catch (Exception ex)
                        {
                            log.WriteErrorLog(LoggerMessages.RMPackage.Error.InvalidGenFile(nonLoweredPath), _namespace, ex);
                            continue;
                        }
                        RMGenPart tempPart = partsCollection.GetPartByInternalPosition(tgfnm.Part, whichGender, tgfnm.Position);

                        RMGenFile newGenFile;

                        string pathToSave = (trimRootPath) ? Helper.GetRelativePath(nonLoweredPath, rootPath) : nonLoweredPath;

                        newGenFile = CreateGenFileFromTempGenFileName(tgfnm, GetProperFileType(tgfnm, whichFilePart), pathToSave);
                        if (tempPart == null)
                        {
                            tempPart = CreateNewPart(tgfnm, whichGender, parent, (partsCollection.CountPartOfType(tgfnm.Part, whichGender) + 1));
                            partsCollection.Add(tempPart);
                        }

                        newGenFile.Parent = tempPart;
                        tempPart.Files.Add(newGenFile);
                        log.WriteInformationLog(LoggerMessages.RMPackage.Info.RetrievedFile(parent.Parent.Name, nonLoweredPath, RMCollectionType.Generator), _namespace);
                    }
                }
            }
コード例 #6
0
            static void RetrieveGeneratorFileParts(string path, string rootPath, string _namespace, bool trimRootPath, out LogDataList log, ref List <RMGenPart> collection, RMGenFile.GenFileType whichFilePart, RMGeneratorCollection parent)
            {
                log = new LogDataList();
                string      appendedPath = path + "\\" + RMPConstants.LowCaseDirectoryNames.GEN_PART_FEMALE;
                LogDataList outLog       = null;

                if (Directory.Exists(appendedPath))
                {
                    RetrieveGeneratorPartOnGender(appendedPath.ToLower(), rootPath, _namespace, trimRootPath, out outLog, ref collection, whichFilePart, RMGenPart.eGender.Female, parent);
                    log.AppendLogs(outLog);
                }

                appendedPath = path + "\\" + RMPConstants.LowCaseDirectoryNames.GEN_PART_MALE;
                if (Directory.Exists(appendedPath))
                {
                    RetrieveGeneratorPartOnGender(appendedPath.ToLower(), rootPath, _namespace, trimRootPath, out outLog, ref collection, whichFilePart, RMGenPart.eGender.Male, parent);
                    log.AppendLogs(outLog);
                }
                appendedPath = path + "\\" + RMPConstants.LowCaseDirectoryNames.GEN_PART_KID;
                if (Directory.Exists(appendedPath))
                {
                    RetrieveGeneratorPartOnGender(appendedPath.ToLower(), rootPath, _namespace, trimRootPath, out outLog, ref collection, whichFilePart, RMGenPart.eGender.Kid, parent);
                    log.AppendLogs(outLog);
                }
            }
コード例 #7
0
            static RMGenFile CreateGenFileFromTempGenFileName(TempGenFileNameParsed parsedFileName, RMGenFile.GenFileType typeOfFile, string path)
            {
                RMGenFile newGenFile = new RMGenFile();

                newGenFile.BaseOrder = parsedFileName.BaseOrder;
                newGenFile.Colour    = parsedFileName.Colour;
                newGenFile.FileType  = typeOfFile;
                newGenFile.Order     = parsedFileName.Order;
                newGenFile.Path      = path;
                return(newGenFile);
            }
コード例 #8
0
 static RMGenFile.GenFileType GetProperFileType(TempGenFileNameParsed parsedFileName, RMGenFile.GenFileType mainType)
 {
     if (mainType == RMGenFile.GenFileType.Face)
     {
         return(RMGenFile.GenFileType.Face);
     }
     else if (mainType == RMGenFile.GenFileType.None)
     {
         return(RMGenFile.GenFileType.None);
     }
     else if (mainType == RMGenFile.GenFileType.Var)
     {
         return(RMGenFile.GenFileType.Var);
     }
     else if (mainType == RMGenFile.GenFileType.SV)
     {
         if (parsedFileName.IsAcFile)
         {
             return(RMGenFile.GenFileType.SV_C);
         }
         else
         {
             return(RMGenFile.GenFileType.SV);
         }
     }
     else if (mainType == RMGenFile.GenFileType.TV)
     {
         if (parsedFileName.IsAcFile)
         {
             return(RMGenFile.GenFileType.TV_C);
         }
         else
         {
             return(RMGenFile.GenFileType.TV);
         }
     }
     else if (mainType == RMGenFile.GenFileType.TVD)
     {
         if (parsedFileName.IsAcFile)
         {
             return(RMGenFile.GenFileType.TVD_C);
         }
         else
         {
             return(RMGenFile.GenFileType.TVD);
         }
     }
     return(RMGenFile.GenFileType.None);
 }