RewardData.ts 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364
  1. import { Data } from "../../../mk/data/Data";
  2. import { RewardType } from "../GameData";
  3. /**
  4. * @description 奖励数据
  5. * @author 邹勇 薛鸿潇
  6. */
  7. export class RewardData extends Data {
  8. /** 增加的红包币 */
  9. public add_redbag_value: number = 0;
  10. private _data: Array<any> = [];
  11. /** 奖励列表 */
  12. set data(value: Array<any>) {
  13. this._data = value;
  14. }
  15. get data(): Array<any> {
  16. return this._data;
  17. }
  18. /**
  19. * 气泡子红包类型
  20. * - 1 主界面气泡、关卡气泡
  21. * - 2 关卡消除
  22. */
  23. subType: number = 1;
  24. /**
  25. * 奖励添加
  26. */
  27. public addReward() {
  28. const i_count = gData.reward.data.length;
  29. for (let i = 0; i < i_count; i++) {
  30. if (gData.reward.data[i].rewardType == RewardType.redBag) {
  31. if (gData.reward.data[i].rewardNum) {
  32. gData.gameData.gameData.redMoney += gData.reward.data[i].rewardNum;
  33. }
  34. } else if (gData.reward.data[i].rewardType == RewardType.rmb) {
  35. // ?
  36. } else if (gData.reward.data[i].rewardType == RewardType.pigRmb) {
  37. if (gData.reward.data[i].rewardNum) {
  38. gData.gameData.gameData.piggyBank += gData.reward.data[i].rewardNum;
  39. }
  40. }
  41. }
  42. gData.reward.data = [];
  43. }
  44. public flyCoinAnim() {
  45. if (!gData.reward.data || !gData.reward.data.length) return;
  46. let is_add_money = true;
  47. const i_count = gData.reward.data.length;
  48. for (let i = 0; i < i_count; i++) {
  49. if (gData.reward.data[i].rewardType === RewardType.rmb) continue;
  50. if (gData.reward.data[i].rewardNum == 0) continue;
  51. let start_node_pos = new cc.Vec2(0, -300);
  52. mk.fly.PlayCoinAnim(gData.reward.data[i].rewardType, 10, start_node_pos, '', () => {
  53. is_add_money && this.addReward();
  54. })
  55. }
  56. }
  57. }