using System.Collections; using System.Collections.Generic; using UnityEngine; public class MailCard : CardBase { public UISprite[] sprites; // 0 아이콘 public UILabel[] labels; // 0 메시지, 1 남은 시간 ServerMailData m_ServerMailData; public override void Set(T _base) { base.Set(_base); m_ServerMailData = _base as ServerMailData; sprites[0].spriteName = DSUtil.Get_ItemSpriteInfo(m_ServerMailData.Item, m_ServerMailData.ID).Icon; sprites[0].MakePixelPerfect(); if (sprites[0].width > 55 || sprites[0].height > 55) sprites[0].SetDimensions(55, 55); labels[0].text = m_ServerMailData.Msg; var ts = m_ServerMailData.RemnantTime - ServerInfo.ServerTime; if (ts.TotalDays < 1) labels[1].text = DSUtil.Format(145, ts.Hours, ts.Minutes); else labels[1].text = DSUtil.Format(146, (int)ts.TotalDays); } public void OnClick_GetReward() { var item = m_ServerMailData.Item; var id = m_ServerMailData.ID; var amount = m_ServerMailData.RewardAmount; var isShopItem = m_ServerMailData.IsShopItem > 0; var sinfo = ServerInfo.Ins; sinfo.Get_MailReward(m_ServerMailData.RemainTime, error => { switch (error) { case 3: ToastUI.Ins.Set(144); break; default: var obtainlst = sinfo.m_ServerData.Add_Item(new ItemData(item, id, amount, "mail", eUICardType.GetItem)); if (isShopItem) { var shopdata = table_shop.Ins.Get_Data(item, id); if (shopdata != null) obtainlst.AddRange(sinfo.m_ServerData.Add_Item(new ItemData(eItem.mClover, 0, shopdata.Mileage, DSUtil.Format("shop {0} {1}", item, id), eUICardType.GetItem))); } if (obtainlst.Count > 0) GetItemUI.Ins.Set(obtainlst); sinfo.Write(() => { if (obtainlst.Count > 0) GetItemUI.Ins.Show_Items(); }); break; } //GameUI.Ins.LobbyUI.Get_MailUI().Del_Mail(m_ServerMailData); }); } }