点击选中

This commit is contained in:
SoulliesOfficial
2025-04-16 08:33:34 -04:00
parent 11543b4997
commit 97427b0bf3
24 changed files with 634 additions and 139 deletions

View File

@@ -53,7 +53,11 @@ namespace Ichni.RhythmGame
this.tags = tags;
EditorManager.instance.beatmapContainer.gameElementList.Add(this);
submoduleList = new List<SubmoduleBase>();
if (isFirstGenerated) SetDefaultSubmodules();
if (isFirstGenerated)
{
SetDefaultSubmodules();
}
SetParent(parentElement);
EditorManager.instance.uiManager.hierarchy.GenerateTab(this, parentElement);
@@ -70,12 +74,17 @@ namespace Ichni.RhythmGame
}
public virtual void SetEditorSubmodules()
{
}
/// <summary>
/// 在所有物体生成完毕后,执行的初始化方法
/// </summary>
public virtual void AfterInitialize()
{
SetEditorSubmodules();
}
/// <summary>

View File

@@ -4,7 +4,7 @@ using UnityEngine;
namespace Ichni.RhythmGame
{
public abstract class NoteVisualBase : SubstantialObject, IHaveEffectSubmodule
public abstract class NoteVisualBase : SubstantialObject, IHaveEffectSubmodule, IHaveSelectSubmodule
{
public NoteBase note;
@@ -15,11 +15,17 @@ namespace Ichni.RhythmGame
public List<GameObject> effectPartList;
public EffectSubmodule effectSubmodule { get; set; }
public SelectSubmodule selectSubmodule { get; set; }
public override void SetDefaultSubmodules()
{
base.SetDefaultSubmodules();
effectSubmodule = new EffectSubmodule(this, EffectSubmodule.EffectSubmodulePreset.Note);
}
public override void SetEditorSubmodules()
{
selectSubmodule = new SelectSubmodule(this, note);
}
}
}

View File

@@ -54,6 +54,7 @@ namespace Ichni.RhythmGame
public override void AfterInitialize()
{
base.AfterInitialize();
Refresh();
}
}

View File

@@ -47,6 +47,8 @@ namespace Ichni.RhythmGame
public override void AfterInitialize()
{
base.AfterInitialize();
if (trackPathSubmodule != null && trackPathSubmodule.pathNodeList.Count > 3)
{
trackPathSubmodule.ClosePath();
@@ -62,7 +64,6 @@ namespace Ichni.RhythmGame
trackPathSubmodule?.Refresh();
trackTimeSubmodule?.Refresh();
trackRendererSubmodule?.Refresh();
}
public override void OnDelete()