63 lines
1.8 KiB
C#
63 lines
1.8 KiB
C#
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.ResourceManagement.AsyncOperations;
|
|
using UnityEngine.UI;
|
|
|
|
public class AlbumCard : CardBase
|
|
{
|
|
public Image i_girl;
|
|
public TextMeshProUGUI t_price;
|
|
public GameObject[] gos; // 0 열기 버튼, 1 잠금 버튼
|
|
|
|
albumtabledata m_Data;
|
|
AsyncOperationHandle m_Handle;
|
|
|
|
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();
|
|
|
|
i_girl.enabled = false;
|
|
AddrResourceMgr.Ins.Relese(m_Handle);
|
|
AddrResourceMgr.Ins.LoadObject<Sprite>(m_Data.s_Image, handle =>
|
|
{
|
|
m_Handle = handle;
|
|
i_girl.enabled = true;
|
|
i_girl.sprite = handle.Result;
|
|
});
|
|
}
|
|
|
|
public override void Set_UI()
|
|
{
|
|
gos[0].SetActive(!SaveMgr.Ins.IsOpenAlbum(m_Data));
|
|
t_price.text = m_Data.n_Price.ToString();
|
|
//if (i_girl.enabled) i_girl.material = IsObtain() ? null : mat_blur;
|
|
gos[1].SetActive(!IsObtain());
|
|
}
|
|
|
|
public bool IsObtain() { return SaveMgr.Ins.IsOpenAlbum(m_Data); }
|
|
|
|
public void OnClick_Buy()
|
|
{
|
|
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();
|
|
|
|
LobbyUI.Ins.m_LobbyCenterProfileUI.Set(false);
|
|
LobbyUI.Ins.m_AlbumUI.Set_UI();
|
|
LobbyUI.Ins.m_ToastUI.Set("열린 앨범을 감상해 보세요.");
|
|
}
|
|
else
|
|
LobbyUI.Ins.m_ToastUI.Set("재화가 부족합니다.");
|
|
}
|
|
|
|
public void OnClick_Show()
|
|
{
|
|
if (IsObtain()) ShowAlbum.Ins.Show(m_Data, false);
|
|
else SoundInfo.Ins.Play_OneShot(eSound.s003_SelectAlbum);
|
|
}
|
|
} |