ResPathUtil.cs 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382
  1. using cfg.GfgCfg;
  2. using ET;
  3. using YooAsset;
  4. namespace GFGGame
  5. {
  6. public class ResPathUtil
  7. {
  8. public const string FONT_DIR_PATH = "Assets/ResIn/Font";
  9. public static readonly string UI_DIR_PATH = "Assets/ResIn/UI";
  10. public static readonly string UUI_DIR_PATH = "Assets/ResIn/UUI";
  11. public static readonly string PREFAB_DIR_PATH = "Assets/ResIn/Prefab";
  12. public static readonly string MATERIAL_DIR_PATH = "Assets/ResIn/Material";
  13. public static readonly string LoginRes_DIR_PATH = "Assets/ResIn/LoginRes";
  14. public static readonly string TEXTURE_FIGHT_DIR_PATH = "Assets/ResIn/Fight";
  15. public static readonly string CONFIG_DIR_PATH = "Assets/Game/CSShare/Sqlite";
  16. public const string RES_ROOT_DIR_PATH = "Assets/Res";
  17. public static readonly string MUSIC_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Music";
  18. public static readonly string SOUND_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Sound";
  19. public static readonly string Voice_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Voice";
  20. public static readonly string VIDEO_DIR_PATH = $"{RES_ROOT_DIR_PATH}/video";
  21. public static readonly string TEXTURE_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Texture";
  22. public static readonly string TEXTURE_DRESSUP_DIR_PATH = $"{TEXTURE_DIR_PATH}/DressUp";
  23. public static readonly string TEXTURE_SCENEBG_DIR_PATH = $"{TEXTURE_DIR_PATH}/SceneBg";
  24. public static readonly string TEXTURE_BGIMG_DIR_PATH = $"{TEXTURE_DIR_PATH}/BgImg";
  25. public static readonly string ANIMATION_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Animation";
  26. public static readonly string EFFECT_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Effect";
  27. public static readonly string Material_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Material";
  28. public static readonly string Shader_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Shader";
  29. public static readonly string Model_DIR_PATH = $"{RES_ROOT_DIR_PATH}/model";
  30. public static readonly string STUDIO_FILING_DIR_PATH = $"{RES_ROOT_DIR_PATH}/Texture/Studios/CYJD/";
  31. public static readonly string MINIGAME_DIR_PATH = $"{TEXTURE_DIR_PATH}/MiniGame/";
  32. public static readonly string LUCKY_BOX_TITLE_PATH = $"{TEXTURE_DIR_PATH}/LuckyBoxTitleImg/";
  33. public static readonly string SQLITE_FILE_PATH = CONFIG_DIR_PATH + "/" + LauncherConfig.SQL_FILE_NAME;
  34. public static string GetUIPackagePath(string res)
  35. {
  36. return $"{UI_DIR_PATH}/{res}/{res}";
  37. }
  38. public static string GetUUIPrefabPath(string res)
  39. {
  40. return $"{UUI_DIR_PATH}/{res}.prefab";
  41. }
  42. public static string GetScorePath(int score)
  43. {
  44. return GetCommonGameResPath("kp_sx_" + score);
  45. }
  46. public static string GetCommonGameResPath(string res)
  47. {
  48. return "ui://CommonGame/" + res;
  49. }
  50. //===================================↑↑↑UI路径↑↑↑================================
  51. public static string GetIconPath(string res, string extName)
  52. {
  53. if (res.IndexOf("kp_") == 0)
  54. {
  55. return GetCardIconPath(res);
  56. }
  57. return $"{TEXTURE_DIR_PATH}/Icon/{res}.{extName}";
  58. }
  59. public static string GetIconPath(ItemCfg itemCfg)
  60. {
  61. return GetIconPath(itemCfg.Res, ItemUtil.GetItemResExt(itemCfg.ItemType, itemCfg.SubType, true));
  62. }
  63. public static string GetBgImgPath(string res, string extName = "png")
  64. {
  65. return $"{TEXTURE_BGIMG_DIR_PATH}/{res}.{extName}";
  66. }
  67. public static string GetFightBgImgPath(string res, string extName = "png")
  68. {
  69. return $"{TEXTURE_FIGHT_DIR_PATH}/{res}.{extName}";
  70. }
  71. public static string GetSceneBgPath(string res, string extName = "jpg")
  72. {
  73. return $"{TEXTURE_SCENEBG_DIR_PATH}/{res}.{extName}";
  74. }
  75. public static string GetDressUpLayerSpriteResPath(ItemCfg itemCfg, int layerId)
  76. {
  77. string res = GetDressUpLayerResName(itemCfg, layerId);
  78. if (itemCfg.SubType == ConstDressUpItemType.BEI_JING)
  79. {
  80. return GetSceneBgPath(res);
  81. }
  82. return GetDressUpPath(res);
  83. }
  84. public static string GetDressUpPath(string res, string extName = "png")
  85. {
  86. return $"{TEXTURE_DRESSUP_DIR_PATH}/{res}.{extName}";
  87. }
  88. public static string GetNpcPicSPath(string res, string extName = "png")
  89. {
  90. return $"{TEXTURE_DIR_PATH}/Npc/PicS/{res}.{extName}";
  91. }
  92. public static string GetNpcPicFPath(string res, string extName = "png")
  93. {
  94. return $"{TEXTURE_DIR_PATH}/Npc/PicF/{res}.{extName}";
  95. }
  96. public static string GetNpcPicFacePath(string res, string extName = "png")
  97. {
  98. return $"{TEXTURE_DIR_PATH}/Npc/Face/{res}.{extName}";
  99. }
  100. public static string GetPhotographBorderPath(string res, string extName = "png")
  101. {
  102. return $"{TEXTURE_DIR_PATH}/Photograph/border/{res}.{extName}";
  103. }
  104. public static string GetFieldGuideIconPath(string res, string extName = "png")
  105. {
  106. return $"{TEXTURE_DIR_PATH}/FieldGuide/SuitIcon/{res}.{extName}";
  107. }
  108. public static string GetChapterGuideIconPath(string res, string extName = "png")
  109. {
  110. return $"{TEXTURE_DIR_PATH}/FieldGuide/ChapterIcon/{res}.{extName}";
  111. }
  112. public static string GetNpcHeadPath(string res, string extName = "png")
  113. {
  114. return $"{TEXTURE_DIR_PATH}/Npc/Head/{res}.{extName}";
  115. }
  116. public static string GetCardPath(string res, string extName = "jpg")
  117. {
  118. return $"{TEXTURE_DIR_PATH}/Card/Bg/{res}.{extName}";
  119. }
  120. public static string GetCardIconPath(string res, string extName = "jpg")
  121. {
  122. return $"{TEXTURE_DIR_PATH}/Card/Card/{res}.{extName}";
  123. }
  124. public static string GetCardSkillPath(string res, string extName = "png")
  125. {
  126. return $"{TEXTURE_DIR_PATH}/Card/Skill/{res}.{extName}";
  127. }
  128. public static string GetCardSoundPath(string res, string extName = "mp3")
  129. {
  130. return $"{SOUND_DIR_PATH}/Card/{res}.{extName}";
  131. }
  132. public static string GetVoicePath(string res, string extName = "wav")
  133. {
  134. return $"{Voice_DIR_PATH}/{res}.{extName}";
  135. }
  136. public static string GetVideoPath(string res, string extName = "mp4")
  137. {
  138. return $"{VIDEO_DIR_PATH}/{res}.{extName}";
  139. }
  140. public static string GetMusicPath(string res, string extName = "mp3")
  141. {
  142. return $"{MUSIC_DIR_PATH}/{res}.{extName}";
  143. }
  144. public static string GetFontPath1(string res, string extName = "TTF")
  145. {
  146. return $"{FONT_DIR_PATH}/1/{res}.{extName}";
  147. }
  148. public static string GetFontPath2(string res, string extName = "TTF")
  149. {
  150. return $"{FONT_DIR_PATH}/2/{res}.{extName}";
  151. }
  152. public static string GetFontPath3(string res, string extName = "TTF")
  153. {
  154. return $"{FONT_DIR_PATH}/3/{res}.{extName}";
  155. }
  156. public static string GetFontPath4(string res, string extName = "TTF")
  157. {
  158. return $"{FONT_DIR_PATH}/4/{res}.{extName}";
  159. }
  160. public static string GetFontPath5(string res, string extName = "TTF")
  161. {
  162. return $"{FONT_DIR_PATH}/5/{res}.{extName}";
  163. }
  164. public static string GetPrefabPath(string res, string extName = "prefab")
  165. {
  166. return $"{PREFAB_DIR_PATH}/{res}.{extName}";
  167. }
  168. public static string GetMaterialPath(string res, string extName = "mat")
  169. {
  170. return $"{MATERIAL_DIR_PATH}/{res}.{extName}";
  171. }
  172. public static string GetLoginResPath(string res, string extName = "prefab")
  173. {
  174. return $"{LoginRes_DIR_PATH}/{res}.{extName}";
  175. }
  176. public static string GetDressUpAnimationDirPath(string res)
  177. {
  178. return $"{ANIMATION_DIR_PATH}/DressUp/{res}";
  179. }
  180. public static string GetDressUpLayerAnimationResPath(ItemCfg itemCfg, int layerId)
  181. {
  182. string res = GetDressUpLayerResName(itemCfg, layerId);
  183. return GetDressUpAnimationPath(res);
  184. }
  185. public static string GetDressUpAnimationPath(string res, string extName = "prefab")
  186. {
  187. return $"{GetDressUpAnimationDirPath(res)}/{res}.{extName}";
  188. }
  189. public static bool CheckDressUpAnimationResExist(string res, string extName = "prefab")
  190. {
  191. if (string.IsNullOrEmpty(res))
  192. {
  193. return false;
  194. }
  195. string resPath = ResPathUtil.GetDressUpAnimationPath(res, extName);
  196. return YooAssets.CheckResExist(resPath);
  197. }
  198. public static string GetDressUpLayerEffectResPath(ItemCfg itemCfg, int layerId, bool inAniDir)
  199. {
  200. if (DressUpMenuItemCfg1Array.Instance.CheckIsSceneType(itemCfg.Id))
  201. {
  202. //场景类型的物品特效都不分动画和静态
  203. inAniDir = false;
  204. }
  205. string res = GetDressUpLayerResName(itemCfg, layerId);
  206. return GetDressUpEffectPath(res, inAniDir);
  207. }
  208. public static string GetDressUpEffectDirPath(string res)
  209. {
  210. return $"{EFFECT_DIR_PATH}/DressUp/{res}";
  211. }
  212. public static string GetDressUpEffectPath(string res, bool inAniDir, string extName = "prefab")
  213. {
  214. if (inAniDir)
  215. {
  216. return $"{GetDressUpEffectDirPath(res)}/{res}_2.{extName}";
  217. }
  218. return $"{GetDressUpEffectDirPath(res)}/{res}.{extName}";
  219. }
  220. public static string GetViewEffectPath(string uiName, string resName, string extName = "prefab")
  221. {
  222. return $"{EFFECT_DIR_PATH}/UI/{uiName}/{resName}.{extName}";
  223. }
  224. public static string GetCardAnimationPath(string res, string extName = "prefab")
  225. {
  226. return $"{ANIMATION_DIR_PATH}/Card/{res}/{res}.{extName}";
  227. }
  228. public static string GetActivityPath(string res, string extName = "png")
  229. {
  230. return $"{TEXTURE_DIR_PATH}/Activity/Activity/{res}.{extName}";
  231. }
  232. public static string GetActivityShow1Path(string res, string extName = "jpg")
  233. {
  234. return $"{TEXTURE_DIR_PATH}/Activity/Show1/{res}.{extName}";
  235. }
  236. public static string GetActivityShow2Path(string res, string extName = "jpg")
  237. {
  238. return $"{TEXTURE_DIR_PATH}/Activity/Show1/{res}.{extName}";
  239. }
  240. public static string GetTravelBgPath(string res, string extName = "png")
  241. {
  242. return $"{TEXTURE_DIR_PATH}/Travel/Bg/{res}.{extName}";
  243. }
  244. public static string GetTravelRolePath(string res, string extName = "png")
  245. {
  246. return $"{TEXTURE_DIR_PATH}/Travel/Role/{res}.{extName}";
  247. }
  248. public static string GetHeadPath(string res, string extName = "png")
  249. {
  250. return $"{TEXTURE_DIR_PATH}/Head/Head/{res}.{extName}";
  251. }
  252. public static string GetHeadBorderPath(string res, string extName = "png")
  253. {
  254. if (string.IsNullOrEmpty(res)) return "";
  255. return $"{TEXTURE_DIR_PATH}/Head/HeadBorder/{res}.{extName}";
  256. }
  257. public static string GetShaderPath(string res)
  258. {
  259. return $"{Shader_DIR_PATH}/{res}.shader";
  260. }
  261. public static string GetLeagueIconPath(string res, string extName = "png")
  262. {
  263. return $"{TEXTURE_DIR_PATH}/LeagueIcon/{res}.{extName}";
  264. }
  265. public static string GetDressUpLayerResName(ItemCfg itemCfg, int layerId)
  266. {
  267. string res = itemCfg.Res;
  268. switch (layerId)
  269. {
  270. case 1:
  271. res = itemCfg.ResLayer1 == "n" ? res : string.Format("{0}_{1}", res, itemCfg.ResLayer1);
  272. break;
  273. case 2:
  274. res = itemCfg.ResLayer2 == "n" ? res : string.Format("{0}_{1}", res, itemCfg.ResLayer2);
  275. break;
  276. case 3:
  277. res = itemCfg.ResLayer3 == "n" ? res : string.Format("{0}_{1}", res, itemCfg.ResLayer3);
  278. break;
  279. }
  280. return res;
  281. }
  282. public static string GetStudioChapterPicPath(string res, string extName = "png")
  283. {
  284. return $"{STUDIO_FILING_DIR_PATH}{"dangan_"}{res}.{extName}";
  285. }
  286. public static string GetStudioFilingPicPath(string res, string extName = "png")
  287. {
  288. return $"{STUDIO_FILING_DIR_PATH}{res}.{extName}";
  289. }
  290. public static string GetStoryDialogCGPath(string dir, string res, string extName = "prefab")
  291. {
  292. return $"{ANIMATION_DIR_PATH}/{dir}/{res}.{extName}";
  293. }
  294. public static string GetMiniGamePicPath(string res, string dir = null, string extName = "png")
  295. {
  296. return $"{MINIGAME_DIR_PATH}{dir}/{res}.{extName}";
  297. }
  298. public static string GetHUARONGDAOPicPath(string res, string extName = "png")
  299. {
  300. return $"{MINIGAME_DIR_PATH}HRDGame/{res}.{extName}";
  301. }
  302. public static string GetLuckyBoxTitlePath(string res, string extName = "png")
  303. {
  304. return $"{LUCKY_BOX_TITLE_PATH}{res}.{extName}";
  305. }
  306. public static string GetEmojiResPath(string dir, string res, string extName = "prefab")
  307. {
  308. return $"{ANIMATION_DIR_PATH}/{dir}/{res}.{extName}";
  309. }
  310. }
  311. }