reward_box_page.ts 2.5 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667
  1. import { _decorator, Component, Label, log, Node, Sprite, SpriteFrame, sys } from 'cc';
  2. import { SdkUtil } from '../framework/sdkUtil';
  3. import { gameManager } from '../gameManager';
  4. import { config } from '../config';
  5. const { ccclass, property } = _decorator;
  6. @ccclass('reward_box_page')
  7. export class reward_box_page extends Component {
  8. @property(Node) btn_close:Node = null;
  9. @property(Node) lab_coin:Node = null;
  10. @property(SpriteFrame) sf_enterSidebar:SpriteFrame;
  11. @property(SpriteFrame) sf_getReward:SpriteFrame;
  12. @property(Node) btn_enter:Node = null
  13. private m_coin_number:number = 0
  14. private m_isToEnterFromSidebar:boolean = true
  15. private m_receiveRewardCallback:any = null
  16. showView(coin_number:number, sign_status:number, isToEnterFromSidebar:boolean, receiveRewardCallback:any) {
  17. this.m_coin_number = coin_number
  18. this.m_isToEnterFromSidebar = isToEnterFromSidebar
  19. this.m_receiveRewardCallback = receiveRewardCallback
  20. this.lab_coin.getComponent(Label).string = '+' + coin_number + '金币'
  21. if(this.m_isToEnterFromSidebar) {
  22. if(sign_status == config.SIGN_STATUS_TYPE.GET) {
  23. this.btn_enter.getComponent(Sprite).spriteFrame = this.sf_getReward
  24. } else {
  25. // this.btn_enter.children[0].getComponent(Label).string = '今日已领取'
  26. }
  27. } else {
  28. this.btn_enter.getComponent(Sprite).spriteFrame = this.sf_enterSidebar
  29. }
  30. let self = this
  31. this.btn_close.on(Node.EventType.TOUCH_END, ()=> {
  32. self.close()
  33. })
  34. this.btn_enter.on(Node.EventType.TOUCH_END, ()=> {
  35. if(self.m_isToEnterFromSidebar) {
  36. if(sign_status == config.SIGN_STATUS_TYPE.GET) {
  37. // 领取奖励
  38. if(sys.platform == sys.Platform.BYTEDANCE_MINI_GAME) {
  39. gameManager.request_sign_status(config.SIGN_STATUS_TYPE.SYNC, (data)=> {
  40. gameManager.userSignStatus.status = 1
  41. if(self.m_receiveRewardCallback!=null) {
  42. self.m_receiveRewardCallback(self.m_coin_number, self)
  43. }
  44. }, (err)=> {})
  45. }
  46. } else {
  47. // 已领取
  48. self.close()
  49. }
  50. } else {
  51. SdkUtil.ttNavToSidebarScene()
  52. self.close()
  53. }
  54. })
  55. }
  56. close() {
  57. this.node.removeFromParent()
  58. }
  59. }