PlantRewardWindow.ts 2.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950
  1. import { _decorator, Component, Node, Sprite, Label, SpriteFrame, find } from 'cc';
  2. import { ResourcesUtils } from '../../core/resourceManager/ResourcesUtils';
  3. import { BitmapFont } from '../../core/ui/BitmapFont';
  4. import { g } from '../../Data/g';
  5. import { platform } from '../../Data/platform';
  6. import { UIEffect } from '../UIEffect';
  7. const { ccclass, property } = _decorator;
  8. @ccclass('PlantRewardWindow')
  9. export class PlantRewardWindow extends Component {
  10. @property({ type: Sprite, tooltip: "奖励图标" }) rewardIcon: Sprite;
  11. @property({ type: BitmapFont, tooltip: "奖励数量文本" }) rewardLabel: BitmapFont;
  12. private type = 0;
  13. private count = 0;
  14. public async onParams(data: any) {
  15. this.count = data.value;
  16. switch (data.reward_type) {
  17. case "bonus":
  18. this.type = 0;
  19. // g.userData.bonus += data.value;
  20. this.rewardIcon.spriteFrame = await ResourcesUtils.load("Images/Turntable/red/spriteFrame", SpriteFrame, this.node);
  21. break;
  22. case "diamond":
  23. this.type = 1;
  24. // g.userData.diamond += data.value;
  25. this.rewardIcon.spriteFrame = await ResourcesUtils.load("Images/Turntable/diamond/spriteFrame", SpriteFrame, this.node);
  26. break;
  27. }
  28. this.rewardLabel.string = "x" + data.value;
  29. }
  30. onDestroy() {
  31. switch (this.type) {
  32. case 0:
  33. platform.reportThinking("envelope_increase", JSON.stringify({ previous_number: g.userData.bonus, increase_number: this.count, current_number: g.userData.bonus + this.count, reasons: "PlantReward" }));
  34. g.userData.bonus += this.count;
  35. break;
  36. case 1:
  37. platform.reportThinking("diamond_increase", JSON.stringify({ previous_number: g.userData.diamond, increase_number: this.count, current_number: g.userData.diamond + this.count, reasons: "PlantReward" }));
  38. g.userData.diamond += this.count;
  39. break;
  40. }
  41. find("Canvas/UI").getComponent(UIEffect).showBezierRedBagEffect(this.type, null, 1);
  42. }
  43. }