Signed-off-by: TRAfoer <lhf190@outlook.com>
This commit is contained in:
2025-07-23 11:40:29 +08:00
parent 2dae60d368
commit 6d010467ae
60 changed files with 196637 additions and 17425 deletions

View File

@@ -56,7 +56,7 @@ namespace Ichni.RhythmGame
SetParent(parentElement);
EditorManager.instance.uiManager.hierarchy.GenerateTab(this, parentElement);
gameObject.name = elementName;
//GameManager.beatMapContainer.beatMapElementList.Add(this);
//serialNumber = totalSerialNumber++;
//SetTransformObserver();
@@ -109,6 +109,7 @@ namespace Ichni.RhythmGame
public virtual void Refresh()
{
if (connectedTab != null) connectedTab.tabButtonText.text = this.elementName;
gameObject.name = elementName;
}
/// <summary>

View File

@@ -1,6 +1,7 @@
using System;
using System.Collections;
using System.Collections.Generic;
using System.Linq;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Lean.Pool;
@@ -115,21 +116,21 @@ namespace Ichni.RhythmGame
var trackRendererAutoOrientButton =
inspector.GenerateButton(this, trackRendererSubcontainer, "Track Renderer Auto Orient", () =>
{
trackRendererSubmodule =
trackRendererSubmodule =
new TrackRendererSubmoduleAutoOrient(this, false, 0, true, Vector2.one, Vector2.zero);
inspectorMain.SetInspector(this);
});
var trackRendererPathGeneratorButton =
inspector.GenerateButton(this, trackRendererSubcontainer, "Track Renderer Path Generator", () =>
{
trackRendererSubmodule =
trackRendererSubmodule =
new TrackRendererSubmodulePathGenerator(this, false, 0, true, Vector2.one, Vector2.zero);
inspectorMain.SetInspector(this);
});
var trackRenderTubeGeneratorButton =
inspector.GenerateButton(this, trackRendererSubcontainer, "Track Renderer Tube Generator", () =>
{
trackRendererSubmodule =
trackRendererSubmodule =
new TrackRendererSubmoduleTubeGenerator(this, false, 0, true, 4, Vector2.one, Vector2.zero);
inspectorMain.SetInspector(this);
});
@@ -166,13 +167,16 @@ namespace Ichni.RhythmGame
var flickButton = inspector.GenerateButton(this, noteSubcontainer, "Flick",
() => { Flick.GenerateElement("New Flick", Guid.NewGuid(), new List<string>(), true, this, 0f, new List<Vector2>()); }); //Note Flick
var particleSubcontainer = generateContainer.GenerateSubcontainer(3);
var particleTrackerButton = inspector.GenerateButton(this, particleSubcontainer, "Particle Tracker",
() => { ParticleTracker.GenerateElement("New Particle Tracker", Guid.NewGuid(), new List<string>(), true, this,
string.Empty, string.Empty, false, 0, 1, false, 10, Vector3.right, 10, 5, true, Vector3.zero); }); //Particle Tracker
() =>
{
ParticleTracker.GenerateElement("New Particle Tracker", Guid.NewGuid(), new List<string>(), true, this,
string.Empty, string.Empty, false, 0, 1, false, 10, Vector3.right, 10, 5, true, Vector3.zero);
}); //Particle Tracker
StandardInspectionElement.GenerateForTransform(this, generateContainer); //关于有Transform的元素
// var animationSubcontainer = generateContainer.GenerateSubcontainer(3);
// var displacementButton = inspector.GenerateButton(this, animationSubcontainer, "Displacement", () =>
@@ -335,6 +339,34 @@ namespace Ichni.RhythmGame
return notes;
}
[Button("Check Notes")]
public void checkNotes()
{
foreach (NoteBase note in childElementList.OfType<NoteBase>())
{
if (note.noteJudgeSubmodule == null)
{
Debug.LogWarning($"Note {note.elementName} does not have a NoteJudgeSubmodule!");
}
if (note.noteVisual == null)
{
Debug.LogWarning($"Note {note.elementName} does not have a NoteVisual!");
}
if (note.noteAudioSubmodule == null)
{
Debug.LogWarning($"Note {note.elementName} does not have a NoteAudio!");
}
foreach (NoteBase note2 in childElementList.OfType<NoteBase>())
{
if (note2 != note && note2.exactJudgeTime == note.exactJudgeTime && note2.noteVisual?.transformSubmodule.currentPosition == note.noteVisual?.transformSubmodule.currentPosition)
{
Debug.LogWarning($"Note {note.elementName} and Note {note2.elementName} have the same position! Plz Check!");
}
}
}
}
}
public partial class Track