Exemple #1
0
        private void UpdateBehavior(DependencyObject host, IBehavior behavior, DependencyPropertyChangedEventArgs propertyChangedEventArgs)
        {
            if (behavior.IsApplicable())
            {
                behavior.Update(propertyChangedEventArgs);
            }
            else
            {
                host.ClearValue(_property);

                behavior.Detach();
            }
        }
		private void UpdateBehavior(DependencyObject host, IBehavior behavior)
		{
			if(behavior.IsApplicable())
			{
				behavior.Update();
			}
			else
			{
				host.ClearValue(_property);

				behavior.Detach();
			}
		}
    private void UpdateBehavior(DependencyObject host, IBehavior behavior)
    {
        if (behavior.IsApplicable())
        {
            behavior.Update();
        }
        else
        {
            host.ClearValue(_property);

            behavior.Detach();
        }
    }
        public void Update(ref Bullet bullet)
        {
            if (_paramQueue.Count > 0)
            {
                if (_frameCounter == _paramQueue.Peek().ModOnFrame)
                {
                    var p = _paramQueue.Dequeue();
                    bullet.SetParameters(p);
                    _frameCounter = 0;
                    _behavior     = p.NewBehavior;
                    if (_paramQueue.Count == 0)
                    {
                        bullet.Behavior = _behavior;
                        SetInactive(this);
                        _behavior.Update(ref bullet);
                        return;
                    }
                }
            }

            ++_frameCounter;
            _behavior.Update(ref bullet);
        }