Example #1
0
        public void AddModifier(IGameModifier modifier, ModifierParameters p)
        {
            p.Owner = this;

            _modifiers.Add(modifier);
            modifier.Initialize(p, this);
            modifier.Activate();

            foreach (var modifiableProperty in ModifiableProperties)
            {
                modifiableProperty.Accept(modifier);
            }
        }
Example #2
0
 public void Accept(IGameModifier modifier)
 {
     modifier.Apply(this);
 }
 public void Accept(IGameModifier modifier)
 {
     modifier.Apply(this);
 }
Example #4
0
 public void RemoveModifier(IGameModifier modifier)
 {
     _modifiers.Remove(modifier);
     modifier.Dispose();
 }