import { _decorator, Button, Component, Node } from 'cc'; import { Layout_Hall } from './Layout_Hall'; import { UI_Rank } from '../UI_Rank/UI_Rank'; import { UI_Settings } from '../UI_Settings/UI_Settings'; import { UI_Sign } from '../UI_Sign/UI_Sign'; import { UI_Invite } from '../UI_Invite/UI_Invite'; import { GameUILayers, gui } from '../../../core/ui/ui'; import ui_base from '../../../core/ui/ui_base'; import { ResUtil } from '../../../core/util/ResUtil'; import { ModuleDef } from '../../../Scripts/ModuleDef'; import { SceneDef } from '../../../Scripts/SceneDef'; import { UI_Store } from '../UI_Store/UI_Store'; import { UI_SideBar } from '../UI_SideBar/UI_SideBar'; import { UI_Task } from '../UI_Task/UI_Task'; import ch_audio from '../../../ch/audio/audio'; import { GameState, Hall, life_countdown_Max } from '../../hall/Hall'; import { UI_Life } from '../UI_Life/UI_Life'; import { Toast } from '../../../core/util_class/Toast'; const { ccclass, property } = _decorator; @ccclass('UI_Hall') export class UI_Hall extends ui_base { constructor() { super(ModuleDef.GAME, 'ui/UI_Hall/Hall', GameUILayers.GAME, Layout_Hall); } protected onCreated() { if (Hall.getInstance().gameState == GameState.fail) { if (Hall.getInstance().player.get_life() == 5) { Hall.getInstance().player.set_life_countdown(life_countdown_Max); } Hall.getInstance().player.set_life(Hall.getInstance().player.get_life() - 1); } Hall.getInstance().gameState = GameState.win; ch_audio.getInstance().play('sound/bgm'); const layout = this.getLayout(); this.onButtonEvent(layout.Start_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); if (Hall.getInstance().player.get_life() > 0) { Hall.getInstance().sceneChanging=false; gui.close(UI_Hall); ResUtil.loadScene(SceneDef.GAME, ModuleDef.GAME, true); }else{ gui.show(UI_Life); } }); this.onButtonEvent(layout.Settings_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); gui.show(UI_Settings); }); this.onButtonEvent(layout.Rank_Btn, async() => { ch_audio.getInstance().playOneShot('sound/click_Btn'); await Hall.getInstance().player.loadPfInfo(); gui.show(UI_Rank); }); this.onButtonEvent(layout.Sign_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); gui.show(UI_Sign); }); this.onButtonEvent(layout.Invite_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); gui.show(UI_Invite); }); this.onButtonEvent(layout.Store_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); gui.show(UI_Store); }); this.onButtonEvent(layout.Task_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); gui.show(UI_Task); }) this.onButtonEvent(layout.Search_Btn, () => { Hall.getInstance().player.set_max_floor(parseInt(layout.Search_EditBox.string)-1); gui.close(UI_Hall); ResUtil.loadScene(SceneDef.GAME, ModuleDef.GAME, true); }); if (chsdk.checkHasSidebar()) { layout.SideBar_Btn.node.active = true; this.onButtonEvent(layout.SideBar_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); gui.show(UI_SideBar); }); } else { layout.SideBar_Btn.node.active = false; } this.onButtonEvent(layout.Life_Btn, () => { ch_audio.getInstance().playOneShot('sound/click_Btn'); gui.show(UI_Life); }); layout.Life_Num.string = Hall.getInstance().player.get_life().toString(); if (Hall.getInstance().player.get_life_countdown() > 0) { layout.Life_CountDown.node.active = true; layout.Life_CountDown.node.parent.active = true; let minute = Math.floor(Hall.getInstance().player.get_life_countdown() / 60); let second = Hall.getInstance().player.get_life_countdown() % 60; layout.Life_CountDown.string = (minute >= 10 ? minute : '0' + minute) + ':' + (second >= 10 ? second : '0' + second) + "后+1"; } else { layout.Life_CountDown.node.active = false; layout.Life_CountDown.node.parent.active = false; } } update(deltaTime: number) { } set_Life(value: number) { const layout = this.getLayout(); layout.Life_Num.string = value.toString(); } set_Life_CountDown(value: number, flag: boolean) { const layout = this.getLayout(); if (flag) { layout.Life_CountDown.node.active = true; layout.Life_CountDown.node.parent.active = true; let minute = Math.floor(value / 60); let second = value % 60; layout.Life_CountDown.string = (minute >= 10 ? minute : '0' + minute) + ':' + (second >= 10 ? second : '0' + second) + "后+1"; } else { layout.Life_CountDown.node.active = false; layout.Life_CountDown.node.parent.active = false; } } }