2025-11-25 19:58:58 +00:00
|
|
|
using TMPro;
|
2025-12-16 03:35:43 +00:00
|
|
|
using TreeEditor;
|
2025-11-25 19:58:58 +00:00
|
|
|
using UnityEngine;
|
|
|
|
|
using UnityEngine.UI;
|
|
|
|
|
|
|
|
|
|
public class AlbumCard : CardBase
|
|
|
|
|
{
|
|
|
|
|
public Image i_girl;
|
|
|
|
|
public TextMeshProUGUI t_price;
|
2025-12-16 03:57:53 +00:00
|
|
|
public GameObject[] gos; // 0 열기 버튼, 1 잠금 버튼, 2 스페셜 앨범 즉시개방 버튼
|
2025-11-25 19:58:58 +00:00
|
|
|
|
|
|
|
|
albumtabledata m_Data;
|
|
|
|
|
|
|
|
|
|
public override void Set<T>(T _base, int iLoop = -1, int idata = -1)
|
|
|
|
|
{
|
|
|
|
|
base.Set(_base, iLoop, idata);
|
|
|
|
|
m_Data = _base as albumtabledata;
|
|
|
|
|
Set_UI();
|
2025-12-15 07:14:11 +00:00
|
|
|
Load_Image(i_girl, m_Data.s_Image);
|
2025-11-25 19:58:58 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public override void Set_UI()
|
|
|
|
|
{
|
2025-12-16 03:03:15 +00:00
|
|
|
if (m_Data.e_CollectionMethod == eCollectionMethod.Normal)
|
|
|
|
|
{
|
2025-12-16 03:35:43 +00:00
|
|
|
var preDatas = table_album.Ins.Get_PreDatas(m_Data);
|
|
|
|
|
var existnotopen = false;
|
|
|
|
|
for (int i = 0; i < preDatas.Count; i++)
|
|
|
|
|
{
|
|
|
|
|
if (!SaveMgr.Ins.IsOpenAlbum(preDatas[i]))
|
|
|
|
|
{
|
|
|
|
|
existnotopen = true;
|
|
|
|
|
break;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
gos[0].SetActive(SaveMgr.Ins.IsObtainGirl(m_Data.n_GirlID) && !SaveMgr.Ins.IsOpenAlbum(m_Data) && !existnotopen);
|
2025-12-16 03:57:53 +00:00
|
|
|
gos[2].SetActive(false);
|
2025-12-16 03:03:15 +00:00
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
{
|
2025-12-16 03:57:53 +00:00
|
|
|
gos[0].SetActive(false);
|
|
|
|
|
gos[2].SetActive(SaveMgr.Ins.IsObtainGirl(m_Data.n_GirlID) && !SaveMgr.Ins.IsOpenAlbum(m_Data));
|
2025-12-16 03:03:15 +00:00
|
|
|
}
|
2025-11-25 19:58:58 +00:00
|
|
|
t_price.text = m_Data.n_Price.ToString();
|
|
|
|
|
gos[1].SetActive(!IsObtain());
|
|
|
|
|
}
|
|
|
|
|
|
2025-12-04 07:00:36 +00:00
|
|
|
public bool IsObtain() { return SaveMgr.Ins.IsOpenAlbum(m_Data); }
|
2025-11-25 19:58:58 +00:00
|
|
|
|
|
|
|
|
public void OnClick_Buy()
|
|
|
|
|
{
|
2025-12-16 03:57:53 +00:00
|
|
|
if (m_Data.e_CollectionMethod == eCollectionMethod.Normal)
|
2025-11-25 19:58:58 +00:00
|
|
|
{
|
2025-12-16 03:57:53 +00:00
|
|
|
if (SaveMgr.Ins.Check_Money(eMoney.AlbumOpen, m_Data.n_Price))
|
|
|
|
|
{
|
|
|
|
|
SaveMgr.Ins.Add_Money(eMoney.AlbumOpen, -m_Data.n_Price);
|
|
|
|
|
SaveMgr.Ins.Open_Album(m_Data);
|
|
|
|
|
SaveMgr.Ins.Save();
|
2025-11-25 19:58:58 +00:00
|
|
|
|
2025-12-16 03:57:53 +00:00
|
|
|
LobbyUI.Ins.m_LobbyCenterProfileUI.Set(false);
|
|
|
|
|
LobbyUI.Ins.m_AlbumUI.Set_UI();
|
|
|
|
|
LobbyUI.Ins.m_ToastUI.Set("열린 앨범을 감상해 보세요.");
|
|
|
|
|
}
|
|
|
|
|
else
|
|
|
|
|
LobbyUI.Ins.m_ToastUI.Set("재화가 부족합니다.");
|
2025-11-25 19:58:58 +00:00
|
|
|
}
|
|
|
|
|
else
|
2025-12-16 03:57:53 +00:00
|
|
|
{
|
|
|
|
|
LobbyUI.Ins.m_AlbumUI.m_SpecialAlbumOpen.Set(m_Data);
|
|
|
|
|
}
|
2025-11-25 19:58:58 +00:00
|
|
|
}
|
|
|
|
|
|
|
|
|
|
public void OnClick_Show()
|
|
|
|
|
{
|
|
|
|
|
if (IsObtain()) ShowAlbum.Ins.Show(m_Data, false);
|
|
|
|
|
else SoundInfo.Ins.Play_OneShot(eSound.s003_SelectAlbum);
|
|
|
|
|
}
|
|
|
|
|
}
|