示例#1
0
        /// <summary>
        /// Add an effect to this object.
        /// </summary>
        /// <param name="Target">Effect.</param>
        public void AddEffect(IEffect Target, int Priority = 0)
        {
            if (State != ResourceState.Loaded)
            {
                Loaded += (PartialResource R) =>
                {
                    if (Effects.Contains(Target))
                    {
                        return;
                    }

                    Target.BindStream(Stream, Priority);

                    Effects.Add(Target);
                };
            }
            else
            {
                if (Effects.Contains(Target))
                {
                    return;
                }

                Target.BindStream(Stream, Priority);

                Effects.Add(Target);
            }
        }