Project_WL/Assets/Script/UI/Collection/Essence/CollectionEssenceUI_Right.cs

89 lines
3.1 KiB
C#

using CodeStage.AntiCheat.ObscuredTypes;
using System.Collections.Generic;
using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class CollectionEssenceUI_Right : uScrollViewMgr
{
public static CollectionEssenceUI_Right Ins;
private void Start() { Ins = this; }
public Image[] images; // 0 등급, 1 정수
public TextMeshProUGUI[] texts; // 0 정수명, 1 확률명, 2 확률
public GameObject go_noti;
EssenceCard m_SelectCard;
ObscuredInt m_UseAmount = 1;
public override void Set()
{
Set_ScrollView(table_essence.Ins.Get_DataList());
SelectCard(null);
}
public override void Set_UI()
{
var sdata = ServerInfo.Ins.m_ServerData;
var Tdata = Get_SelectTData();
//images[0].sprite = UIAtlasMgr.Ins.Get_GradeSprite(table_itemlist.Ins.Get_Data(Tdata.n_EssenceID).n_ItemGrade);
images[0].sprite = UIAtlasMgr.Ins.Get_Sprite(Tdata.n_EssenceID);
texts[0].text = Tdata.Get_Name();
texts[1].text = Tdata.Get_RateTitleText();
texts[2].text = Tdata.Get_RateText();
var amount = (int)sdata.Get_ItemAmount(Tdata.n_EssenceID);
m_UseAmount = Mathf.Max(1, amount >= 10 ? 10 : amount);
m_UseAmount.RandomizeCryptoKey();
go_noti.SetActive(amount > 0);
}
public void SelectCard(EssenceCard card)
{
if (!DSUtil.CheckNull(m_SelectCard))
m_SelectCard.Set_Selected(false);
if (DSUtil.CheckNull(card))
m_SelectCard = list_CardBase[0] as EssenceCard;
else
m_SelectCard = card;
m_SelectCard.Set_Selected(true);
Set_UI();
}
EssenceTableData Get_SelectTData() { return m_SelectCard.Get_Data() as EssenceTableData; }
public void OnClick_EssenceChange()
{
var sdata = ServerInfo.Ins.m_ServerData;
var Tdata = Get_SelectTData();
if (sdata.Check_ItemAmount(Tdata.n_EssenceID, m_UseAmount))
{
ServerInfo.Ins.Save_Essence_Change(Tdata.n_EssenceID, m_UseAmount, result =>
{
sdata.Use_Item(Tdata.n_EssenceID, m_UseAmount);
var mileageid = table_GlobalValue.Ins.Get_Int("n_EssenceMileageID");
List<ItemSimpleData> list_reward = new List<ItemSimpleData>();
list_reward.Add(new ItemSimpleData { itemid = mileageid, amount = result.mileage });
for (int i = 0; i < result.items.Count; i++)
{
sdata.Add_Item(result.items[i].itemid, result.items[i].amount);
list_reward.Add(new ItemSimpleData { itemid = result.items[i].itemid, amount = result.items[i].amount });
}
sdata.Add_Item(mileageid, result.mileage);
sdata.Add_MissionCount(ePurpose.ESSENCE_EXCHANGE, 0, m_UseAmount);
sdata.Add_MissionCount(ePurpose.ESSENCE_EXCHANGE_ACC, 0, m_UseAmount);
ObtainItemUI.Ins.Set(list_reward);
m_SelectCard.Set_UI();
Set_UI();
CollectionEssenceUI_Left.Ins.Set();
});
}
}
}