Beispiel #1
0
 public void RemoveAnnounceShow(AnnounceItemNode node)
 {
     if (mShowList.Count > 0)
     {
         mShowList.Remove(node);
     }
 }
Beispiel #2
0
    public AnnounceItemNode CreateAnnounceItem(string str)
    {
        AnnounceItemNode node = null;

        if (mCacheQueue.Count > 0)
        {
            node = mCacheQueue.Dequeue() as AnnounceItemNode;
            node.InitItem(str);
        }
        else
        {
            node = new AnnounceItemNode();

            node.Init();
            node.InitItem(str);
        }
        node.isend = false;
        AddNewAnnounceShow(node);
        return(node);
    }
    private bool OnCreateItem()
    {
        int maxnum = DataManager.AnnouncementTable.Count;

        for (int id = 1; id < maxnum + 1; id++)
        {
            AnnouncementItem items = DataManager.AnnouncementTable[id] as AnnouncementItem;
            if (items == null)
            {
                return(false);
            }
            ulong  starTime     = (ulong)ToSec(items.starttime);
            ulong  endTime      = (ulong)ToSec(items.endtime);
            ulong  intervalTime = (ulong)items.interval;
            ulong  now          = TimeUtilities.GetNow();
            double nowsec       = now / 1000;
            ulong  nowTime      = (ulong)nowsec % (24 * 60 * 60);
            double breakTime    = (nowsec - starTime) % intervalTime;
            if ((0 < endTime && nowTime > starTime && nowTime < endTime) || (0 >= endTime && nowTime > starTime))
            {
                if (breakTime < 1)
                {
                    if (AnnounceItemManager.Instance.SetHide == false && (AnnounceItemManager.Instance.nextflag == true || AnnounceItemManager.Instance.ishide == true))
                    {
                        if (mContent.gameObject.activeSelf == false)
                        {
                            NGUITools.SetActive(mContent.gameObject, true);
                        }
                        mAnnounceItemNode                     = AnnounceItemManager.Instance.CreateAnnounceItem(items.describe);
                        mAnnounceItemNode.nextFlag            = false;
                        AnnounceItemManager.Instance.nextflag = false;
                        AnnounceItemManager.Instance.ishide   = false;
                        mAnnounceItemNode.Show();

                        return(true);
                    }
                }
            }
        }
        return(false);
    }
Beispiel #4
0
 public void Update()
 {
     if (WindowManager.current2DCamera != null)
     {
         if (mShowList.Count == 0)
         {
             ishide   = true;
             nextflag = true;
         }
         else
         {
             ishide = false;
             for (int i = 0; i < mShowList.Count; ++i)
             {
                 AnnounceItemNode _node = mShowList[i] as AnnounceItemNode;
                 Vector3          post  = _node.mUI.gameObject.transform.localPosition;
                 if (post.x < 480 - _node.mUI.itemWidth && !_node.nextFlag)
                 {
                     _node.nextFlag = true;
                     passnum++;
                 }
                 if (post.x >= -(480 + _node.mUI.itemWidth))
                 {
                     _node.mUI.gameObject.transform.Translate(-Time.deltaTime * 0.2f, 0, 0, Space.Self);
                 }
                 else
                 {
                     _node.isend = true;
                     RemoveAnnounceShow(_node);
                     passnum--;
                     ReleaseAnnounceItem(_node);
                 }
             }
             if (passnum >= AnnounceItemManager.Instance.mShowList.Count)
             {
                 AnnounceItemManager.Instance.nextflag = true;
             }
         }
     }
 }
Beispiel #5
0
 public void AddNewAnnounceShow(AnnounceItemNode node)
 {
     mShowList.Add(node);
 }
Beispiel #6
0
 public void ReleaseAnnounceItem(AnnounceItemNode node)
 {
     node.Hide();
     mCacheQueue.Enqueue(node);
 }