You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
133 lines
5.2 KiB
133 lines
5.2 KiB
using IVDataFormat;
|
|
using Spine;
|
|
using TMPro;
|
|
using UnityEngine;
|
|
using UnityEngine.UI;
|
|
|
|
public class EventTab : MonoBehaviour
|
|
{
|
|
public dEvent CurrentEvent { get; set; }
|
|
|
|
[SerializeField]
|
|
Image bg;
|
|
Image imgEvent;
|
|
TextMeshProUGUI txtTitle;
|
|
TextMeshProUGUI txtExplain;
|
|
GameObject objSingleTimer;
|
|
TextMeshProUGUI txtSingleTimer;
|
|
GameObject objDoubleTimer;
|
|
TextMeshProUGUI txtDoubleTimer;
|
|
TextMeshProUGUI txtDoubleTimerShop;
|
|
GameObject objLockTimer;
|
|
TextMeshProUGUI txtLockTimer;
|
|
|
|
public void FirstOpen()
|
|
{
|
|
imgEvent = transform.Find("EventImage").GetComponent<Image>();
|
|
txtTitle = transform.Find("txtTabTitle").GetComponent<TextMeshProUGUI>();
|
|
txtExplain = transform.Find("txtTabExplain").GetComponent<TextMeshProUGUI>();
|
|
objSingleTimer = transform.Find("bgTime").gameObject;
|
|
txtSingleTimer = objSingleTimer.transform.Find("txtTabLimitTime").GetComponent<TextMeshProUGUI>();
|
|
objDoubleTimer = transform.Find("bgDoubleTime").gameObject;
|
|
txtDoubleTimer = objDoubleTimer.transform.Find("txtTabLimitTime").GetComponent<TextMeshProUGUI>();
|
|
txtDoubleTimerShop = objDoubleTimer.transform.Find("txtTabLimitShopTime").GetComponent<TextMeshProUGUI>();
|
|
objLockTimer = transform.Find("LockEvent").gameObject;
|
|
txtLockTimer = objLockTimer.transform.Find("txtLockTimer").GetComponent<TextMeshProUGUI>();
|
|
|
|
switch (CurrentEvent.moveType)
|
|
{
|
|
case eEventMoveType.Exchange:
|
|
case eEventMoveType.Roulette:
|
|
case eEventMoveType.Raise:
|
|
objSingleTimer.SetActive(false);
|
|
objDoubleTimer.SetActive(true);
|
|
break;
|
|
|
|
default:
|
|
objSingleTimer.SetActive(true);
|
|
objDoubleTimer.SetActive(false);
|
|
break;
|
|
}
|
|
|
|
SvConnectManager.Instance.RequestEventImage(CurrentEvent.path, SetImage);
|
|
}
|
|
|
|
public void SecondOpen()
|
|
{
|
|
SvConnectManager.Instance.RequestEventImage(CurrentEvent.path, SetImage);
|
|
}
|
|
|
|
public void Close()
|
|
{
|
|
imgEvent.sprite = null;
|
|
}
|
|
|
|
// 이벤트 세부 페이지 열기.
|
|
public void BtnOpenEvent()
|
|
{
|
|
if (objSingleTimer.activeSelf)
|
|
EventMgr.SOpenEvent(CurrentEvent.id, imgEvent.sprite, bg.color, txtTitle.text, txtExplain.text, txtSingleTimer.text, null, true);
|
|
else
|
|
EventMgr.SOpenEvent(CurrentEvent.id, imgEvent.sprite, bg.color, txtTitle.text, txtExplain.text, txtDoubleTimer.text, txtDoubleTimerShop.text, false);
|
|
|
|
SoundMgr.PlaySfx(SoundName.BtnPress);
|
|
}
|
|
|
|
#region Event Image & TextSet
|
|
public void BtnEvent(int key)
|
|
{
|
|
dEvent eventdata = DataHandler.GetEvent(key);
|
|
if (eventdata == null) return;
|
|
SvConnectManager.Instance.RequestEventImage(eventdata.path, SetImage);
|
|
}
|
|
|
|
public void SetImage(Sprite img)
|
|
{
|
|
imgEvent.sprite = img;
|
|
int[] bgcolor = CurrentEvent.bgColor;
|
|
bg.color = new Color(bgcolor[0] / 255f, bgcolor[1] / 255f, bgcolor[2] / 255f);
|
|
TextSetting();
|
|
}
|
|
|
|
public void TextSetting()
|
|
{
|
|
string strmovetype = ((int)CurrentEvent.moveType).ToString();
|
|
txtTitle.text = LocalizationText.GetText(FormatString.CombineAllString("event", strmovetype));
|
|
txtExplain.text = LocalizationText.GetText(FormatString.CombineAllString("eventdesc", strmovetype));
|
|
|
|
if(CurrentEvent.startAt > TimeUtils.Now())
|
|
{
|
|
objSingleTimer.SetActive(false);
|
|
objDoubleTimer.SetActive(false);
|
|
objLockTimer.SetActive(true);
|
|
|
|
txtLockTimer.text = FormatString.CombineAllString(FormatString.TextLeftTimeDH(CurrentEvent.startAt));
|
|
}
|
|
else
|
|
{
|
|
objLockTimer.SetActive(false);
|
|
|
|
switch (CurrentEvent.moveType)
|
|
{
|
|
case eEventMoveType.Attend10:
|
|
txtSingleTimer.text = FormatString.CombineAllString(LocalizationText.GetText("event_time"), " : ", FormatString.TextLeftTimeDH(DataHandler.GetSysAttend()[(int)AttendMgr.AttendType.AttendTen].endAt));
|
|
break;
|
|
case eEventMoveType.Attend7:
|
|
txtSingleTimer.text = FormatString.CombineAllString(LocalizationText.GetText("event_time"), " : ", FormatString.TextLeftTimeDH(DataHandler.GetSysAttend()[(int)AttendMgr.AttendType.AttendSeven].endAt));
|
|
break;
|
|
|
|
case eEventMoveType.Exchange:
|
|
case eEventMoveType.Roulette:
|
|
case eEventMoveType.Raise:
|
|
txtDoubleTimer.text = FormatString.CombineAllString(LocalizationText.GetText("event_drop_time"), " : ", FormatString.TextLeftTimeDH(CurrentEvent.endAt));
|
|
txtDoubleTimerShop.text = FormatString.CombineAllString(LocalizationText.GetText("event_shop_time"), " : ", FormatString.TextLeftTimeDH(CurrentEvent.endAt.AddDays(3)));
|
|
break;
|
|
|
|
default:
|
|
txtSingleTimer.text = FormatString.CombineAllString(LocalizationText.GetText("event_time"), " : ", FormatString.TextLeftTimeDH(CurrentEvent.endAt));
|
|
break;
|
|
}
|
|
}
|
|
}
|
|
#endregion
|
|
}
|