mergemilitary/Assets/Scripts/UIs/CustomControl/PetList/PetList.cs

63 lines
1.8 KiB
C#
Raw Normal View History

2022-07-04 11:17:39 +00:00
using System.Collections;
using System.Collections.Generic;
using UnityEngine;
public class PetList : ListView<PetCell>
{
public override int Count => TablePet.Instance.Count;
protected override void ConfigCell(PetCell pCell)
{
DataPet tData = TablePet.Instance[pCell.Index];
pCell.DelPurchase = OnBuyPet;
pCell.DelAd = OnAdPet;
pCell.DelUse = OnUsePet;
pCell.ConfigCell(tData, PlayerData.Instance.HasPet(tData.PetID), PlayerData.Instance.CurrentPetID == tData.PetID);
}
private void OnBuyPet(int pPetID)
{
2022-09-09 14:35:49 +00:00
DataPet tData = TablePet.Instance.GetData(pPetID);
2022-07-04 11:17:39 +00:00
if (PlayerData.Instance.Diamond >= tData.Price)
{
PlayerData.Instance.Diamond -= tData.Price;
UIUtils.DropDiamond(tData.Price);
PlayerData.Instance.GetPet(pPetID);
PlayerData.Instance.UsePet(pPetID);
PetManager.Instance.SetPet(PlayerData.Instance.CurrentPetID);
LoadData();
}
}
private void OnAdPet(int pPetID)
{
2022-09-09 14:35:49 +00:00
AdsUtils.PlayReward(TKGRVPositionName.RV_Get_Pet, () =>
2022-07-04 11:17:39 +00:00
{
int tCount = PlayerData.Instance.AddPetProgress(pPetID);
2022-09-09 14:35:49 +00:00
DataPet tPet = TablePet.Instance.GetData(pPetID);
int tOnlineCount = TKGSDKManager.Instance.GetConfigInt(TKGParamKey.SkinAdCount);
2022-07-04 11:17:39 +00:00
if (tCount >= (tOnlineCount > 0 ? tOnlineCount : tPet.AdCount))
{
PlayerData.Instance.GetPet(pPetID);
PlayerData.Instance.UsePet(pPetID);
PetManager.Instance.SetPet(PlayerData.Instance.CurrentPetID);
}
LoadData();
});
}
private void OnUsePet(int pPetID)
{
PlayerData.Instance.UsePet(pPetID);
PetManager.Instance.SetPet(PlayerData.Instance.CurrentPetID);
LoadData();
}
}