using IVDataFormat; using TMPro; using UnityEngine; using UnityEngine.UI; public class EventTab : MonoBehaviour { int Key; public void SetKey(int key) { Key = key; } [SerializeField] Image bg; Image imgEvent; TextMeshProUGUI txtTitle; TextMeshProUGUI txtExplain; GameObject bgLock; GameObject objSingleTimer; TextMeshProUGUI txtSingleTimer; GameObject objDoubleTimer; TextMeshProUGUI txtDoubleTimer; TextMeshProUGUI txtDoubleTimerShop; GameObject objLockTimer; TextMeshProUGUI txtLockTimer; public void FirstOpen() { imgEvent = transform.Find("EventImage").GetComponent(); txtTitle = transform.Find("txtTabTitle").GetComponent(); txtExplain = transform.Find("txtTabExplain").GetComponent(); bgLock = transform.Find("bgLock").gameObject; objSingleTimer = transform.Find("bgTime").gameObject; txtSingleTimer = objSingleTimer.transform.Find("txtTabLimitTime").GetComponent(); objDoubleTimer = transform.Find("bgDoubleTime").gameObject; txtDoubleTimer = objDoubleTimer.transform.Find("txtTabLimitTime").GetComponent(); txtDoubleTimerShop = objDoubleTimer.transform.Find("txtTabLimitShopTime").GetComponent(); objLockTimer = transform.Find("LockEvent").gameObject; txtLockTimer = objLockTimer.transform.Find("txtLockTimer").GetComponent(); dEvent eventdata = DataHandler.GetEvent(Key); switch (eventdata.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; } BtnEvent(Key); } public void SecondOpen() { BtnEvent(Key); } public void Close() { imgEvent.sprite = null; } // 이벤트 세부 페이지 열기. public void BtnOpenEvent() { if (objSingleTimer.activeSelf) EventMgr.SOpenEvent(Key, imgEvent.sprite, bg.color, txtTitle.text, txtExplain.text, txtSingleTimer.text, null, true); else EventMgr.SOpenEvent(Key, 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) { //if (iSelectedEvent >= 0) // eventItems[iSelectedEvent].SetOnButton(); //iSelectedEvent = index; //if (iSelectedEvent >= 0) // eventItems[iSelectedEvent].SetOffButton(); dEvent eventdata = DataHandler.GetEvent(key); if (eventdata == null) return; SvConnectManager.Instance.RequestEventImage(eventdata.path, SetImage); //SetEventListImage(eventdata.path); //if (eventdata.setEvent != -1) // txtDate.text = FormatString.GetTerm(eventdata.repeat, eventdata.startAt, eventdata.endAt); //else // txtDate.text = ""; } public void SetImage(Sprite img) { //Sprite sprbefore = imgEventbanner.sprite; imgEvent.sprite = img; int[] bgcolor = DataHandler.GetEvent(Key).bgColor; bg.color = new Color(bgcolor[0] / 255f, bgcolor[1] / 255f, bgcolor[2] / 255f); TextSetting(); //Resources.UnloadAsset(sprbefore); } public void TextSetting() { dEvent eventdata = DataHandler.GetEvent(Key); string strmovetype = ((int)eventdata.moveType).ToString(); txtTitle.text = LocalizationText.GetText(FormatString.CombineAllString("event", strmovetype)); txtExplain.text = LocalizationText.GetText(FormatString.CombineAllString("eventdesc", strmovetype)); if(eventdata.startAt > TimeUtils.Now()) { objSingleTimer.SetActive(false); objDoubleTimer.SetActive(false); objLockTimer.SetActive(true); txtLockTimer.text = FormatString.CombineAllString(FormatString.TextLeftTimeDH(eventdata.startAt)); } else { objLockTimer.SetActive(false); switch (eventdata.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(eventdata.endAt)); txtDoubleTimerShop.text = FormatString.CombineAllString(LocalizationText.GetText("event_shop_time"), " : ", FormatString.TextLeftTimeDH(eventdata.endAt.AddDays(3))); break; default: txtSingleTimer.text = FormatString.CombineAllString(LocalizationText.GetText("event_time"), " : ", FormatString.TextLeftTimeDH(eventdata.endAt)); break; } } } #endregion }