//********************* // create by 流云 // time: Thu Mar 06 2025 // desc: //********************* import { _decorator, Component, Node, find, sys, game } from 'cc'; import { Auto_PanelSettings } from './Auto_PanelSettings'; import { StatusType } from '../../game/GameData'; import { GEvent } from 'db://assets/mx/module/event/GEvent'; import { GM } from '../../game/GM'; import { UIID } from '../../game/ConfigRes'; import { sdkConfig } from '../../sdk/sdkConfig'; import type { LangCode } from 'db://assets/mx/module/lang/Lang'; import { Lang } from 'db://assets/mx/module/lang/Lang'; const { ccclass, property } = _decorator; @ccclass('UIPanelSettings') export class UIPanelSettings extends Auto_PanelSettings { clickTime:number = 0; btnArray: Node[] = []; btnKeyArray: string[] = []; onLoad(): void { super.onLoad(); } onEnable(): void { super.onEnable(); } onDisable(): void { super.onDisable(); } onInit(): void { this.ui_boxLang.active = sdkConfig.config.noChangeLang; if(sdkConfig.config.noChangeLang){ this.btnKeyArray = [ "cn", "cn", "en", "cn", "cn", "cn", "cn", "cn", "cn", "cn", ] this.btnArray = [ this.btn_jtzw, this.btn_fanti, this.btn_english, this.btn_hanyu, this.btn_riben, this.btn_xibanya, this.btn_fayu, this.btn_deyu, this.btn_eluosi, this.btn_putaoya, ] //sdkConfig.defaultLang this.refreshChangeBtn(false) } this.showOpenMaskEff(2); this.updateBtnStatus(); this.showOpenCenterEff(); if(gg.role.roleId == 1){ this.btn_choseMan.getChildByName('choose').active = true this.btn_choseWoman.getChildByName('choose').active = false }else{ this.btn_choseMan.getChildByName('choose').active = false this.btn_choseWoman.getChildByName('choose').active = true } this.btnGM.active = sys.isBrowser; } refreshChangeBtn(ischange:boolean = true){ let defaultLang = sdkConfig.defaultLang; this.btnArray.forEach((btnNode) => { btnNode.getChildByName('choose').active = false }) let findKey = 0 for(let i = 0; i < this.btnKeyArray.length; i++){ if(this.btnKeyArray[i] == defaultLang){ findKey = i; break; } } this.btnArray[findKey].getChildByName('choose').active = true if(ischange){ gg.lang.Current = defaultLang as LangCode; } } _vibrateOpen = false; click_btnMusic() { gg.audio.playEffect({ name: "点击音效"}); gg.audio.MuteMusic = !gg.audio.MuteMusic; gg.data.setStatus(StatusType.MuteMusic, gg.audio.MuteMusic ? 1 : 0); this.updateBtnStatus(); if (!gg.audio.MuteMusic) gg.audio.playMusic({ name: "主页背景音" ,path:"bgm/"}); else gg.audio.stopMusic(); } click_btnEffect() { gg.audio.playEffect({ name: "点击音效"}); gg.audio.MuteEffect = !gg.audio.MuteEffect; gg.data.setStatus(StatusType.MuteEffect, gg.audio.MuteEffect ? 1 : 0); this.updateBtnStatus(); } click_btnVibrate() { gg.audio.playEffect({ name: "点击音效"}); this._vibrateOpen = !this._vibrateOpen; gg.sdk.Vibrate.IsEnable = !this._vibrateOpen; this.updateBtnStatus(); } click_btnSave() { gg.audio.playEffect({ name: "点击音效"}); gg.data.saveLocal(); gg.data.saveToServer((res) => { if (res) { gg.ui.showToast("已保存"); } else { gg.ui.showToast("保存失败"); } }); } click_btnClose() { gg.audio.playEffect({ name: "点击音效"}); this.close(2); } updateBtn(btn, status) { btn.getChildByName("open").active = !status; btn.getChildByName("close").active = status; } click_btnGM() { gg.audio.playEffect({ name: "点击音效"}); GM.show(); this.close(2); } click_btnRestart() { gg.audio.playEffect({ name: "点击音效"}); gg.ui.openPanel(UIID.MsgBox, { data: { content: "重置将丢失当前游戏进度,重新开始游戏,确定重置吗?", yesFun: () => { this.close(2); //gg.ui.closeAllPanel(); //GEvent.Ins.emit(GEvent.GameRestart); gg.game.reset('设置重置'); } } }) } updateBtnStatus() { this.updateBtn(this.btnMusic, gg.audio.MuteMusic); this.updateBtn(this.btnEffect, gg.audio.MuteEffect); this.updateBtn(this.btnVibrate, this._vibrateOpen); } click_btn1(): void { // gg.audio.playEffect({ name: "点击音效"}); // this.time = game.totalTime; // this.step = 1; } click_btn2(): void { // gg.audio.playEffect({ name: "点击音效"}); // if (this.step == 1) // this.step = 2; } click_btn3(): void { // gg.audio.playEffect({ name: "点击音效"}); // let t = game.totalTime - this.time; // if (this.step == 2 && t < 1500) { // GM.show(); // this.close(2); // } } time = 0; step = 0; click_btnResetArea() { this.clickTime++ if(this.clickTime >= 10){ this.btnRestart.active = true; } } click_bgMask() { gg.audio.playEffect({ name: "点击音效"}); this.close(2); } click_btnDuiHuan() { gg.ui.openPanel(UIID.PanelCDK); } click_btn_jtzw() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[0]; this.refreshChangeBtn(); } click_btn_fanti() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[1]; this.refreshChangeBtn(); } click_btn_english() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[2]; this.refreshChangeBtn(); } click_btn_hanyu() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[3]; this.refreshChangeBtn(); } click_btn_riben() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[4]; this.refreshChangeBtn(); } click_btn_xibanya() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[5]; this.refreshChangeBtn(); } click_btn_fayu() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[6]; this.refreshChangeBtn(); } click_btn_deyu() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[7]; this.refreshChangeBtn(); } click_btn_eluosi() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[8]; this.refreshChangeBtn(); } click_btn_putaoya() { gg.audio.playEffect({ name: "点击音效"}); sdkConfig.defaultLang = this.btnKeyArray[9]; this.refreshChangeBtn(); } click_btn_choseMan() { let homeShow = gg.ui.panelIsShow(UIID.Home); if(!homeShow){ gg.ui.showToast("请切换到战斗界面选择角色"); return; } if(gg.role.roleId == 1){ return; } //关闭角色界面 gg.ui.closePanel(UIID.Role); this.btn_choseMan.getChildByName('choose').active = true this.btn_choseWoman.getChildByName('choose').active = false let skinId = gg.skin.CurrentSkin; gg.role.roleId = 1 gg.role.changeSkinToRoleSkin(skinId) //根据当前皮肤切换到对应角色的皮肤id } click_btn_choseWoman() { let homeShow = gg.ui.panelIsShow(UIID.Home); if(!homeShow){ gg.ui.showToast("请切换到战斗界面选择角色"); return; } if(gg.role.roleId == 0){ return; } //关闭角色界面 gg.ui.closePanel(UIID.Role); this.btn_choseMan.getChildByName('choose').active = false this.btn_choseWoman.getChildByName('choose').active = true let skinId = gg.skin.CurrentSkin; gg.role.roleId = 0 gg.role.changeSkinToRoleSkin(skinId) //根据当前皮肤切换到对应角色的皮肤id } }