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.
116 lines
4.8 KiB
116 lines
4.8 KiB
//#region 文件引入
|
|
import { _decorator, Button, Component, Label, Node, sp, Sprite,Animation, RichText } from "cc";
|
|
import BaseUIForm from "../../Mgr_UI/BaseUIForm";
|
|
import { Global } from "../../Global";
|
|
import { IData } from "../../const/GameInterface";
|
|
import { GameTotalType, PropType } from "../../const/GameEnum";
|
|
import StringUtils from "../../ExUtils/StringUtils";
|
|
import BagDataPoxy from "../../const/BagDataPoxy";
|
|
import { BagDataProxy } from "../../Mgr_LocalData/DataTypeProxy/BagDataProxy";
|
|
import { TokenDataProxy } from "../../Mgr_LocalData/DataTypeProxy/TokenDataProxy";
|
|
import UIMgr from "../../Mgr_UI/UIMgr";
|
|
import { TDAnalyticsMgr } from "../../Mgr_Ge/TDAnalyticsMgr";
|
|
import { GEData } from "../../Mgr_Ge/GeDifine";
|
|
//#endregion 文件引入
|
|
const {ccclass, property,menu} = _decorator;
|
|
@ccclass("ShareUI_Proxy")
|
|
export default class ShareUI_Proxy extends BaseUIForm{
|
|
//#region 节点自动生成
|
|
@property(Label)
|
|
lab_share: Label = null;
|
|
@property(RichText)
|
|
ric_shareProgress: RichText = null;
|
|
@property(Button)
|
|
btn_share: Button = null;
|
|
@property(Label)
|
|
lab_goto: Label = null;
|
|
@property(Node)
|
|
n_reward_item: Node = null;
|
|
@property(Sprite)
|
|
spr_icon: Sprite = null;
|
|
@property(Label)
|
|
lab_itemname: Label = null;
|
|
@property(Label)
|
|
lab_item: Label = null;
|
|
@property(Node)
|
|
n_reward_coin: Node = null;
|
|
@property(Label)
|
|
lab_coin: Label = null;
|
|
@property(Button)
|
|
btn_get: Button = null;
|
|
@property(Label)
|
|
lab_get: Label = null;
|
|
//#endregion 节点自动生成
|
|
private shareReward:IData[] =[{
|
|
id:18031,
|
|
num:1,
|
|
type:GameTotalType.ITEM
|
|
},{
|
|
id:1,
|
|
num:500000,
|
|
type:GameTotalType.TOKEN
|
|
}]
|
|
protected start(): void {
|
|
this.init();
|
|
}
|
|
onButtonClick(button:Button){
|
|
|
|
/**点击事件触发*/
|
|
switch (button) {
|
|
case this.btn_share:
|
|
Global.share(()=>{
|
|
TDAnalyticsMgr.ins.TrySendtrack(GEData.GEeventName.share,"英雄令");
|
|
this.mDataMgr.Game.data.sharednum++;
|
|
this.refreshBtnState();
|
|
});
|
|
break;
|
|
case this.btn_get:
|
|
if(BagDataProxy.Ins.haveSpace()){
|
|
BagDataProxy.Ins.addItem(this.shareReward[0].id,this.shareReward[0].num)
|
|
TokenDataProxy.Ins.addToken(PropType.eGold,this.shareReward[1].num)
|
|
this.mDataMgr.Game.data.shareAweardnum++;
|
|
this.refreshBtnState();
|
|
UIMgr.Ins.ShowTipsUI("领取成功")
|
|
}
|
|
else{
|
|
UIMgr.Ins.ShowTipsUI("背包空间不足暂时无法领取奖励")
|
|
}
|
|
break;
|
|
default:
|
|
ConsoleEx.Log(button);
|
|
break;
|
|
}
|
|
}
|
|
init(){
|
|
this.refreshBtnState();
|
|
const itemcfg = Global.CsvMgr.Items_csv[this.shareReward[0].id];
|
|
if(itemcfg){
|
|
CNodeUtils.SwitchTextureByData(this.spr_icon,this.shareReward[0]);
|
|
CNodeUtils.switchTextByQuality(this.lab_itemname,itemcfg.name,itemcfg.quality)
|
|
CNodeUtils.switchText(this.lab_item,this.shareReward[0].num)
|
|
}
|
|
CNodeUtils.switchText(this.lab_coin,StringUtils.formatLargeNumber(this.shareReward[1].num))
|
|
}
|
|
|
|
refreshBtnState(){
|
|
if(this.mDataMgr.Game.data.sharednum > 0){
|
|
CNodeUtils.switchRichText(this.ric_shareProgress,`<color=#6da751>(${this.mDataMgr.Game.data.sharednum}/1)</color>`);
|
|
CNodeUtils.setActive(this.btn_share, false);
|
|
CNodeUtils.setActive(this.btn_get, true);
|
|
if(this.mDataMgr.Game.data.shareAweardnum > 0){
|
|
CNodeUtils.switchText(this.lab_get,"已领取");
|
|
CNodeUtils.setBtnInteractable(this.btn_get,false);
|
|
CNodeUtils.setChiladAllGray(this.btn_get.node,true);
|
|
}else{
|
|
CNodeUtils.switchText(this.lab_get,"领取");
|
|
CNodeUtils.setBtnInteractable(this.btn_get,true);
|
|
CNodeUtils.setChiladAllGray(this.btn_get.node,false);
|
|
}
|
|
}else{
|
|
CNodeUtils.setActive(this.btn_share, true);
|
|
CNodeUtils.setActive(this.btn_get, false);
|
|
CNodeUtils.switchRichText(this.ric_shareProgress,`<color=#FF0000>(0/1)</color>`);
|
|
}
|
|
}
|
|
|
|
}
|