ResManager.js 2.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586
  1. var t = require;
  2. var e = module;
  3. var i = exports;
  4. Object.defineProperty(i, "__esModule", {value: !0}),
  5. (i.default = class {
  6. constructor() {
  7. this.loadCacheList = Object.create(null);
  8. }
  9. getResByUrl(t) {
  10. return this.getResById(t);
  11. }
  12. loadResArray(t, e, i) {
  13. return cc.resources.load(t, e, i);
  14. }
  15. loadInBundle(t, e, o) {
  16. return new Promise((i, s) => {
  17. this.loadBundle(t).then(t => {
  18. t.load(e, o, (t, e) => {
  19. t ? s(t) : i(e);
  20. });
  21. });
  22. });
  23. }
  24. loadDirInBundle(t, e, o) {
  25. return new Promise((i, s) => {
  26. this.loadBundle(t).then(t => {
  27. t.loadDir(e, o, (t, e) => {
  28. t ? s(t) : i(e);
  29. });
  30. });
  31. });
  32. }
  33. loadBundle(t) {
  34. var e = cc.assetManager.getBundle(t);
  35. return e
  36. ? Promise.resolve(e)
  37. : new Promise(function (i, s) {
  38. cc.assetManager.loadBundle(t, function (t, e) {
  39. t ? s(t) : i(e);
  40. });
  41. });
  42. }
  43. releaseAsset(t, e = cc.SpriteFrame) {
  44. e = cc.resources.get(t, e);
  45. e && (this.loadCacheList[t] && delete this.loadCacheList[t], cc.assetManager.releaseAsset(e));
  46. }
  47. getRemoteResAsync(t, e) {
  48. return new Promise((i, s) => {
  49. e
  50. ? cc.resources.load(t, e, (t, e) => {
  51. t ? s(t) : i(e);
  52. })
  53. : cc.resources.load(t, (t, e) => {
  54. t ? s(t) : i(e);
  55. });
  56. });
  57. }
  58. getResAsync(t, e) {
  59. return (
  60. (!e && this.loadCacheList[t]) ||
  61. (this.loadCacheList[t] = new Promise((i, s) => {
  62. e
  63. ? cc.resources.load(t, e, (t, e) => {
  64. t ? s(t) : i(e);
  65. })
  66. : cc.resources.load(t, (t, e) => {
  67. t ? s(t) : i(e);
  68. });
  69. })),
  70. this.loadCacheList[t]
  71. );
  72. }
  73. getResByUrlAsync(t) {
  74. return new Promise((i, s) => {
  75. cc.loader.load(t, (t, e) => {
  76. t ? s(t) : i(e);
  77. });
  78. });
  79. }
  80. getRes(t, e) {
  81. return cc.resources.get(t, e);
  82. }
  83. getResById(t) {
  84. return cc.resources.get(t);
  85. }
  86. });