zjSdk.ts 5.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149
  1. /**
  2. * zjSdk的适配器, 解决浏览器上没有zjSdk的问题
  3. */
  4. let zjSdkAdapter = null;
  5. if (!window.zjSdk) {
  6. zjSdkAdapter = {
  7. TYPE: {
  8. VIDEO: 0,
  9. SHARE: 1,
  10. NULL: 2,
  11. },
  12. /**
  13. * 游戏开始时调用,用于表示游戏准备好
  14. */
  15. enginStart() {
  16. console.log('zjSdk -> enginStart.');
  17. },
  18. gameBegin(callback: Function) {
  19. console.log('zjSdk -> gameBegin.');
  20. callback && callback();
  21. },
  22. /**
  23. * 显示对联卖量和更多好玩按钮, 在横屏情况下显示右侧单列滚动卖量,控制参数无效
  24. *
  25. * @param {object} params 显示参数
  26. * @param {number} params.x 按钮的x值
  27. * @param {number} params.y 按钮的y值
  28. * @param {number} params.scale 按钮的缩放倍数
  29. * @param {boolean} params.showCouplet 是否显示对联
  30. * @param {number} params.coupletNum 对联数量
  31. * @param {boolean} params.showScroll 是否显示底部滚动条
  32. * @memberof bondUI
  33. */
  34. showMain(params = {}) {
  35. console.log('zjSdk -> showMainMenu. params: ' + JSON.stringify(params));
  36. },
  37. /**
  38. * 隐藏主界面卖量
  39. */
  40. hideMain() {
  41. console.log('zjSdk -> hideMain.');
  42. },
  43. /**
  44. * 复活界面卖量
  45. * @param {Object} params 控制预留区域填充内容的位置与大小
  46. * @param {Number} params.x 预留区域中心点在x轴位置
  47. * @param {Number} params.y 预留区域中心点在y轴位置
  48. * @param {Number} params.scale 预留区域的缩放比例
  49. * @param {Function} params.success banner 显示之后的回调函数,可用来调成按钮位置。触发回调时会带有一个 `Number` 类型的参数,为 banner 顶部到屏幕顶部的距离(以 canvas 高度为基准的数值)
  50. */
  51. showRevive(params = {success: () => {}}) {
  52. console.log('zjSdk -> showRevive. params: ' + JSON.stringify(params));
  53. params.success && params.success();
  54. },
  55. /**
  56. * 隐藏复活界面
  57. */
  58. hideRevive() {
  59. console.log('zjSdk -> hideRevive.');
  60. },
  61. /**
  62. * 结算界面 玩家游戏失败进入复活界面后选择不复活,或者玩家游戏胜利后,下一步都是进入结算界面
  63. * @param {Function} callback 回调函数,在回调里打开结算界面
  64. */
  65. gameEnd(callback: Function) {
  66. console.log('zjSdk -> endGame.');
  67. callback && callback();
  68. },
  69. /**
  70. * 显示结算界面卖量
  71. * @param {Object} params 控制预留区域填充内容的位置与大小
  72. * @param {Number} params.x 预留区域 **中心点** 在 X 轴位置
  73. * @param {Number} params.y 预留区域 **中心点** 在 Y 轴位置
  74. * @param {Number} params.heightPercent 卖量界面高度展示的百分比
  75. * @param {Function} params.success banner 显示之后的回调函数,可用来调成按钮位置。触发回调时会带有一个 `Number` 类型的参数,为 banner 顶部到屏幕顶部的距离(以 canvas 高度为基准的数值)
  76. */
  77. showGameOver(params = {success: () => {}}) {
  78. console.log('zjSdk -> showGameOver. params: ' + JSON.stringify(params));
  79. params.success && params.success();
  80. },
  81. /**
  82. * 隐藏结算界面卖量
  83. */
  84. hideGameOver() {
  85. console.log('zjSdk -> hideGameOver.');
  86. },
  87. /**
  88. * 主动展示抽屉页面
  89. * @param {*} params
  90. * @param {Function} params.callback 展示成功后的回调
  91. */
  92. popupDrawer(params = {}) {
  93. console.log('zjSdk -> popupDrawer.');
  94. },
  95. /**
  96. * 根据付费点配置,自动看广告 or 分享
  97. * @param {*} params
  98. * @param {*} params.payType 付费类型 PAY_TYPE
  99. * @param {*} params.success 成功回调
  100. * @param {*} params.fail 失败回调
  101. */
  102. doPay(params = {}) {
  103. const { payType, success, fail } = params;
  104. console.log('zjSdk -> doPay. params: ' + JSON.stringify(params));
  105. success && success();
  106. },
  107. /**
  108. * 检测视频是否可以播放
  109. * @param callback 可以播放返回true 否则 false
  110. */
  111. checkCanShowVideo(callback: Function) {
  112. console.log('zjSdk -> checkCanShowVideo.');
  113. callback && callback(true);
  114. },
  115. /**
  116. * 展示banner
  117. * @param {object} params
  118. * @param {number} params.adPlaceName 如 结算界面
  119. * @param {function} params.success 成功回调
  120. * @param {function} pxarams.fail 失败回调
  121. */
  122. showBannerAd(objArgs = {adPlaceName: '', success: () => {}, fail: () => {} }) {
  123. let {
  124. adPlaceName,
  125. success,
  126. fail
  127. } = objArgs;
  128. success && success();
  129. console.log('zjSdk -> showBannerAd.');
  130. },
  131. /**
  132. * 隐藏banner
  133. */
  134. hideBannerAd() {
  135. console.log('zjSdk -> hideAdBanner.');
  136. },
  137. /**
  138. * 日志发送
  139. * @param eventName
  140. */
  141. sendEvent(eventName: string) {
  142. console.log('zjSdk -> eventName. params: ' + JSON.stringify(eventName));
  143. }
  144. };
  145. window.zjSdk = window.zjSdk || zjSdkAdapter;
  146. }
  147. export { zjSdkAdapter }