internal virtual void AddEvent(EventType e, EasingType easing, float startTime, float endTime, float[] start, float[] end) { CommonEvent newCommonEvent; if (end == null || end.Length == 0) { end = start; } switch (e) { case EventType.Fade: newCommonEvent = new Fade(easing, startTime, endTime, start[0], end[0]); break; case EventType.Move: newCommonEvent = new Move(easing, startTime, endTime, start[0], start[1], end[0], end[1]); break; case EventType.MoveX: newCommonEvent = new MoveX(easing, startTime, endTime, start[0], end[0]); break; case EventType.MoveY: newCommonEvent = new MoveY(easing, startTime, endTime, start[0], end[0]); break; case EventType.Scale: newCommonEvent = new Scale(easing, startTime, endTime, start[0], end[0]); break; case EventType.Vector: newCommonEvent = new Vector(easing, startTime, endTime, start[0], start[1], end[0], end[1]); break; case EventType.Rotate: newCommonEvent = new Rotate(easing, startTime, endTime, start[0], end[0]); break; case EventType.Color: newCommonEvent = new Color(easing, startTime, endTime, start[0], start[1], start[2], end[0], end[1], end[2]); break; case EventType.Parameter: newCommonEvent = new Parameter(easing, startTime, endTime, (ParameterType)(int)start[0]); break; default: throw new ArgumentOutOfRangeException(nameof(e), e, null); } //List //if (sequential) // EventList.AddSorted(newEvent); //else // EventList.Add(newEvent); //SortedSet EventList.Add(newCommonEvent); }
internal virtual void AddEvent(EventType e, EasingType easing, float startTime, float endTime, float[] start, float[] end) { CommonEvent newCommonEvent; if (end == null || end.Length == 0) { end = start; } if (e == EventTypes.Fade) { newCommonEvent = new Fade(easing, startTime, endTime, start[0], end[0]); } else if (e == EventTypes.Move) { newCommonEvent = new Move(easing, startTime, endTime, start[0], start[1], end[0], end[1]); } else if (e == EventTypes.MoveX) { newCommonEvent = new MoveX(easing, startTime, endTime, start[0], end[0]); } else if (e == EventTypes.MoveY) { newCommonEvent = new MoveY(easing, startTime, endTime, start[0], end[0]); } else if (e == EventTypes.Scale) { newCommonEvent = new Scale(easing, startTime, endTime, start[0], end[0]); } else if (e == EventTypes.Vector) { newCommonEvent = new Vector(easing, startTime, endTime, start[0], start[1], end[0], end[1]); } else if (e == EventTypes.Rotate) { newCommonEvent = new Rotate(easing, startTime, endTime, start[0], end[0]); } else if (e == EventTypes.Color) { newCommonEvent = new Color(easing, startTime, endTime, start[0], start[1], start[2], end[0], end[1], end[2]); } else if (e == EventTypes.Parameter) { newCommonEvent = new Parameter(easing, startTime, endTime, (ParameterType)(int)start[0]); } else { newCommonEvent = Register.GetEventTransformation(e)?.Invoke(e, easing, startTime, endTime, start, end); if (newCommonEvent == null) { throw new ArgumentOutOfRangeException(nameof(e), e, null); } } //List //if (sequential) // EventList.AddSorted(newEvent); //else // EventList.Add(newEvent); //SortedSet EventList.Add(newCommonEvent); }