You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
320 lines
8.9 KiB
320 lines
8.9 KiB
|
|
//*********************
|
|
// 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
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|