/// <summary> /// 创建隐藏实体完成事件。 /// </summary> /// <param name="entityId">实体编号。</param> /// <param name="entityAssetName">实体资源名称。</param> /// <param name="entityGroup">实体所属的实体组。</param> /// <param name="userData">用户自定义数据。</param> /// <returns>创建的隐藏实体完成事件。</returns> public static HideEntityCompleteEventArgs Create(int entityId, string entityAssetName, IEntityGroup entityGroup, object userData) { HideEntityCompleteEventArgs hideEntityCompleteEventArgs = ReferencePool.Acquire <HideEntityCompleteEventArgs>(); hideEntityCompleteEventArgs.EntityId = entityId; hideEntityCompleteEventArgs.EntityAssetName = entityAssetName; hideEntityCompleteEventArgs.EntityGroup = entityGroup; hideEntityCompleteEventArgs.UserData = userData; return(hideEntityCompleteEventArgs); }
void HideEntitySuccessCallback(object sender, GameEventArgs e) { HideEntityCompleteEventArgs args = e as HideEntityCompleteEventArgs; if (args == null) { return; } m_EnitityIds.Remove(args.EntityId); if (m_EnitityIds.Count == 0) { GameEntry.Event.Unsubscribe(HideEntityCompleteEventArgs.EventId, HideEntitySuccessCallback); if (m_HideEntitiesCompleteCallback != null) { m_HideEntitiesCompleteCallback(); m_HideEntitiesCompleteCallback = null; } } }