Files
ichni_Creator_Studio/Assets/Scripts/DynamicUI/Timeline/TimelineTab.cs

56 lines
1.4 KiB
C#
Raw Normal View History

using System;
using System.Collections;
using System.Collections.Generic;
2025-02-22 12:35:56 +08:00
using Ichni;
using Ichni.Editor;
using Ichni.RhythmGame;
using TMPro;
2025-02-22 12:35:56 +08:00
using UnityEditor;
using UnityEngine;
public class TimelineTab : MonoBehaviour
{
public TMP_Text Title;
public GameElement connectedGameElement;
public SubTab ElementPrefab;
public List<GameElement> GelementPointer;
2025-02-22 12:35:56 +08:00
public RectTransform MoveArea;
2025-02-28 20:08:00 +08:00
public RectTransform title;
public Dictionary<float, SubTab> SubTabs = new();
2025-02-22 12:35:56 +08:00
public Timeline timeline;
public void SetTab(GameElement element, Type DisplayType)
{
connectedGameElement = element;
Title.text = DisplayType.ToString();
AddElement(element);
}
public void AddElement(GameElement gameElement)
{
GelementPointer.Add(gameElement);
if (gameElement is NoteBase)
{
float Judgetime = ((NoteBase)gameElement).exactJudgeTime;
print(Judgetime);
if (SubTabs.ContainsKey(Judgetime)) SubTabs[Judgetime].Set(gameElement, Judgetime);
else
{
2025-02-22 12:35:56 +08:00
SubTab i = Instantiate(ElementPrefab, MoveArea.transform);
i.father = this;
i.Set(gameElement, Judgetime);
SubTabs.Add(Judgetime, i);
}
}
}
2025-02-22 12:35:56 +08:00
private void Start()
{
timeline = EditorManager.instance.uiManager.timeline;
}
}