UISetting.ts 1.46 KB
// Learn TypeScript:
//  - https://docs.cocos.com/creator/manual/en/scripting/typescript.html
// Learn Attribute:
//  - https://docs.cocos.com/creator/manual/en/scripting/reference/attributes.html
// Learn life-cycle callbacks:
//  - https://docs.cocos.com/creator/manual/en/scripting/life-cycle-callbacks.html

import { SaveDataManager } from "../../component/SaveDataManager";
import { WindowName } from "../../Global";
import { UIBase } from "../UIBase";
import { UIManager } from "../UIManager";

const { ccclass, property } = cc._decorator;

@ccclass
export default class UISetting extends UIBase {

    // LIFE-CYCLE CALLBACKS:

    // onLoad () {}

    start() {

    }

    protected onEnable(): void {
        this.refresh();
    }

    // update (dt) {}

    onBtnMuteClick() {
        SaveDataManager.ins.setMusicMute(!SaveDataManager.ins.runtimeData.musicMute);
        this.refresh();
    }

    onBtnVibrationClick() {
        SaveDataManager.ins.setSoundEffectMute(!SaveDataManager.ins.runtimeData.SEMute);
        this.refresh();
    }

    onCloseClick() {
        UIManager.ins.closeWindow(WindowName.SETTING);

    }

    private refresh() {
        this.node.getChildByName('btnSE').getChildByName('disable').active = (SaveDataManager.ins.runtimeData.SEMute);
        this.node.getChildByName('btnMusic').getChildByName('disable').active = (SaveDataManager.ins.runtimeData.musicMute);
    }

    onBtnPrivacy() {
        UIManager.ins.openWindow(WindowName.PRIVACY, 2);
    }
}