ResPathUtil.cs 13 KB

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