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); } }
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); } }
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); } }
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); }
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); } } }
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); } }
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); }
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); }