| | |
| | |
|
| | | private void OnEnable()
|
| | | {
|
| | | DisplayTime();
|
| | | SecondEvent();
|
| | | GlobalTimeEvent.Instance.secondEvent -= SecondEvent;
|
| | | GlobalTimeEvent.Instance.secondEvent += SecondEvent;
|
| | | OperationTimeHepler.Instance.dayResetEvent -= DayResetEvent;
|
| | |
| | |
|
| | | private void DayResetEvent(int resetType)
|
| | | {
|
| | | DisplayTime();
|
| | | SecondEvent();
|
| | | }
|
| | |
|
| | | private void SecondEvent()
|
| | |
| | | if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.FlashSale, out operationBase))
|
| | | {
|
| | | var operation = (operationBase as OperationFlashSale);
|
| | | var seconds = operation.GetSurplusTime();
|
| | | m_Time.timeShow.color = seconds > 3600 ? UIHelper.GetUIColor(TextColType.Green) : UIHelper.GetUIColor(TextColType.Red);
|
| | | var seconds = operation.GetResetSurplusTime();
|
| | | if (seconds * TimeSpan.TicksPerSecond >= TimeSpan.TicksPerDay || seconds <= 0)
|
| | | {
|
| | | if (m_Time.gameObject.activeSelf)
|
| | | {
|
| | | DisplayTime(0);
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | m_Time.timeShow.color = seconds > 3600 ? UIHelper.GetUIColor(TextColType.Green) : UIHelper.GetUIColor(TextColType.Red);
|
| | | if (!m_Time.gameObject.activeSelf)
|
| | | {
|
| | | DisplayTime(seconds);
|
| | | }
|
| | | }
|
| | | }
|
| | | }
|
| | |
|
| | |
| | | OperationTimeHepler.Instance.dayResetEvent -= DayResetEvent;
|
| | | }
|
| | |
|
| | | void DisplayTime()
|
| | | void DisplayTime(int seconds)
|
| | | {
|
| | | OperationBase operationBase;
|
| | | if (OperationTimeHepler.Instance.TryGetOperationTime(Operation.FlashSale, out operationBase))
|
| | | {
|
| | | var seconds = (operationBase as OperationFlashSale).GetSurplusTime();
|
| | | m_Time.timeShow.color = seconds > 3600 ? UIHelper.GetUIColor(TextColType.Green) : UIHelper.GetUIColor(TextColType.Red);
|
| | | m_Time.Begin(DateTime.Now.AddTicks(seconds * TimeSpan.TicksPerSecond));
|
| | | }
|
| | | m_Time.timeShow.color = seconds > 3600 ? UIHelper.GetUIColor(TextColType.Green) : UIHelper.GetUIColor(TextColType.Red);
|
| | | m_Time.Begin(DateTime.Now.AddTicks(seconds * TimeSpan.TicksPerSecond));
|
| | | }
|
| | | }
|
| | | } |
| | |
| | | if (operationBase != null)
|
| | | {
|
| | | OperationFlashSale operation = operationBase as OperationFlashSale;
|
| | | seconds = operation.GetSurplusTime();
|
| | | seconds = operation.GetResetSurplusTime();
|
| | | }
|
| | | if (seconds > 0)
|
| | | {
|
| | |
| | | return seconds;
|
| | | }
|
| | |
|
| | | public int GetResetSurplusTime()
|
| | | {
|
| | | var time = TimeUtility.ServerNow;
|
| | | if (!InTime(time))
|
| | | {
|
| | | return 0;
|
| | | }
|
| | | var seconds = 0;
|
| | | if (allDay)
|
| | | {
|
| | | if (!dayReset)
|
| | | {
|
| | | return GetSurplusTime(time);
|
| | | }
|
| | | if (resetType == 0)
|
| | | {
|
| | | DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
|
| | | TimeUtility.Day, 0, 0, 0);
|
| | | endOperationTime = endOperationTime.AddDays(1);
|
| | | seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | else if (resetType == 1)
|
| | | {
|
| | | DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
|
| | | TimeUtility.Day, DayResetHour, 0, 0);
|
| | | if (time.Hour >= DayResetHour)
|
| | | {
|
| | | endOperationTime = endOperationTime.AddDays(1);
|
| | | }
|
| | | seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | for (int i = 0; i < times.Count; i++)
|
| | | {
|
| | | if (times[i].InTime(time))
|
| | | {
|
| | | DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
|
| | | TimeUtility.Day, times[i].endHour, times[i].endMinute, 0);
|
| | | seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
|
| | | break;
|
| | | }
|
| | | }
|
| | | }
|
| | | return seconds;
|
| | | }
|
| | |
|
| | | public virtual string ToDisplayTime()
|
| | | {
|
| | | return string.Empty;
|
| | |
| | | return textBuilder.ToString();
|
| | | }
|
| | |
|
| | | public int GetSurplusTime()
|
| | | {
|
| | | var time = TimeUtility.ServerNow;
|
| | | if (!InTime(time))
|
| | | {
|
| | | return 0;
|
| | | }
|
| | | var seconds = 0;
|
| | | if (allDay)
|
| | | {
|
| | | if (!dayReset)
|
| | | {
|
| | | return GetSurplusTime(time);
|
| | | }
|
| | | if (resetType == 0)
|
| | | {
|
| | | DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
|
| | | TimeUtility.Day, 0, 0, 0);
|
| | | endOperationTime = endOperationTime.AddDays(1);
|
| | | seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | else if (resetType == 1)
|
| | | {
|
| | | DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
|
| | | TimeUtility.Day, DayResetHour, 0, 0);
|
| | | if (time.Hour >= DayResetHour)
|
| | | {
|
| | | endOperationTime = endOperationTime.AddDays(1);
|
| | | }
|
| | | seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
|
| | | }
|
| | | }
|
| | | else
|
| | | {
|
| | | for (int i = 0; i < times.Count; i++)
|
| | | {
|
| | | if (times[i].InTime(time))
|
| | | {
|
| | | DateTime endOperationTime = new DateTime(TimeUtility.Year, TimeUtility.Month,
|
| | | TimeUtility.Day, times[i].endHour, times[i].endMinute, 0);
|
| | | seconds = (int)(endOperationTime - TimeUtility.ServerNow).TotalSeconds;
|
| | | break;
|
| | | }
|
| | | }
|
| | | }
|
| | | return seconds;
|
| | | }
|
| | |
|
| | | public void ParsePackage(HAA11_tagMCSpringSaleInfo package)
|
| | | {
|
| | | for (int i = 0; i < package.ShopCount; i++)
|