UI_Fail.ts 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  1. import { _decorator, Component, find, Node } from 'cc';
  2. import { Layout_Fail } from './Layout_Fail';
  3. import { UI_Hall } from '../UI_Hall/UI_Hall';
  4. import { GameUILayers, gui } from '../../../core/ui/ui';
  5. import ui_base from '../../../core/ui/ui_base';
  6. import { ResUtil } from '../../../core/util/ResUtil';
  7. import { ModuleDef } from '../../../Scripts/ModuleDef';
  8. import { SceneDef } from '../../../Scripts/SceneDef';
  9. import { Container_Manager } from '../../game/Container_Manager';
  10. import { ani_ui } from '../UI_Main/UI_Main';
  11. import ch_audio from '../../../ch/audio/audio';
  12. import { Hall, GameState } from '../../hall/Hall';
  13. const { ccclass, property } = _decorator;
  14. @ccclass('UI_Fail')
  15. export class UI_Fail extends ui_base {
  16. constructor() {
  17. super(ModuleDef.GAME, 'ui/UI_Fail/Fail', GameUILayers.HUD, Layout_Fail);
  18. }
  19. protected async onCreated() {
  20. Hall.getInstance().gameState=GameState.fail;
  21. const layout = this.getLayout<Layout_Fail>();
  22. layout.Container=find('Container').getComponent(Container_Manager);
  23. ani_ui(layout.Relife_Btn.node.parent.parent);
  24. this.onButtonEvent(layout.Relife_Btn, async (button: any) => {
  25. ch_audio.getInstance().playOneShot('sound/click_Btn');
  26. }, this);
  27. this.onButtonEvent(layout.ReturnHall_Btn, async (button: any) => {
  28. ch_audio.getInstance().playOneShot('sound/click_Btn');
  29. //跳转场景回到主页
  30. await gui.closeAll();
  31. gui.show(UI_Hall);
  32. ResUtil.loadScene(SceneDef.Hall, ModuleDef.GAME, true);
  33. }, this);
  34. layout.progressBar.progress = (layout.Container.count -layout.Container.idioms.length) / layout.Container.count;
  35. layout.Num.string = Math.floor(layout.progressBar.progress * 100) + '%';
  36. }
  37. }