//------------------------------------------- void Update() { float realTime = Time.realtimeSinceStartup; for (int i = 0; i < mDropFlyItemList.Count; i++) { DropFlyItem item = mDropFlyItemList[i]; if (null != item) { item.UpdateItem(realTime); if (realTime > item.GetStayTime()) { RecycleDropFlyItem(item, true); } } } for (int i = 0; i < mDropGoldFlyItemList.Count; i++) { DropGoldFlyItem item = mDropGoldFlyItemList[i]; if (null != item) { item.UpdateItem(realTime); if (realTime > item.GetAnimationTime() + item.mAniStart) { RecycleDropGoldFlyItem(item); } } } for (int i = 0; i < mDropFlyTipItemList.Count; i++) { DropFlyTipItem item = mDropFlyTipItemList[i]; if (null != item) { item.UpdateItem(realTime); if (realTime > item.GetAnimationTime() + item.mAniStart) { RecycleDropFlyTipItem(item); } } } if (Time.realtimeSinceStartup - mLastTime > mIntervalTime) { if (mProcessFlyTips.Count > 0) { FlyTipInfo info = mProcessFlyTips.Dequeue(); ShowDropFlyTipItem(info.name, info.quality); mLastTime = Time.realtimeSinceStartup; } } }
private void OnEvent() { if (EventToUI.sEvent.CompareTo("EU_ADD_DROPITEMTEXT") == 0) { GameObject dropItemObj = (GameObject)EventToUI.GetArg(UIEventArg.Arg1); string text = (string)EventToUI.GetArg(UIEventArg.Arg2); int quality = (int)EventToUI.GetArg(UIEventArg.Arg3); if (-1 == quality) { return; } Create(dropItemObj, text, quality); } else if (EventToUI.sEvent.CompareTo("EU_REMOVE_DROPITEMTEXT") == 0) { GameObject dropItemObj = (GameObject)EventToUI.GetArg(UIEventArg.Arg1); for (int i = 0; i < mDropTextList.Count; ++i) { if (mDropTextList[i].dropItemObj == dropItemObj) { RecycleDropText(mDropTextList[i]); } } } else if (EventToUI.sEvent.CompareTo("EU_SHOW_DROPFLY") == 0) { string icon = (string)EventToUI.GetArg(UIEventArg.Arg1); Vector3 from = (Vector3)EventToUI.GetArg(UIEventArg.Arg2); Vector3 to = (Vector3)EventToUI.GetArg(UIEventArg.Arg3); string itemName = (string)EventToUI.GetArg(UIEventArg.Arg4); int quality = (int)EventToUI.GetArg(UIEventArg.Arg5); ShowDropFlyItem(Time.realtimeSinceStartup, icon, from, to, itemName, quality); } else if (EventToUI.sEvent.CompareTo("EU_SHOW_DROPGOLDGFLY") == 0) { int count = (int)EventToUI.GetArg(UIEventArg.Arg1); Vector3 pos = (Vector3)EventToUI.GetArg(UIEventArg.Arg2); ShowDropGoldFlyItem(count, pos); } else if (EventToUI.sEvent.CompareTo("EU_SHOW_DROPFLYTIP") == 0) { FlyTipInfo info = new FlyTipInfo(); info.name = (string)EventToUI.GetArg(UIEventArg.Arg1); info.quality = (int)EventToUI.GetArg(UIEventArg.Arg2); mProcessFlyTips.Enqueue(info); } }