/// <summary> /// Deseralizes the provided serialized timeline. /// </summary> public static Timeline Deserialize(string s_timeline) { Timeline timeline = new Timeline(""); // Splits the data file into chapters. string[] s_Chapters = s_timeline.Split(CHAPTERSPACER); foreach (string s_Chapter in s_Chapters) { if (s_Chapter == "") { continue; } // Splits the chapter into data pieces. string[] vars = s_Chapter.Split(EVENTSPACER); if (vars.Length == 0) { continue; } // A new chapter is created. TimelineChapter chapter = new TimelineChapter( int.Parse(vars[0]), vars[1], vars[2], int.Parse(vars[3])); // Starts later to skip chapter fields. for (int i = 4; i < vars.Length; i++) { // converts the var into a TimelineEvent string s_event = vars[i]; if (s_event == "") { continue; } TimelineEventData timelineData = JsonUtility.FromJson <TimelineEventData>(s_event); Type t = TimelineEventContainer.TypeOf(timelineData.Type); timelineData = (TimelineEventData)JsonUtility.FromJson(s_event, t); chapter.AddEvent(timelineData); } timeline.AddChapter(chapter); } return(timeline); }
public void RemoveEvent(TimelineEventData data) { events.Remove(data.Id); UnityEngine.Debug.LogFormat("Removed Event (Id: {0}) of type {1}", data.Id.ToString(), data.Type.ToString()); }
public void UpdateEvent(TimelineEventData updatedData) { events[updatedData.Id] = updatedData; UnityEngine.Debug.LogFormat("Updated Event (Id: {0}) of type {1}", updatedData.Id.ToString(), updatedData.Type.ToString()); }
public void AddEvent(TimelineEventData newData) { events.Add(newData.Id, newData); UnityEngine.Debug.LogFormat("Added Event (Id: {0}) of type {1}", newData.Id.ToString(), newData.Type.ToString()); }