修了一下timeline

本来想重写的但是无力反抗(
This commit is contained in:
2025-04-30 17:00:46 +08:00
parent 40f6d7ccdd
commit 6ca5988112
6 changed files with 834 additions and 135 deletions

View File

@@ -57,6 +57,7 @@ namespace Ichni.Editor
timePointerModule.timePointerInterval += scrollValue;
timePointerModule.UpdatePointers();
timePointerModule.SetRange(songTime);
SetTimeLine(EditorManager.instance.uiManager.inspector.connectedGameElement);
}
}
@@ -131,7 +132,7 @@ namespace Ichni.Editor
}
public RectTransform moveTabPoint;
public void Elementfind(GameElement element)//在其中添加东西时timelineTab也要写难受
public void Elementfind(GameElement element)
{
foreach (var i in element.childElementList)
{
@@ -148,7 +149,6 @@ namespace Ichni.Editor
}
}
if (element is NoteBase)
{
if (!timelineTabList.ContainsKey(element.GetType()))
@@ -160,17 +160,21 @@ namespace Ichni.Editor
timelineTabList[element.GetType()].AddElement(element);
}
}
else if (element is Track track && track.submoduleList.Any(w => w is TrackTimeSubmodule))
if (element is Track track)
{
TrackTimeSubmodule sub = (TrackTimeSubmodule)track.submoduleList.Find(w => w is TrackTimeSubmodule);
Add(sub);
var trackTimeSubmodule = track.submoduleList.FirstOrDefault(w => w is TrackTimeSubmodule) as TrackTimeSubmodule;
if (trackTimeSubmodule != null)
{
Add(trackTimeSubmodule);
}
}
if (element.submoduleList.Any(w => w is TimeDurationSubmodule))
var timeDurationSubmodule = element.submoduleList.FirstOrDefault(w => w is TimeDurationSubmodule) as TimeDurationSubmodule;
if (timeDurationSubmodule != null && timeDurationSubmodule.isOverridingDuration)
{
TimeDurationSubmodule sub = (TimeDurationSubmodule)element.submoduleList.Find(w => w is TimeDurationSubmodule);
if (sub.isOverridingDuration) Add(sub);
Add(timeDurationSubmodule);
}
}
private void Add(IBaseElement obj)