UI_TimesOver.ts 2.8 KB

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