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.
 
 
 
 
 
 

158 lines
5.8 KiB

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<Image>();
txtTitle = transform.Find("txtTabTitle").GetComponent<TextMeshProUGUI>();
txtExplain = transform.Find("txtTabExplain").GetComponent<TextMeshProUGUI>();
bgLock = transform.Find("bgLock").gameObject;
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>();
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
}