public void RemoveAnnounceShow(AnnounceItemNode node) { if (mShowList.Count > 0) { mShowList.Remove(node); } }
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); }
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; } } } }
public void AddNewAnnounceShow(AnnounceItemNode node) { mShowList.Add(node); }
public void ReleaseAnnounceItem(AnnounceItemNode node) { node.Hide(); mCacheQueue.Enqueue(node); }