Project_WL/Assets/Script/UI/Gacha/GachaBase.cs

48 lines
1.8 KiB
C#

using TMPro;
using UnityEngine;
using UnityEngine.UI;
public class GachaBase : MonoBehaviour
{
public TextMeshProUGUI[] texts; // 0 진행율, 1 혜택1, 2 혜택2, 3 반복뽑기 횟수
public btn_gacha[] gacha_btns; // 0 10회, 1 1회
public GameObject[] gos; // 0 한정상자 노티
public Slider m_slider;
public GachaRepeatReward m_GachaRepeatReward;
GachaConfigTableData m_Data;
public virtual void Set(int gacha)
{
gameObject.SetActive(true);
m_Data = table_gachaconfig.Ins.Get_Data_orNull(gacha);
Set_UI();
}
public void Set_UI()
{
gacha_btns[0].Set(10, m_Data);
gacha_btns[1].Set(1, m_Data);
var sdata = ServerInfo.Ins.m_ServerData;
var benefit1Count = table_GlobalValue.Ins.Get_Int("n_Benefit1Count");
var benefit2Count = table_GlobalValue.Ins.Get_Int("n_Benefit2Count");
var benefit1Grade = table_GlobalValue.Ins.Get_Int("n_Benefit1Grade");
var benefit2Grade = table_GlobalValue.Ins.Get_Int("n_Benefit2Grade");
texts[0].text = DSUtil.Format("{0}/{1}", sdata.Get_GachaPoint(m_Data.n_ID), m_Data.n_RepeatRewardPoint);
m_slider.value = DSUtil.Get_SliderValue(sdata.Get_GachaPoint(m_Data.n_ID) / (float)m_Data.n_RepeatRewardPoint);
texts[1].text = DSUtil.Format(380, benefit1Count - sdata.Get_GachaCount(m_Data.n_ID) % benefit1Count,
MyText.Get_GradeName(benefit1Grade));
texts[2].text = DSUtil.Format(380, benefit2Count - sdata.Get_GachaCount(m_Data.n_ID) % benefit2Count,
MyText.Get_GradeName(benefit2Grade));
texts[3].text = DSUtil.Format(379, m_Data.n_RepeatRewardPoint);
gos[0].SetActive(m_slider.value >= 1f);
NewGameUI.Ins.Set_Noti();
}
public void OnClick_RepeatReward()
{
m_GachaRepeatReward.Set(m_Data);
}
}