示例#1
0
 private EffectSystem()
 {
     m_default_category                    = new EffectCategoryData();
     m_default_category.m_category         = 0;
     m_default_category.m_uniqueness_type  = EffectUniquenessType.DifferentConflictID;
     m_default_category.m_rejection_type   = EffectRejectionType.Older;
     m_default_category.m_rejection_action = EffectRejectionAction.Destruct;
 }
示例#2
0
        ClassifiedEffectContainer GetContainer(int category_id)
        {
            ClassifiedEffectContainer container;

            if (!m_effects_by_class.TryGetValue(category_id, out container))
            {
                EffectCategoryData category = EffectSystem.Instance.GetCategory(category_id);
                if (category == null)
                {
                    return(null);
                }
                container = new ClassifiedEffectContainer(this, category);
                m_effects_by_class[category_id] = container;
            }
            return(container);
        }
示例#3
0
 public void RegisterEffectCategory(EffectCategoryData data)
 {
     m_categories[data.m_category] = data;
 }
 public void Destruct()
 {
     m_registry = null;
     m_category = null;
     m_active_effects.Clear();
 }
 public ClassifiedEffectContainer(EffectRegistry registry, EffectCategoryData category)
 {
     m_registry = registry;
     m_category = category;
 }