63 lines
2.6 KiB
C#
63 lines
2.6 KiB
C#
using TMPro;
|
|
using UnityEngine.UI;
|
|
|
|
public class EquipmentPopupItemInfoBase : BackKeyAdd
|
|
{
|
|
public EquipItemCard m_Card;
|
|
public TextMeshProUGUI[] texts_iteminfo; // 0 top등급, 1 top이름, 2 종류
|
|
public TextMeshProUGUI[] texts_stat, texts_statval; // 0 ~ 2 장비 능력
|
|
public Image[] images_iteminfo; // 0 top이름bg, 1 top등급bg, 2 종류
|
|
|
|
protected ItemListTableData m_ItemData;
|
|
protected EquipmentListTableData m_Data;
|
|
protected SD_Slot m_SD_Slot;
|
|
EquipItemData m_EquipItemData = new EquipItemData();
|
|
|
|
public virtual void Set(EquipmentListTableData data)
|
|
{
|
|
base.Set();
|
|
m_Data = data;
|
|
m_ItemData = table_itemlist.Ins.Get_Data(m_Data.n_EquipID);
|
|
m_SD_Slot = ServerInfo.Ins.m_ServerData.Get_SlotData(m_Data.e_EquipParts);
|
|
}
|
|
|
|
protected virtual void Set_ItemInfo()
|
|
{
|
|
m_EquipItemData.id = m_Data.n_EquipID;
|
|
m_EquipItemData.itemType = m_ItemData.e_ItemType;
|
|
m_Card.Set(m_EquipItemData);
|
|
m_Card.Set_CardType(eUICardType.UIEquip);
|
|
|
|
texts_iteminfo[0].text = table_itemlist.Ins.Get_GradeName(m_ItemData.n_ItemID);
|
|
texts_iteminfo[1].text = table_itemlist.Ins.Get_ItemName(m_ItemData.n_ItemID);
|
|
texts_iteminfo[2].text = m_ItemData.Get_ItemTypeName();
|
|
|
|
images_iteminfo[2].sprite = UIAtlasMgr.Ins.Get_Sprite(DSUtil.Format("chest_{0}", m_ItemData.e_ItemType.ToString().ToLower()));
|
|
|
|
Set_ItemStat();
|
|
}
|
|
|
|
protected virtual void Set_ItemStat()
|
|
{
|
|
Set_Stat(m_Data.e_AbilityType1, texts_stat[0], texts_statval[0], m_Data.n_AbilityValue1);
|
|
Set_Stat(m_Data.e_AbilityType2, texts_stat[1], texts_statval[1], m_Data.n_AbilityValue2);
|
|
Set_Stat(m_Data.e_AbilityType3, texts_stat[2], texts_statval[2], m_Data.n_AbilityValue3);
|
|
}
|
|
|
|
void Set_Stat(eStat stat, TextMeshProUGUI t_stat, TextMeshProUGUI t_statval, int abil1)
|
|
{
|
|
if (stat != eStat.None)
|
|
{
|
|
var smeltinglv = ServerInfo.Ins.m_ServerData.Get_SmeltingLv(m_Data.n_EquipID);
|
|
var cursmeltingdata = table_equipsmelting.Ins.Get_Data(smeltinglv);
|
|
var nextsmeltingdata = table_equipsmelting.Ins.Get_Data(smeltinglv + 1);
|
|
|
|
var curstat = abil1 + abil1 * cursmeltingdata.f_IncreaseValueRate;
|
|
var nextstat = abil1 + abil1 * nextsmeltingdata.f_IncreaseValueRate;
|
|
t_stat.text = MyText.Get_StatName(stat);
|
|
t_statval.text = $"{NumberFormatter.FormatNumber(curstat)}<color=#fff21b>(+{NumberFormatter.FormatNumber(nextstat - curstat)})";
|
|
}
|
|
else
|
|
t_statval.text = t_stat.text = "";
|
|
}
|
|
} |