zjSdk.ts 5.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151
  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. // console.log('zh:doPay 1' );
  104. const { payType, success, fail } = params;
  105. console.log('zh:zjSdk -> doPay. params: ' + JSON.stringify(params));
  106. // console.log('zh:doPay 2' );
  107. success && success();
  108. },
  109. /**
  110. * 检测视频是否可以播放
  111. * @param callback 可以播放返回true 否则 false
  112. */
  113. checkCanShowVideo(callback: Function) {
  114. console.log('zjSdk -> checkCanShowVideo.');
  115. callback && callback(true);
  116. },
  117. /**
  118. * 展示banner
  119. * @param {object} params
  120. * @param {number} params.adPlaceName 如 结算界面
  121. * @param {function} params.success 成功回调
  122. * @param {function} pxarams.fail 失败回调
  123. */
  124. showBannerAd(objArgs = {adPlaceName: '', success: () => {}, fail: () => {} }) {
  125. let {
  126. adPlaceName,
  127. success,
  128. fail
  129. } = objArgs;
  130. success && success();
  131. console.log('zjSdk -> showBannerAd.');
  132. },
  133. /**
  134. * 隐藏banner
  135. */
  136. hideBannerAd() {
  137. console.log('zjSdk -> hideAdBanner.');
  138. },
  139. /**
  140. * 日志发送
  141. * @param eventName
  142. */
  143. sendEvent(eventName: string) {
  144. console.log('zjSdk -> eventName. params: ' + JSON.stringify(eventName));
  145. }
  146. };
  147. window.zjSdk = window.zjSdk || zjSdkAdapter;
  148. }
  149. export { zjSdkAdapter }