root/src/BRAINSFramework/Behaviors/ParallelBehavior.cs

User picture

Author: conkerjo

Revision: 30 («Previous)


File Size: 956 Bytes

(July 05, 2009 18:01 UTC) Almost 3 years ago

Behavior Refactoring

 
Show/hide line numbers
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using Brains.Framework.Behaviors;

namespace Brains.Framework.Behaviors
{
    [Brains.Framework.Designer.Behavior("ParallelBehavior")]
    public class ParallelBehavior:CompositeBehavior
    {
        public ParallelBehavior()
        {
        }
        public override void Update(Microsoft.Xna.Framework.GameTime gameTime)
        {
            for (int i = 0; i < SubBehaviors.Count; i++)
            {
                CurrentSubBehavior=i;
                base.Update(gameTime);
            }
            CurrentSubBehavior = 0;
        }
        public override void OnSubBehaviorFailure()
        {
            State = BehaviorState.Failed;
        }
        public override void OnSubBehaviorSuccess()
        {
            SubBehaviors[CurrentSubBehavior].Reset();
            base.OnSubBehaviorSuccess();
        }
    }
}