This commit is contained in:
2025-10-18 15:58:55 +08:00
parent 1c78e7328c
commit 3361e276e5
6 changed files with 104191 additions and 11209 deletions

View File

@@ -3,6 +3,7 @@ using System.Collections;
using System.Collections.Generic;
using System.Linq;
using System.Text.RegularExpressions;
using System.Threading.Tasks;
using Ichni.RhythmGame;
using Ichni.RhythmGame.Beatmap;
using Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse;
@@ -597,9 +598,19 @@ namespace Ichni.Editor
}
public static void AdjustPathnodeZ(float OriginZpoint, float scale)
{
if (inspector.connectedGameElement == null || inspector.connectedGameElement.GetType() != typeof(Track))
if (inspector.connectedGameElement == null)
{
LogWindow.Log("Please select a Track first!");
LogWindow.Log($"please select a element (folder or track)", Color.red);
return;
}
if (inspector.connectedGameElement.GetType() != typeof(Track))
{
foreach (var i in inspector.connectedGameElement.childElementList.OfType<Track>())
{
inspector.connectedGameElement = i;
AdjustPathnodeZ(OriginZpoint, scale);
}
return;
}
Track track = (Track)inspector.connectedGameElement;
@@ -618,6 +629,11 @@ namespace Ichni.Editor
pathnode.transformSubmodule.Refresh();
pathnode.Refresh();
}
foreach (var i in track.childElementList.OfType<Track>())
{
inspector.connectedGameElement = i;
AdjustPathnodeZ(OriginZpoint, scale);
}
}
public static void FloorAnim()
{
@@ -728,7 +744,7 @@ namespace Ichni.Editor
NewTrack.Refresh();
Observable.Timer(TimeSpan.FromSeconds(0.3f)).Subscribe(_ =>
{
NewTrack?.trackPathSubmodule.path.Rebuild(true);
NewTrack?.trackPathSubmodule.path.RebuildImmediate(true, true);
DTMNoteVisualHold dTMNoteVisualHold = newHold.noteVisual as DTMNoteVisualHold;
dTMNoteVisualHold.meshGenerator.Rebuild();
});
@@ -748,12 +764,14 @@ namespace Ichni.Editor
LogWindow.Log("the Hold may not be split currently", Color.yellow);
return;
}
foreach (var hold in holds)
{
inspector.connectedGameElement = hold;
SplitHoldToTrack(PathnodesCount);
}
}
public static void Rebuild()
{
foreach (GameElement element in EditorManager.instance.beatmapContainer.gameElementList)
@@ -764,9 +782,12 @@ namespace Ichni.Editor
}
foreach (Track track in element.GetAllGameElementsFromThis().OfType<Track>())
{
track?.trackPathSubmodule.path.Rebuild(true);
track?.trackPathSubmodule.path.RebuildImmediate(true, true);
}
}
#if UNITY_EDITOR
UnityEditorInternal.InternalEditorUtility.RepaintAllViews();
#endif
}
}
}

View File

@@ -33,6 +33,8 @@ namespace Ichni.Editor
public RectTransform GetinputArea;
private string BeatText;
private string TimeText;
public void Update()
{
if (EditorManager.instance.musicPlayer.isPlaying) UpdateTime();
@@ -43,7 +45,14 @@ namespace Ichni.Editor
DetectSetRange();
DetectPointer();
}
if (BeatField.text != BeatText)
{
BeatField.text = BeatText;
}
if (TimeField.text != TimeText)
{
TimeField.text = TimeText;
}
}
@@ -154,8 +163,8 @@ namespace Ichni.Editor
}
private void UpdateTime()
{
TimeField.text = songTime.ToString("F2");
BeatField.text = songBeat.ToString("F2");
TimeText = songTime.ToString("F2");
BeatText = songBeat.ToString("F2");
}
private Tweener _activeTweener = null; // 保存当前动画的引用

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

View File

@@ -178,7 +178,7 @@ MonoBehaviour:
_offset: {x: 0, y: 0, z: 0}
_normalMethod: 1
_calculateTangents: 1
_useSplineSize: 1
_useSplineSize: 0
_useSplineColor: 0
_rotation: 0
_flipFaces: 0
@@ -478,8 +478,8 @@ MonoBehaviour:
m_Name:
m_EditorClassIdentifier:
serializationData:
SerializedFormat: 2
SerializedBytes:
SerializedFormat: 0
SerializedBytes: 29010b00000065006c0065006d0065006e00740047007500690064000000000000000000000000000000000001010d0000007300750062006d006f00640075006c0065004c006900730074002f00000000015e000000530079007300740065006d002e0043006f006c006c0065006300740069006f006e0073002e00470065006e0065007200690063002e004c00690073007400600031005b005b004900630068006e0069002e00520068007900740068006d00470061006d0065002e005300750062006d006f00640075006c00650042006100730065002c00200041007300730065006d0062006c0079002d004300530068006100720070005d005d002c0020006d00730063006f0072006c00690062000000000006000000000000000007052d010b00000065006e00610062006c006500540079007000650073000101120000006e006f0072006d0061006c004d006100740065007200690061006c004c006900730074002f01000000018a000000530079007300740065006d002e0043006f006c006c0065006300740069006f006e0073002e00470065006e0065007200690063002e004c00690073007400600031005b005b00530079007300740065006d002e0043006f006c006c0065006300740069006f006e0073002e00470065006e0065007200690063002e004c00690073007400600031005b005b0055006e0069007400790045006e00670069006e0065002e004d006100740065007200690061006c002c00200055006e0069007400790045006e00670069006e0065002e0043006f00720065004d006f00640075006c0065005d005d002c0020006d00730063006f0072006c00690062005d005d002c0020006d00730063006f0072006c006900620001000000060100000000000000022f02000000015b000000530079007300740065006d002e0043006f006c006c0065006300740069006f006e0073002e00470065006e0065007200690063002e004c00690073007400600031005b005b0055006e0069007400790045006e00670069006e0065002e004d006100740065007200690061006c002c00200055006e0069007400790045006e00670069006e0065002e0043006f00720065004d006f00640075006c0065005d005d002c0020006d00730063006f0072006c0069006200020000000602000000000000000c000000000c010000000705070501011500000068006900670068006c0069006700680074004d006100740065007200690061006c004c00690073007400300100000003000000060100000000000000023002000000040000000602000000000000000c000000000c0100000007050705
ReferencedUnityObjects:
- {fileID: 2100000, guid: 70eba7194a9d81d40a263caa11f23d33, type: 2}
- {fileID: 2100000, guid: 0db768b5d1363e64a9994db21d7695b3, type: 2}
@@ -487,90 +487,7 @@ MonoBehaviour:
Prefab: {fileID: 0}
PrefabModificationsReferencedUnityObjects: []
PrefabModifications: []
SerializationNodes:
- Name: elementGuid
Entry: 2
Data: 00000000000000000000000000000000
- Name: submoduleList
Entry: 7
Data: 0|System.Collections.Generic.List`1[[Ichni.RhythmGame.SubmoduleBase,
Assembly-CSharp]], mscorlib
- Name:
Entry: 12
Data: 0
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name: enableTypes
Entry: 6
Data:
- Name: normalMaterialList
Entry: 7
Data: 1|System.Collections.Generic.List`1[[System.Collections.Generic.List`1[[UnityEngine.Material,
UnityEngine.CoreModule]], mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 2|System.Collections.Generic.List`1[[UnityEngine.Material, UnityEngine.CoreModule]],
mscorlib
- Name:
Entry: 12
Data: 2
- Name:
Entry: 10
Data: 0
- Name:
Entry: 10
Data: 1
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name: highlightMaterialList
Entry: 7
Data: 3|System.Collections.Generic.List`1[[System.Collections.Generic.List`1[[UnityEngine.Material,
UnityEngine.CoreModule]], mscorlib]], mscorlib
- Name:
Entry: 12
Data: 1
- Name:
Entry: 7
Data: 4|System.Collections.Generic.List`1[[UnityEngine.Material, UnityEngine.CoreModule]],
mscorlib
- Name:
Entry: 12
Data: 2
- Name:
Entry: 10
Data: 0
- Name:
Entry: 10
Data: 1
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
- Name:
Entry: 13
Data:
- Name:
Entry: 8
Data:
SerializationNodes: []
elementName:
tags: []
parentElement: {fileID: 0}