UI_TimesOver.ts 2.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566
  1. import { _decorator, Component, Node } from 'cc';
  2. import ui_base from '../../../core/ui/ui_base';
  3. import { GameUILayers, gui } from '../../../core/ui/ui';
  4. import { ModuleDef } from '../../../Scripts/ModuleDef';
  5. import { Layout_TimesOver } from './Layout_TimesOver';
  6. import { UI_Fail } from '../UI_Fail/UI_Fail';
  7. import { Hall } from '../../hall/Hall';
  8. import { ani_ui, UI_Main } from '../UI_Main/UI_Main';
  9. import { Layout_Main } from '../UI_Main/Layout_Main';
  10. const { ccclass, property } = _decorator;
  11. @ccclass('UI_TimesOver')
  12. export class UI_TimesOver extends ui_base {
  13. constructor() {
  14. super(ModuleDef.GAME, 'ui/UI_TimesOver/TimesOver', GameUILayers.HUD, Layout_TimesOver);
  15. }
  16. protected async onCreated() {
  17. const layout = this.getLayout<Layout_TimesOver>();
  18. ani_ui(layout.Close_Btn.node.parent);
  19. gui.get(UI_Main).evt.emit(gui.get(UI_Main).evt.key.pause);
  20. let num = Hall.getInstance().player.get_item(5);
  21. if(num>0)
  22. {
  23. layout.AddTime_Ad.node.active = false;
  24. layout.RedPoint_num.node.parent.active = true;
  25. layout.RedPoint_num.string =num.toString();
  26. }else{
  27. layout.AddTime_Ad.node.active = true;
  28. layout.RedPoint_num.node.parent.active = false;
  29. }
  30. //已经消除方块/总方块
  31. layout.progressBar.progress = (gui.get(UI_Main).getLayout<Layout_Main>().Container.count-gui.get(UI_Main).getLayout<Layout_Main>().Container.idioms.length)/gui.get(UI_Main).getLayout<Layout_Main>().Container.count;
  32. console.log(gui.get(UI_Main).getLayout<Layout_Main>().Container.count,gui.get(UI_Main).getLayout<Layout_Main>().Container.idioms.length);
  33. layout.progressBar_Percent.string = Math.floor(layout.progressBar.progress * 100) + '%';
  34. this.onButtonEvent(layout.Close_Btn, () => {
  35. gui.close(UI_TimesOver);
  36. gui.show(UI_Fail);
  37. });
  38. this.onButtonEvent(layout.AddTime, async () => {
  39. if (num <= 0) {
  40. const ret = await chsdk.playRewardAd('获得道具5');
  41. if (ret) {
  42. gui.close(UI_TimesOver);
  43. //增加时间
  44. Hall.getInstance().player.add_item(5, 1);
  45. Hall.getInstance().player.use_item(5);
  46. gui.get(UI_Main).evt.emit(gui.get(UI_Main).evt.key.resume);
  47. }
  48. }else{
  49. gui.close(UI_TimesOver);
  50. Hall.getInstance().player.use_item(5);
  51. //增加时间
  52. gui.get(UI_Main).evt.emit(gui.get(UI_Main).evt.key.resume);
  53. }
  54. });
  55. }
  56. }