private void deleteTrack(AMTrack track, bool deleteFromGroup, ref List <MonoBehaviour> modifiedItems) { int id = track.id; int index = getTrackIndex(id); if (track && modifiedItems != null) { foreach (AMKey key in track.keys) { modifiedItems.Add(key); } modifiedItems.Add(track); } if (mCameraSwitcher == track) { mCameraSwitcher = null; } trackValues.RemoveAt(index); if (deleteFromGroup) { deleteTrackFromGroups(id); } sortTracks(); }
// Adding a new track type // ===================== // Create track class // Make sure to add [System.Serializable] to every class // Set track class properties // Override getTrackType in track class // Add track type to showObjectFieldFor in AMTimeline // Create an addXTrack method here, and put it in AMTimeline // Create track key class, make sure to override CreateClone // Create AMXAction class for track class that overrides execute and implements ToString # TO DO # // Override updateCache in track class // Create addKey method in track class, and put it in addKey in AMTimeline // Add track to timeline action in AMTimeline // Add inspector properties to showInspectorPropertiesFor in AMTimeline // Override previewFrame method in track class // Add track object to timelineSelectObjectFor in AMTimeline (optional) // Override getDependencies and updateDependencies in track class // Add details to Code View # TO DO # #region Tracks // add translation track public void addTrack(int groupId, AMITarget target, Transform obj, AMTrack a) { a.setName(getTrackCount()); a.id = getUniqueTrackID(); a.enabled = false; a.SetTarget(target, obj); addTrack(groupId, a); if (a is AMCameraSwitcherTrack) { mCameraSwitcher = a as AMCameraSwitcherTrack; } }
public void deleteTrack(AMTrack track, bool deleteFromGroup = true) { int id = track.id; int index = getTrackIndex(id); if (track) { if (mCameraSwitcher == track) { mCameraSwitcher = null; } track.destroy(); } trackValues.RemoveAt(index); if (deleteFromGroup) { deleteTrackFromGroups(id); } sortTracks(); }