private PREFAB_EXIST_INFO CheckProjectWithoutPrefab(AtlasProject project) { PREFAB_EXIST_INFO prefabInfo = PREFAB_EXIST_INFO.PREFAB_FILE_EXIST_IN_SEARCHDIR; if (null == project) { return(prefabInfo); } if (!File.Exists(project.DescribePath)) { prefabInfo = PREFAB_EXIST_INFO.PREFAB_FILE_NOT_EXIST; } else { if (!project.DescribePath.Contains(m_inputInfo.AtlasPrefabDir)) { prefabInfo = PREFAB_EXIST_INFO.PREFAB_FILE_EXIST_NOTIN_SEARCHDIR; } else { prefabInfo = PREFAB_EXIST_INFO.PREFAB_FILE_EXIST_IN_SEARCHDIR; } } return(prefabInfo); }
private CONSISTENCY_ANALYSE_ERROR_TYPE CheckProjectConsistencyInfo(AtlasProject project, out AtlasConsistencyAnalyseResult analyseResult) { CONSISTENCY_ANALYSE_ERROR_TYPE errorType = CONSISTENCY_ANALYSE_ERROR_TYPE.CONSISTENCY_ANALYSE_ERROR_NONE; analyseResult = new AtlasConsistencyAnalyseResult(); if (null == project) { return(CONSISTENCY_ANALYSE_ERROR_TYPE.CONSISTENCY_ANALYSE_ERROR_TARGETPROJECT_ERROR); } PREFAB_EXIST_INFO prefabInfo = PREFAB_EXIST_INFO.PREFAB_FILE_EXIST_IN_SEARCHDIR; prefabInfo = CheckProjectWithoutPrefab(project); if (PREFAB_EXIST_INFO.PREFAB_FILE_NOT_EXIST == prefabInfo) {//Prefab不存在 AtlasConsistencyInfo consistencyInfo = new AtlasConsistencyInfo(); consistencyInfo.ConsistencyType = ATLASCONSISTENCY_TYPE.ATLAS_UNCONSISTENT_FOR_PREFAB_NOT_EXIST; consistencyInfo.AtlasFilePath = project.Path; analyseResult.AnalyseResult = ANALYSERESULT_TYPE.ANALYSERESULT_UNCONSISTENT; analyseResult.ConsistencyInfo.Add(consistencyInfo); } else {//prefab存在 bool isSpriteConsistent = true; List <SpriteConsistencyInfo> spriteConsistencyInfoTbl = null; CheckUnConsistentSpriteInProject(project, out isSpriteConsistent, out spriteConsistencyInfoTbl); if (isSpriteConsistent) { //sprite一致 if (PREFAB_EXIST_INFO.PREFAB_FILE_EXIST_NOTIN_SEARCHDIR == prefabInfo) { //Prefab不在查找目录内 AtlasConsistencyInfo consistencyInfo = new AtlasConsistencyInfo(); consistencyInfo.ConsistencyType = ATLASCONSISTENCY_TYPE.ATLAS_CONSISTENT_WITH_PREFAB_NOTIN_SEARCHPATH_WARNING; consistencyInfo.AtlasFilePath = project.Path; analyseResult.AnalyseResult = ANALYSERESULT_TYPE.ANALYSERESULT_CONSISTENT_WITH_WARNING; analyseResult.ConsistencyInfo.Add(consistencyInfo); } else { analyseResult.AnalyseResult = ANALYSERESULT_TYPE.ANALYSERESULT_CONSISTENT; } } else {//Sprite不一致 AtlasConsistencyInfo consistencyInfo = new AtlasConsistencyInfo(); if (PREFAB_EXIST_INFO.PREFAB_FILE_EXIST_NOTIN_SEARCHDIR == prefabInfo) {//Prefab不在查找目录内 consistencyInfo.ConsistencyType = ATLASCONSISTENCY_TYPE.ATLAS_UNCONSISTENT_FOR_SPRITE_NOT_SAME_WITH_PREFAB_NOTIN_SEARCHPATH_WARNING; } else {//Prefab在查找目录内 consistencyInfo.ConsistencyType = ATLASCONSISTENCY_TYPE.ATLAS_UNCONSISTENT_FOR_SPRITE_NOT_SAME; } consistencyInfo.AtlasFilePath = project.Path; consistencyInfo.SpriteConsistencyInfoTbl = spriteConsistencyInfoTbl; analyseResult.AnalyseResult = ANALYSERESULT_TYPE.ANALYSERESULT_UNCONSISTENT; analyseResult.ConsistencyInfo.Add(consistencyInfo); } } return(errorType); }