UI_Settings.ts 1.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041
  1. import { _decorator, Button, Component, Node } from 'cc';
  2. import ui_base from 'db://assets/core/ui/ui_base';
  3. import { Layout_Settings } from './Layout_Settings';
  4. import { ModuleDef } from 'db://assets/Scripts/ModuleDef';
  5. import { GameUILayers, gui } from 'db://assets/core/ui/ui';
  6. import { ani_ui } from '../UI_Main/UI_Main';
  7. import { ch } from 'db://assets/ch/ch';
  8. const { ccclass, property } = _decorator;
  9. @ccclass('UI_Settings')
  10. export class UI_Settings extends ui_base {
  11. constructor() {
  12. super(ModuleDef.GAME, 'ui/UI_Settings/Settings', GameUILayers.HUD, Layout_Settings);
  13. }
  14. protected async onCreated() {
  15. const layout = this.getLayout<Layout_Settings>();
  16. ani_ui(layout.Close_Btn.node.parent);
  17. this.onButtonEvent(layout.Close_Btn, async (button: any) => {
  18. //关闭设置界面
  19. gui.close(UI_Settings);
  20. }, this);
  21. layout.Toggle_Music.isChecked = ch.audio.volumeMusic!=0;
  22. layout.Toggle_Sound.isChecked = ch.audio.switchEffect;
  23. this.onToggleEvent(layout.Toggle_Music, async (toggle: any) => {
  24. ch.audio.volumeMusic = toggle.isChecked ? 1 : 0;
  25. ch.audio.save();
  26. // button_sound();
  27. }, this);
  28. this.onToggleEvent(layout.Toggle_Sound, async (toggle: any) => {
  29. ch.audio.switchEffect = toggle.isChecked;
  30. ch.audio.save();
  31. // button_sound();
  32. }, this);
  33. }
  34. }