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.
AdLike2048/assets/script/ui/PanelSidebar/UIPanelSidebar.ts

96 lines
2.7 KiB

3 weeks ago
//*********************
// create by 流云
// time: Wed Apr 16 2025
// desc:
//*********************
import { _decorator, Component, Node, find } from 'cc';
import { ItemNumType, StatusType } from '../../game/GameData';
import { Auto_PanelSidebar } from './Auto_PanelSidebar';
import { ItemData } from '../../game/ConfigProjectData';
import { UIID } from '../../game/ConfigRes';
import { MiniGamePf } from 'db://assets/mx/tools/MiniGameHostInfo';
const { ccclass, property } = _decorator;
@ccclass('UIPanelSidebar')
export class UIPanelSidebar extends Auto_PanelSidebar {
onLoad(): void {
super.onLoad();
}
onEnable(): void {
super.onEnable();
gg.sdk.checkSidebar(this._onSidebarAvail);
}
onDisable(): void {
super.onDisable();
}
onInit(): void {
const from = gg.sdk.isFromSidebar();
if (from) {
gg.data.setStatus(StatusType.DayGiftCanGet, 1);
} else if (MiniGamePf.isBl() && gg.data.getStatus(StatusType.DayGiftGetFinish) === 0) {
gg.data.setStatus(StatusType.DayGiftCanGet, 0);
}
this.btnEnter.active = gg.data.getStatus(StatusType.DayGiftCanGet) == 0 && gg.data.getStatus(StatusType.DayGiftGetFinish) == 0;
this.btnGet.active = gg.data.getStatus(StatusType.DayGiftCanGet) == 1 && gg.data.getStatus(StatusType.DayGiftGetFinish) == 0;
this.btnFinish.active = gg.data.getStatus(StatusType.DayGiftGetFinish) == 1;
}
/** 侧边栏不可用则关闭面板 */
private _onSidebarAvail = (ok: boolean): void => {
if (!this.isValid) return;
if (!ok) this.close(2);
};
click_btnClose(): void {
this.close(2);
}
click_btnEnter(): void {
gg.sdk.enterSidebar((res) => {
if (res) {
gg.sdk.reportDY("inLevel", `首页-加入侧边栏`);
//gg.data.setStatus(StatusType.DayGiftCanGet, 1);
} else {
gg.ui.showToast("进入失败");
}
})
this.close(2);
}
click_btnFinish(): void {
this.close(2);
}
click_btnGet(): void {
//gg.data.setStatus(StatusType.DayGiftGetFinish, 1);
//gg.data.addItemNum(ItemNumType.money, 50000);
this.showGoldView(20);
// gg.data.saveToServer();
this.close(2);
}
showGoldView(goldNum){
let itemsArray = []
let id = 1//jinbi
let item = new ItemData(id,goldNum)
item.num = goldNum
item.id = id
itemsArray.push(item)
gg.ui.openPanel(UIID.GetReward, {
data: itemsArray,onClose:()=>{
gg.data.setStatus(StatusType.DayGiftGetFinish, 1);
}
});
}
}