CompatibleTool.ts 2.1 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273
  1. const { ccclass, property } = cc._decorator;
  2. /**
  3. * 兼容工具类
  4. */
  5. @ccclass
  6. export default class CompatibleTool extends cc.Component {
  7. static _engineVersion: number = 0;
  8. static get engineVersion(): number {
  9. if (this._engineVersion > 0) return this._engineVersion;
  10. let version = cc.ENGINE_VERSION;
  11. return parseInt((version.substr(version.indexOf(".") - 1, version.length)).split(".").join(""))
  12. }
  13. /**
  14. * 坐标接口
  15. * 2.4以上返回v3,否则返回v2
  16. * @param x
  17. * @param y
  18. */
  19. static position(x, y): any {
  20. if (this.engineVersion >= 240) {
  21. //@ts-ignore
  22. return cc.v3(x, y);
  23. }
  24. return cc.v2(x, y);
  25. }
  26. /**
  27. * 坐标接口
  28. * 2.4以上返回v3,否则返回v2
  29. * @param x
  30. * @param y
  31. */
  32. static LoadRes(remoteUrl: string, callBack: Function) {
  33. if (this.engineVersion >= 240) {
  34. let str = remoteUrl.substr(remoteUrl.lastIndexOf("."));
  35. if (str != ".jpg" && str != ".png" && str != ".jpeg") {
  36. //@ts-ignore
  37. cc.assetManager.loadRemote(remoteUrl, { ext: ".jpeg" }, callBack);
  38. //@ts-ignore
  39. cc.assetManager.loadRemote(remoteUrl, { ext: ".jpg" }, callBack);
  40. //@ts-ignore
  41. cc.assetManager.loadRemote(remoteUrl, { ext: ".png" }, callBack);
  42. }
  43. else {
  44. //@ts-ignore
  45. cc.assetManager.loadRemote(remoteUrl, callBack);
  46. }
  47. } else {
  48. let str = remoteUrl.substr(remoteUrl.lastIndexOf("."));
  49. if (str != ".jpg" && str != ".png" && str != ".jpeg") {
  50. //@ts-ignore
  51. cc.loader.load({ url: remoteUrl, type: "jpeg" }, callBack);
  52. //@ts-ignore
  53. cc.loader.load({ url: remoteUrl, type: "jpg" }, callBack);
  54. //@ts-ignore
  55. cc.loader.load({ url: remoteUrl, type: "png" }, callBack);
  56. }
  57. else {
  58. cc.loader.load(remoteUrl, callBack);
  59. }
  60. }
  61. }
  62. // update (dt) {}
  63. }