/// <summary> /// Add a new light behaviour to the component and start it immediately unless otherwise specified. /// </summary> public void AddNewLightBehaviour(LightBehaviourAnimationTrack behaviour, bool playImmediately = true) { int key = 0; while (_animations.Any(x => x.Key == key)) { key++; } var animation = new Animation() { AnimationTracks = { behaviour } }; behaviour.Initialize(_lightComponent); var container = new AnimationContainer(key, animation, behaviour); _animations.Add(container); if (playImmediately) { StartLightBehaviour(behaviour.ID); } }
public AnimationContainer(int key, Animation animation, LightBehaviourAnimationTrack track) { Key = key; Animation = animation; LightBehaviour = track; }