示例#1
0
    /// <summary>
    /// 摧毁指定的组件
    /// </summary>
    /// <param name="instance">需要清除的Blood</param>
    public static void Destroy(GfxBlood instance)
    {
        if (Movie.GetSingleton <GfxBloodMovie>() == null)
        {
            return;
        }
        if (null == instance)
        {
            return;
        }
        int id = instance.ID;

        if (instance.movieNode.isValid)
        {
            UnUsedMovieNodeList.Enqueue(instance.movieNode);
        }

        if (GfxBloodMovie.Instance != null)
        {
            GfxBloodMovie.Instance.RemoveMovieAS3(instance.Instance);
        }
        instance.Clear();

        if (m_BloodMap.ContainsKey(id))
        {
            m_BloodMap[id] = null;
            m_BloodMap.Remove(id);
        }
        instance = null;
    }
示例#2
0
 /// <summary>
 /// 清除所有的组件
 /// </summary>
 public static void DestroyALL()
 {
     if (Movie.GetSingleton <GfxBloodMovie>() == null)
     {
         return;
     }
     ClearCache();
     if (null != m_BloodMap)
     {
         foreach (KeyValuePair <int, GfxBlood> var in m_BloodMap)
         {
             GfxBlood gba = var.Value;
             if (GfxBloodMovie.Instance != null)
             {
                 GfxBloodMovie.Instance.RemoveMovieAS3(gba.Instance);
             }
             gba.Clear();
         }
         CurrentColIndex = 0;
         CurrentRowIndex = 0;
         UnUsedMovieNodeList.Clear();
         m_BloodMap.Clear();
     }
     if (null != BossBlood)
     {
         if (GfxDynamicMovie.Instance != null)
         {
             GfxDynamicMovie.Instance.RemoveMovieAS3(BossBlood.Instance);
         }
         BossBlood.Clear();
         BossBlood             = null;
         CurrentBossBlodHostID = -1;
     }
     BossBloodEntityTable.Clear();
     BossBloodProityList.Clear();
     //GFxWarPauseMenu.BoolEvent -= ChangeBloodSetting;
 }