备份CatanBuilding瘦身独立工程

This commit is contained in:
JSD\13999
2026-05-26 16:15:54 +08:00
commit 2d0e6a61b7
12001 changed files with 2431925 additions and 0 deletions

View File

@@ -0,0 +1,97 @@
using asap.core;
using GameCore;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class MiniBattlePassItemFishCard : MonoBehaviour, IMiniBattlePassItem
{
public GameObject tag_normal_mask;
public TMP_Text text_num_normal;
public GameObject tag_current;
public TMP_Text text_num_current;
public GameObject tag_first;
public RewardItemNew freeReward;
public GameObject freeClaim;
public Button freeClaimBtn;
public RewardItemNew grandReward;
public GameObject grandClaimLocked;
public GameObject fx_unlocked;
public GameObject grandClaim;
public Button grandClaimBtn;
protected MiniBattlePassDataModel miniBP;
protected bool isClaim;
MiniBPItemData data;
protected void Start()
{
grandClaimBtn.onClick.AddListener(ClickGrandClaim);
freeClaimBtn.onClick.AddListener(() =>
{
miniBP.ReceiveReward(data.index, true);
//Refresh();
GContext.Publish(new RefreshPanelEvent());
});
}
private void ClickLock()
{
if (isClaim)
{
ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_106"));
}
}
public void Init(MiniBPItemData bpItemFirstData, MiniBattlePassDataModel miniBP)
{
if (bpItemFirstData == null)
{
return;
}
this.miniBP = miniBP;
this.data = bpItemFirstData;
isClaim = bpItemFirstData.progress >= bpItemFirstData.maxProgress;
grandReward.SetData(bpItemFirstData.grandReward);
//text_task.text = bpItemFirstData.taskName;
if (bpItemFirstData.freeReward != null)
{
freeReward.SetData(bpItemFirstData.freeReward);
}
tag_normal_mask.SetActive(!isClaim);
tag_first.SetActive(data.index == 0);
tag_current.SetActive(data.index == miniBP.rewardIndex);
text_num_current.text = text_num_normal.text = data.index.ToString();
Refresh();
}
public void Refresh()
{
grandClaimLocked.gameObject.SetActive(!data.isGrandReward);
grandClaim.SetActive(data.isGrandReward && !data.isGrandClaimed && isClaim);
grandClaimBtn.gameObject.SetActive(data.isGrandReward && !data.isGrandClaimed && isClaim);
freeClaim.SetActive(!data.isFreeClaimed && isClaim);
freeClaimBtn.gameObject.SetActive(!data.isFreeClaimed && isClaim);
grandReward.SetReceived(data.isGrandClaimed);
freeReward.SetReceived(data.isFreeClaimed);
}
public void UnlockRefresh()
{
fx_unlocked.SetActive(true);
}
private void ClickGrandClaim()
{
if (data.isGrandReward)
{
//领取付费奖励的逻辑
miniBP.ReceiveReward(data.index, false);
//Refresh();
GContext.Publish(new RefreshPanelEvent());
}
else
{
ToastPanel.Show(LocalizationMgr.GetText("UI_ToastPanel_106"));
}
}
}