GameResMgr.ts 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106
  1. // const ResPath = [
  2. // {
  3. // bg:[
  4. // "Theme/Theme1/BG0/BG1-hd.pvr.ccz/spriteFrame",
  5. // "Theme/Theme1/BG0/BG2-hd.pvr.ccz/spriteFrame",
  6. // ],
  7. // monster:[
  8. // "Theme/Theme1/Items/Monsters01-hd",
  9. // "Theme/Theme1/Items/Monsters02-hd",
  10. // ],
  11. // obs:[
  12. // "Theme/Theme1/Items/Object01-hd",
  13. // "Theme/Theme1/Items/Object02-hd",
  14. // ],
  15. // pathImg:"Theme/Theme1/BGlv/BG-hd.pvr.ccz/spriteFrame",
  16. // tmx:"Theme/Theme1/BG1lv/BGPath"
  17. import { Asset, SpriteFrame, TiledMapAsset } from "cc";
  18. import { GameResData } from "../DataItem/ItemData";
  19. import { dataMgr } from "../Frames/DataManager";
  20. import { GameInfo } from "../GameInfo";
  21. import { resMgr } from "../Frames/ResourcesMgr";
  22. // },
  23. // {
  24. // bg:[
  25. // "Theme/Theme2/BG0/BG1-hd.pvr.ccz/spriteFrame",
  26. // "Theme/Theme2/BG0/BG2-hd.pvr.ccz/spriteFrame",
  27. // ],
  28. // monster:[
  29. // "Theme/Theme2/Items/Monsters01-hd",
  30. // "Theme/Theme2/Items/Monsters02-hd",
  31. // ],
  32. // obs:[
  33. // "Theme/Theme2/Items/Object01-hd",
  34. // "Theme/Theme2/Items/Object02-hd",
  35. // ],
  36. // pathImg:"Theme/Theme2/BGlv/BG-hd.pvr.ccz/spriteFrame",
  37. // tmx:"Theme/Theme2/BG1lv/BGPath"
  38. // },
  39. // {
  40. // bg:[
  41. // "Theme/Theme2/BG0/BG1-hd.pvr.ccz/spriteFrame",
  42. // "Theme/Theme2/BG0/BG2-hd.pvr.ccz/spriteFrame",
  43. // ],
  44. // monster:[
  45. // "Theme/Theme2/Items/Monsters01-hd",
  46. // "Theme/Theme2/Items/Monsters02-hd",
  47. // ],
  48. // obs:[
  49. // "Theme/Theme2/Items/Object01-hd",
  50. // "Theme/Theme2/Items/Object02-hd",
  51. // ],
  52. // pathImg:"Theme/Theme2/BGlv/BG-hd.pvr.ccz/spriteFrame",
  53. // tmx:"Theme/Theme2/BG1lv/BGPath"
  54. // },
  55. // ]
  56. class GameResMgr{
  57. private _resData: GameResData[] = null;
  58. static instance: GameResMgr = null;
  59. async loadGameRes(){
  60. this._resData = dataMgr.getAllDataByName("GameResPath");
  61. for(let i = 0; i < this._resData.length; i++){
  62. const data = this._resData[i];
  63. let path;
  64. let name;
  65. if(data.replace[0]){
  66. path = data.path.replace(data.replace[0], String(GameInfo.Instance.CurTheme));
  67. name = data.resName.replace(data.replace[0], String(GameInfo.Instance.CurTheme));
  68. }
  69. if(data.replace[1]){
  70. path = path.replace(data.replace[1], String(GameInfo.Instance.CurLv));
  71. name = name.replace(data.replace[1], String(GameInfo.Instance.CurLv));
  72. }
  73. //通过上面的名字和路径 加载资源
  74. await resMgr.load(path, name, data.atlas);
  75. }
  76. }
  77. getMapBg(style: number): SpriteFrame{
  78. const name: string = `${GameInfo.Instance.CurLv}-${style}`;
  79. return resMgr.getSpriteFrame(name);
  80. }
  81. getPathBg(): SpriteFrame{
  82. const name: string = `${GameInfo.Instance.CurLv}-${GameInfo.Instance.CurLv}-pathBg`;
  83. return resMgr.getSpriteFrame(name);
  84. }
  85. getTmx(): TiledMapAsset{
  86. const name: string = `${GameInfo.Instance.CurLv}-${GameInfo.Instance.CurLv}-tmx`;
  87. return resMgr.getTmxAsset(name);
  88. }
  89. getMonsterFrame(name: string): SpriteFrame{
  90. name = `${GameInfo.Instance.CurLv}-name`;
  91. return resMgr.getSpriteFrame(name);
  92. }
  93. }
  94. export const gameResMgr: GameResMgr = GameResMgr.instance = new GameResMgr();