UI_Tips.ts 2.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  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_Tips } from './Layout_Tips';
  6. import { UI_Settings } from '../UI_Settings/UI_Settings';
  7. import { ResUtil } from '../../../core/util/ResUtil';
  8. import { SceneDef } from '../../../Scripts/SceneDef';
  9. import { UI_Hall } from '../UI_Hall/UI_Hall';
  10. import { Layout_Main } from '../UI_Main/Layout_Main';
  11. import { UI_Main } from '../UI_Main/UI_Main';
  12. import ch_audio from '../../../ch/audio/audio';
  13. import { GameState, Hall } from '../../hall/Hall';
  14. const { ccclass, property } = _decorator;
  15. @ccclass('UI_Tips')
  16. export class UI_Tips extends ui_base {
  17. constructor() {
  18. super(ModuleDef.GAME, 'ui/UI_Tips/Tips', GameUILayers.ALERT, Layout_Tips);
  19. }
  20. protected onCreated() {
  21. const layout = this.getLayout<Layout_Tips>();
  22. this.onButtonEvent(layout.Close_Btn, () => {
  23. ch_audio.getInstance().playOneShot('sound/click_Btn');
  24. gui.close(UI_Tips);
  25. });
  26. }
  27. init(flag:boolean){
  28. const layout = this.getLayout<Layout_Tips>();
  29. this.onButtonEvent(layout.Ensure_Btn, async () => {
  30. ch_audio.getInstance().playOneShot('sound/click_Btn');
  31. gui.close(UI_Tips);
  32. gui.close(UI_Settings);
  33. if (flag) {
  34. await gui.closeAll();
  35. gui.show(UI_Hall);
  36. Hall.getInstance().gameState=GameState.fail;
  37. Hall.getInstance().sceneChanging=true;
  38. ResUtil.loadScene(SceneDef.Hall, ModuleDef.GAME, true);
  39. } else {
  40. Hall.getInstance().player.set_life(Hall.getInstance().player.get_life() - 1);
  41. gui.close(UI_Tips);
  42. gui.close(UI_Settings);
  43. Hall.getInstance().bornRunning=false;
  44. gui.get(UI_Main).evt.emit(gui.get(UI_Main).evt.key.next_level);
  45. gui.get(UI_Main).getLayout<Layout_Main>().Container.level_idioms();
  46. gui.get(UI_Main).evt.emit(gui.get(UI_Main).evt.key.update_ui_idioms);
  47. gui.get(UI_Main).evt.emit(gui.get(UI_Main).evt.key.update_remain);
  48. }
  49. });
  50. this.onButtonEvent(layout.Cancel_Btn, () => {
  51. ch_audio.getInstance().playOneShot('sound/click_Btn');
  52. gui.close(UI_Tips);
  53. });
  54. }
  55. }