TakeGobletGlobalInstance.ts 1.6 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849
  1. /*
  2. * @Author: super_javan 296652579@qq.com
  3. * @Date: 2025-01-01 09:28:17
  4. * @LastEditors: super_javan 296652579@qq.com
  5. * @LastEditTime: 2025-01-01 18:28:17
  6. * @FilePath: /MoveCarUnscrew/assets/module_movecar/Script/TakeGobletGlobalInstance.ts
  7. * @Description: 这是默认设置,请设置`customMade`, 打开koroFileHeader查看配置 进行设置: https://github.com/OBKoro1/koro1FileHeader/wiki/%E9%85%8D%E7%BD%AE
  8. */
  9. import { _decorator, assetManager, Component, Node, Prefab } from 'cc';
  10. import { resLoader } from '../../core_tgx/base/ResLoader';
  11. import { ResourcePool } from './ResourcePool';
  12. const { ccclass, property } = _decorator;
  13. @ccclass('TakeGobletGlobalInstance')
  14. export class TakeGobletGlobalInstance extends Component {
  15. private static _instance: TakeGobletGlobalInstance;
  16. public static get instance() {
  17. if (this._instance) {
  18. return this._instance;
  19. }
  20. this._instance = new TakeGobletGlobalInstance();
  21. return this._instance;
  22. }
  23. async loadPinPrefab() {
  24. const prefab = await this.loadAsyncPin();
  25. ResourcePool.instance.set_prefab(prefab.name, prefab);
  26. }
  27. async loadAsyncPin(): Promise<Prefab> {
  28. return new Promise((resolve, reject) => {
  29. const bundle = assetManager.getBundle(resLoader.gameBundleName);
  30. if (!bundle) {
  31. console.error("module_nut is null!");
  32. reject();
  33. }
  34. resLoader.loadAsync(resLoader.gameBundleName, `Prefabs/pin`, Prefab).then((prefab: Prefab) => {
  35. resolve(prefab);
  36. })
  37. })
  38. }
  39. public levels: Node = null;
  40. }