Beispiel #1
0
    /// <summary>
    /// 确定使用哪个时间段的活动
    /// </summary>
    private void RefreshActiveTime()
    {
        var t = Util.GetTimeStamp(false, true);

        if (state < State.Processing)
        {
            var offset = int.MaxValue;
            for (var i = 0; i < m_info.activeTime.Length; i++)
            {
                if (t <= m_info.activeTime[i].startTime)
                {
                    var o = m_info.activeTime[i].startTime - t;
                    if (o < offset)
                    {
                        offset = o;
                        m_currentActiveTime = m_info.activeTime[i];
                    }
                }
            }
        }
        else if (state == State.Processing)
        {
            for (var i = 0; i < m_info.activeTime.Length; i++)
            {
                if (t >= m_info.activeTime[i].startTime && t <= m_info.activeTime[i].endTime)
                {
                    m_currentActiveTime = m_info.activeTime[i];
                    break;
                }
            }
        }
    }
Beispiel #2
0
    protected override void OnGameDataReset()
    {
        base.OnGameDataReset();

        m_battleInfo?.Destroy();
        m_battleInfo = null;

        m_selfInfo?.Destroy();
        m_selfInfo = null;

        m_info?.Destroy();
        m_info = null;

        m_currentActiveTime?.Destroy();
        m_currentActiveTime = null;

        m_message.Clear();
    }