From 1be8a5a900b87b99422d1c94e3fcb48a26fb4417 Mon Sep 17 00:00:00 2001 From: SoulliesOfficial <77235731+SoulliesOfficial@users.noreply.github.com> Date: Fri, 7 Feb 2025 10:49:26 -0500 Subject: [PATCH] =?UTF-8?q?=E5=9F=BA=E7=A1=80=E5=86=85=E5=AE=B9-10?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 保存测试 --- .../Resources/ES3/ES3GlobalReferences.asset | 106 +++ .../ES3/ES3GlobalReferences.asset.meta | 8 + Assets/Scenes/SampleScene.unity | 635 ++++++++---------- Assets/Scripts/Base/BaseElement.cs | 13 +- Assets/Scripts/Base/Manager/EditorManager.cs | 18 + .../ElementFolder/ElementFolder.cs | 5 +- Assets/Scripts/GameElements/Notes/NoteBase.cs | 8 + Assets/Scripts/GameElements/Track/PathNode.cs | 2 + Assets/Scripts/GameElements/Track/Track.cs | 5 +- 9 files changed, 456 insertions(+), 344 deletions(-) create mode 100644 Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset create mode 100644 Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset.meta diff --git a/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset new file mode 100644 index 00000000..19fa5d34 --- /dev/null +++ b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset @@ -0,0 +1,106 @@ +%YAML 1.1 +%TAG !u! tag:unity3d.com,2011: +--- !u!114 &11400000 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 0} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: e6b16dc7c203450459bb86e24305f9ca, type: 3} + m_Name: ES3GlobalReferences + m_EditorClassIdentifier: + refId: + _Keys: + - {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + - {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + - {fileID: 11500000, guid: d199490a83bb2b844b9695cbf13b01ef, type: 3} + - {fileID: 2800000, guid: 2fd6421f253b4ef1a19526541f9ffc0c, type: 3} + - {fileID: 4800000, guid: fe393ace9b354375a9cb14cdbbc28be4, type: 3} + - {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + - {fileID: 2100000, guid: e3265ab4bf004d28a9537516768c1c75, type: 3} + - {fileID: 2800000, guid: ee148e281f3c41c5b4ff5f8a5afe5a6c, type: 3} + - {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + - {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + - {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + - {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + - {fileID: 2800000, guid: e3265ab4bf004d28a9537516768c1c75, type: 3} + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + - {fileID: 10904, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10910, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + - {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + - {fileID: 12800000, guid: e3265ab4bf004d28a9537516768c1c75, type: 3} + - {fileID: 28684132378477856, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + - {fileID: 11400000, guid: 2e498d1c8094910479dc3e1b768306a4, type: 2} + - {fileID: 2180264, guid: 2e498d1c8094910479dc3e1b768306a4, type: 2} + - {fileID: 28268798066460806, guid: 2e498d1c8094910479dc3e1b768306a4, type: 2} + - {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + - {fileID: 2800000, guid: 188dfe7e559f13248ba2c41eb5a59328, type: 3} + - {fileID: 2800000, guid: f20112bdeec2e8d4d9f80e8390e37263, type: 3} + - {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3} + - {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3} + - {fileID: 11500000, guid: 94df1ffae0c2c7d4ba695b68267eea10, type: 3} + - {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3} + - {fileID: 11500000, guid: 485e02e02c638cf4b9ca8344fd6213a9, type: 3} + - {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3} + - {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3} + - {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3} + - {fileID: 11500000, guid: 2d01154bce0123949a8800d85a063092, type: 3} + - {fileID: 11500000, guid: fb60a22f311433c4c962b888d1393f88, type: 3} + - {fileID: 11400000, guid: a6560a915ef98420e9faacc1c7438823, type: 2} + - {fileID: 11500000, guid: 0892af0ddd15c449d9b1c65248b5dc64, type: 3} + - {fileID: 6, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 211, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: 40de2c4d4a13a4ab2a7b404b9ea124dc, type: 2} + - {fileID: 11500000, guid: 09efd164733b64d539127e1d09f6ef5a, type: 3} + - {fileID: 11500000, guid: 1d40f46869fc84408ab4870b70e789ef, type: 3} + - {fileID: 11500000, guid: 8d2b6af5deaa046ff89ed3c74bb2ffdc, type: 3} + - {fileID: 11500000, guid: 48120e902e0734a51a10b8b4c0229afa, type: 3} + - {fileID: 11500000, guid: 1d27859adda1341aaa0db8a117d5431c, type: 3} + - {fileID: 11500000, guid: 912c3a32e155f4ca79a4ca1fa1f359e5, type: 3} + - {fileID: 11500000, guid: af21e649d109b416aa81541349c26926, type: 3} + - {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} + - {fileID: 11500000, guid: 9bfe18cabd8814ad0b27f5969180c1d2, type: 3} + - {fileID: 11500000, guid: 6b1bd7cbcd49b4f0b805e902cd7c3025, type: 3} + - {fileID: 11500000, guid: 6da43522623d4704e979466dc7650b65, type: 3} + - {fileID: 11400000, guid: 266f4a39c512c46eea7e44336e4fc600, type: 2} + - {fileID: 308406596911943559, guid: a18690d2958394a129fa40db84473abf, type: 3} + - {fileID: 5458850307965270050, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 5524510864018492689, guid: 5a9a2433580c2451b8200185cb45f867, type: 3} + - {fileID: 8828428123186639208, guid: 20234a708961745eeafa459c79524348, type: 3} + - {fileID: 7248180033186031075, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 4801226466239889825, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 2100000, guid: 2424431729f1047c4b42f971c2cdd2b6, type: 2} + - {fileID: 2100000, guid: 8af6dd7f0725540388b84a4697118bb9, type: 2} + - {fileID: 8182686472733940155, guid: 9b2da5f6faa9c4d2abe557fc8f79f806, type: 3} + - {fileID: 845605030242152257, guid: 1ea739ef6f1bf4e87835b0f554587451, type: 3} + - {fileID: 4392065290618403719, guid: a18690d2958394a129fa40db84473abf, type: 3} + - {fileID: 5952134433872257209, guid: 5a9a2433580c2451b8200185cb45f867, type: 3} + - {fileID: 5685490303190717638, guid: 5a9a2433580c2451b8200185cb45f867, type: 3} + - {fileID: 2018703855695848494, guid: 20234a708961745eeafa459c79524348, type: 3} + - {fileID: 5564891438271901146, guid: 20234a708961745eeafa459c79524348, type: 3} + - {fileID: 1315658469023090610, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 8806291656250087362, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 5989318717494774921, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 4874969544181214436, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 7085906370378666250, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 3154956539503596607, guid: 9b2da5f6faa9c4d2abe557fc8f79f806, type: 3} + - {fileID: 1476474925599486088, guid: 9b2da5f6faa9c4d2abe557fc8f79f806, type: 3} + - {fileID: 2859209460979211711, guid: 1ea739ef6f1bf4e87835b0f554587451, type: 3} + - {fileID: 5676301476469219168, guid: 1ea739ef6f1bf4e87835b0f554587451, type: 3} + - {fileID: 2852814640559356108, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 5627864271135565099, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 7167795648212539471, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 11500000, guid: 531894cbc68d4bf49a71825ad87c3305, type: 3} + - {fileID: 11500000, guid: 6bf8e915527fa424a8b17dc168fe20eb, type: 3} + - {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + - {fileID: 11500000, guid: 79d811a12f27f43629797719fcbfc6ae, type: 3} + - {fileID: 11500000, guid: 347013242dca7c44fb5001793033ea59, type: 3} + - {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + - {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + _Values: 526a8851fe85233e7cc810cd2b8a733faa68e71a62b999126f1e8b81df292d1acf2f06228873853005edfb00aa354575a31cc8ad1ac7b966308a3fe3ee5ae259f52afefc8351b636e2b71574be99675b6400dfc3607f0069e96d5112b3681f5fcf550a7f3749f10c2c006f2e23d1db370e64801184e106752a681216ffa3837998b5a5688fe7245230fcd93d5728ea479cf46b8ba7516b16ed2e96b5bbb6e20e0c6272c125d7806f67cd366983232521642549cf9088373b29cf12c86a843666a9d2726c53c784328db49f8d499d2140f05354991e91554c74350ef20eacd34ec6bf413c35ce7d12821326d7a7c36313210e18f42f147d60db1f64f3ada3bb2d6666d31a094491222bbde8f495825a4e2f05ece33b3881253ca117543370bf2531ac8ebf10b7f565a03ac9712b88ca58c516c5a7b6d8f161d84e972e95f1f208f318fcbd24a42f1a1594d13a0cca1e4d0b9a28c0e4238a4cd5432183fe0a3d37c5600352a5affe32a0f1cca64d60c95d6de43a2f1ab3ec2f8dafe7e182ac1c0b579975acc6cca75b9cf61ff356e4ff757ac4f0e2446c5178b3cc3b0938e3500b2c3eb04c15e369388d95cb10d3df8656069a951142fc403ed6b4a90102e5146519f66f6d35134e18b132d9ec6c3ec954f282992fe09c9f2a9752fc7c47b5d52b06e06eab61a6d10e4d7cc274d62caa67eb540f7f4be5844b6a66281ce82d2f664f7483a3a0ebff69576b98633aaa8921a5ddbe04814bd97aac297cdb1235373261c4cec06828ec556592c57c95cb2c5c853ad052230733029b09f8776f245772a3ca0276dcc8b833ca146a1411560f76a926a9289a1bf169092fa58ddf9c3a7517c82635364a7f4df403890f9d1ef144fb812196cd7f0c77286780f491baec2cdaf4fd482fda400ba6f61b9da4000716c29e6ca1845b5768bcaf0ecfc98bbb39185d35a921a8142041153dc39aaa1c286f97b630278db035fff6d32e0ef214326ce60b1f02d1fa31 diff --git a/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset.meta b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset.meta new file mode 100644 index 00000000..7b8e9744 --- /dev/null +++ b/Assets/Plugins/Easy Save 3/Resources/ES3/ES3GlobalReferences.asset.meta @@ -0,0 +1,8 @@ +fileFormatVersion: 2 +guid: 81e2cda70e8084a3fb324d644db244fd +NativeFormatImporter: + externalObjects: {} + mainObjectFileID: 11400000 + userData: + assetBundleName: + assetBundleVariant: diff --git a/Assets/Scenes/SampleScene.unity b/Assets/Scenes/SampleScene.unity index 11ce5f0b..430a9139 100644 --- a/Assets/Scenes/SampleScene.unity +++ b/Assets/Scenes/SampleScene.unity @@ -246,187 +246,29 @@ MonoBehaviour: SerializationNodes: - Name: elementGuid Entry: 2 - Data: 9ce023db680c4db6aca5388c7fea2d83 + Data: 00000000000000000000000000000000 - Name: matchedBM Entry: 6 Data: - - Name: timeDurationSubmodule + - Name: submoduleList Entry: 7 - Data: 0|Ichni.RhythmGame.TimeDurationSubmodule, Assembly-CSharp - - Name: attachedElement - Entry: 6 - Data: - - Name: isOverridingDuration - Entry: 5 - Data: false - - Name: startTime - Entry: 4 - Data: 0 - - Name: endTime - Entry: 4 + 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: timeDurationSubmodule + Entry: 6 + Data: - Name: transformSubmodule - Entry: 7 - Data: 1|Ichni.RhythmGame.TransformSubmodule, Assembly-CSharp - - Name: attachedElement Entry: 6 Data: - - Name: originalPosition - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: originalEulerAngles - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: originalScale - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: positionOffset - Entry: 7 - Data: 2|System.Collections.Generic.List`1[[UnityEngine.Vector3, UnityEngine.CoreModule]], - mscorlib - - Name: - Entry: 12 - Data: 0 - - Name: - Entry: 13 - Data: - - Name: - Entry: 8 - Data: - - Name: eulerAnglesOffset - Entry: 7 - Data: 3|System.Collections.Generic.List`1[[UnityEngine.Vector3, UnityEngine.CoreModule]], - mscorlib - - Name: - Entry: 12 - Data: 0 - - Name: - Entry: 13 - Data: - - Name: - Entry: 8 - Data: - - Name: scaleOffset - Entry: 7 - Data: 4|System.Collections.Generic.List`1[[UnityEngine.Vector3, UnityEngine.CoreModule]], - mscorlib - - Name: - Entry: 12 - Data: 0 - - Name: - Entry: 13 - Data: - - Name: - Entry: 8 - Data: - - Name: currentPosition - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: currentEulerAngles - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: currentScale - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: positionDirtyMark - Entry: 5 - Data: false - - Name: eulerAnglesDirtyMark - Entry: 5 - Data: false - - Name: scaleDirtyMark - Entry: 5 - Data: false - - Name: eulerAnglesOffsetLock - Entry: 5 - Data: false - - Name: OnPositionChanged - Entry: 6 - Data: - - Name: OnEulerAnglesChanged - Entry: 6 - Data: - - Name: OnScaleChanged - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - Name: colorSubmodule Entry: 6 Data: @@ -1136,183 +978,25 @@ MonoBehaviour: - Name: matchedBM Entry: 6 Data: - - Name: timeDurationSubmodule + - Name: submoduleList Entry: 7 - Data: 0|Ichni.RhythmGame.TimeDurationSubmodule, Assembly-CSharp - - Name: attachedElement - Entry: 6 - Data: - - Name: isOverridingDuration - Entry: 5 - Data: false - - Name: startTime - Entry: 4 - Data: 0 - - Name: endTime - Entry: 4 + 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: timeDurationSubmodule + Entry: 6 + Data: - Name: transformSubmodule - Entry: 7 - Data: 1|Ichni.RhythmGame.TransformSubmodule, Assembly-CSharp - - Name: attachedElement Entry: 6 Data: - - Name: originalPosition - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: originalEulerAngles - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: originalScale - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 1 - - Name: - Entry: 4 - Data: 1 - - Name: - Entry: 4 - Data: 1 - - Name: - Entry: 8 - Data: - - Name: positionOffset - Entry: 7 - Data: 2|System.Collections.Generic.List`1[[UnityEngine.Vector3, UnityEngine.CoreModule]], - mscorlib - - Name: - Entry: 12 - Data: 0 - - Name: - Entry: 13 - Data: - - Name: - Entry: 8 - Data: - - Name: eulerAnglesOffset - Entry: 7 - Data: 3|System.Collections.Generic.List`1[[UnityEngine.Vector3, UnityEngine.CoreModule]], - mscorlib - - Name: - Entry: 12 - Data: 0 - - Name: - Entry: 13 - Data: - - Name: - Entry: 8 - Data: - - Name: scaleOffset - Entry: 7 - Data: 4|System.Collections.Generic.List`1[[UnityEngine.Vector3, UnityEngine.CoreModule]], - mscorlib - - Name: - Entry: 12 - Data: 0 - - Name: - Entry: 13 - Data: - - Name: - Entry: 8 - Data: - - Name: currentPosition - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: currentEulerAngles - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 4 - Data: 0 - - Name: - Entry: 8 - Data: - - Name: currentScale - Entry: 7 - Data: UnityEngine.Vector3, UnityEngine.CoreModule - - Name: - Entry: 4 - Data: 1 - - Name: - Entry: 4 - Data: 1 - - Name: - Entry: 4 - Data: 1 - - Name: - Entry: 8 - Data: - - Name: positionDirtyMark - Entry: 5 - Data: false - - Name: eulerAnglesDirtyMark - Entry: 5 - Data: false - - Name: scaleDirtyMark - Entry: 5 - Data: false - - Name: eulerAnglesOffsetLock - Entry: 5 - Data: false - - Name: OnPositionChanged - Entry: 6 - Data: - - Name: OnEulerAnglesChanged - Entry: 6 - Data: - - Name: OnScaleChanged - Entry: 6 - Data: - - Name: - Entry: 8 - Data: - Name: colorSubmodule Entry: 6 Data: @@ -2100,6 +1784,32 @@ MonoBehaviour: - Name: Entry: 8 Data: + - Name: elementList_BM + Entry: 7 + Data: 1|System.Collections.Generic.List`1[[Ichni.RhythmGame.Beatmap.BaseElement_BM, + Assembly-CSharp]], mscorlib + - Name: + Entry: 12 + Data: 0 + - Name: + Entry: 13 + Data: + - Name: + Entry: 8 + Data: + - Name: submoduleList_BM + Entry: 7 + Data: 2|System.Collections.Generic.List`1[[Ichni.RhythmGame.Beatmap.Submodule_BM, + Assembly-CSharp]], mscorlib + - Name: + Entry: 12 + Data: 0 + - Name: + Entry: 13 + Data: + - Name: + Entry: 8 + Data: currentJudgeType: 0 basePrefabs: {fileID: 11400000, guid: 266f4a39c512c46eea7e44336e4fc600, type: 2} elementList: [] @@ -2161,6 +1871,9 @@ MonoBehaviour: - Name: attachedElement Entry: 6 Data: + - Name: matchedBM + Entry: 6 + Data: - Name: effectList Entry: 6 Data: @@ -2451,6 +2164,249 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 1888135909} m_CullTransparentMesh: 1 +--- !u!1 &1926461707 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1926461710} + - component: {fileID: 1926461709} + - component: {fileID: 1926461708} + m_Layer: 0 + m_Name: Easy Save 3 Manager + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!114 &1926461708 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1926461707} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9107aee0ced90422da95f0b31680501f, type: 3} + m_Name: + m_EditorClassIdentifier: + key: e4d2678e-4c98-4cec-9c94-a6f9ff45b9c8 + saveEvent: 1 + loadEvent: 2 + settings: + _location: 4 + path: SaveFile.es3 + encryptionType: 0 + compressionType: 0 + encryptionPassword: password + directory: 0 + format: 0 + prettyPrint: 1 + bufferSize: 2048 + saveChildren: 1 + postprocessRawCachedData: 0 + typeChecking: 1 + safeReflection: 1 + memberReferenceMode: 0 + referenceMode: 2 + serializationDepthLimit: 64 + assemblyNames: + - Assembly-CSharp-firstpass + - Assembly-CSharp + showAdvancedSettings: 0 +--- !u!114 &1926461709 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1926461707} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 9a83408fcc9044c4fbc7e5d09a369ab6, type: 3} + m_Name: + m_EditorClassIdentifier: + excludeObjects: [] + openPrefabs: 0 + prefabs: [] + idRef: + _Keys: 526a8851fe85233e7cc810cd2b8a733faa68e71a62b999126f1e8b81df292d1acf2f06228873853005edfb00aa354575a31cc8ad1ac7b966308a3fe3ee5ae259f52afefc8351b636e2b71574be99675b6400dfc3607f0069e96d5112b3681f5fcf550a7f3749f10c2c006f2e23d1db370e64801184e106752a681216ffa3837998b5a5688fe724520d14109f10d172186ee5fbb117f22411b26aaa31c824f2767cf5966e2b72a8263f2e0370d16764590b067c1b61cb6e75d9b619fa92551a320786221b3b03ec208e22f046f695e21830fcd93d5728ea479cf46b8ba7516b16ed2e96b5bbb6e20e0c6272c125d7806f67cd366983232521642549cf9088373bb7da5ac7fe2c5c192218ce0a49d6dd738a25db26e4fd6d370a7552956d137d6b665288ffceb792398ee2b794abe52873b82aa5499ca2e04b4891be89dac6ab0e659c5a08b1215a41b815970146d88b119ec54e97b8c60707cd2b47c307f6a055723ad0f074e03e69319b6e78f521fa20e22f14eb87ebaa2c5d9ec5792568c53e74417380a87c864288e4671d588e1210db981f281d4a325d1a036b29e53abc3829cf12c86a843666a9d2726c53c784328db49f8d499d214074d166a5105c5d3da29f4627a1da7a5e317a2d1042614f5281c64a6625b57e38f05354991e91554c74350ef20eacd34ec6bf413c35ce7d12821326d7a7c36313210e18f42f147d60db1f64f3ada3bb2d6666d31a094491222bbde8f495825a4e2f05ece33b3881253ca117543370bf2531ac8ebf10b7f565a03ac9712b88ca58c516c5a7b6d8f161e8f9dd682d3dee657e0ec3e9f39a3e76118743006e0ffa3a958fe6b6ca98245845d258f66aa26d222a2ff31dc5e16529d84e972e95f1f208f318fcbd24a42f1a1594d13a0cca1e4d0b9a28c0e4238a4cd5432183fe0a3d37c5600352a5affe32a0f1cca64d60c95d6de43a2f1ab3ec2f8dafe7e182ac1c0b579975acc6cca75b9cf61ff356e4ff757ac4f0e2446c5178b3cc3b0938e3500b2c3eb04c15e369388d95cb10d3df8656508d984144c6391548fc5f9307b1937f462b1e94944b8a5d2d296fda38614b2c47e5baaa4a0ec664069a951142fc403ed6b4a90102e5146519f66f6d35134e18b132d9ec6c3ec954f282992fe09c9f2a9752fc7c47b5d52b06e06eab61a6d10e4d7cc274d62caa67eb540f7f4be5844b6a66281ce82d2f660704e68bd01df34b4f7483a3a0ebff69576b98633aaa8921a5ddbe04814bd97aac297cdb1235373261c4cec06828ec556592c57c95cb2c5c853ad052230733029b09f8776f245772a3ca0276dcc8b833ca146a1411560f76a926a9289a1bf169092fa58ddf9c3a7517c82635364a7f4df403890f9d1ef144fb812196cd7f0c77286780f491baec2cdaf4fd482fda400ba6f61b9da4000716c29e6ca1845b5768bcaf0ecfc98bbb39185d35a921a8142041153dc39aaa1c286f97b630278db035b399727f338ebd32b154b50236b0376b4d721d6667e4fc106c1a9fcd2a75ee765300a244e46bac30d36f74ee5f1e5e1ecf22e3b47049ce6796831219efef073b663eaf360df286471f4d94f76f0eb074884263b2a75d1863ce0aae615892403e884faa62326ad43eaa2a9522b5d7f75bcc785fcdad451c3b561268034425ee4e712d804046ec580d17a1097cc8f6ad5afff6d32e0ef214326ce60b1f02d1fa31e71c6c1ca8c75d472e9349f4c45f8c4dc0c2013af81c5d6342b3d460e1390a18 + _Values: + - {fileID: 11500000, guid: 4e29b1a8efbd4b44bb3f3716e73f07ff, type: 3} + - {fileID: 11500000, guid: fe87c0e1cc204ed48ad3b37840f39efc, type: 3} + - {fileID: 11500000, guid: d199490a83bb2b844b9695cbf13b01ef, type: 3} + - {fileID: 2800000, guid: 2fd6421f253b4ef1a19526541f9ffc0c, type: 3} + - {fileID: 4800000, guid: fe393ace9b354375a9cb14cdbbc28be4, type: 3} + - {fileID: 11500000, guid: f4688fdb7df04437aeb418b961361dc5, type: 3} + - {fileID: 2100000, guid: e3265ab4bf004d28a9537516768c1c75, type: 3} + - {fileID: 2800000, guid: ee148e281f3c41c5b4ff5f8a5afe5a6c, type: 3} + - {fileID: 11500000, guid: dc42784cf147c0c48a680349fa168899, type: 3} + - {fileID: 11500000, guid: 71c1514a6bd24e1e882cebbe1904ce04, type: 3} + - {fileID: 11500000, guid: 5f7201a12d95ffc409449d95f23cf332, type: 3} + - {fileID: 11500000, guid: 0cd44c1031e13a943bb63640046fad76, type: 3} + - {fileID: 2800000, guid: e3265ab4bf004d28a9537516768c1c75, type: 3} + - {fileID: 10100, guid: 0000000000000000e000000000000000, type: 0} + - {fileID: 10904, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10910, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 10905, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 1381594469} + - {fileID: 1381594468} + - {fileID: 1436513871} + - {fileID: 1436513874} + - {fileID: 1436513873} + - {fileID: 1888135909} + - {fileID: 1888135912} + - {fileID: 2146780870} + - {fileID: 2146780873} + - {fileID: 10911, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + - {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + - {fileID: 12800000, guid: e3265ab4bf004d28a9537516768c1c75, type: 3} + - {fileID: 28684132378477856, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2} + - {fileID: 11400000, guid: 2e498d1c8094910479dc3e1b768306a4, type: 2} + - {fileID: 911784085} + - {fileID: 911784086} + - {fileID: 911784089} + - {fileID: 911784088} + - {fileID: 911784087} + - {fileID: 1436513872} + - {fileID: 1174452738} + - {fileID: 1109987326} + - {fileID: 1109987327} + - {fileID: 1109987330} + - {fileID: 1109987329} + - {fileID: 1109987328} + - {fileID: 2146780871} + - {fileID: 1888135910} + - {fileID: 1888135911} + - {fileID: 2146780872} + - {fileID: 1174452737} + - {fileID: 1174452741} + - {fileID: 1174452740} + - {fileID: 1174452739} + - {fileID: 2180264, guid: 2e498d1c8094910479dc3e1b768306a4, type: 2} + - {fileID: 28268798066460806, guid: 2e498d1c8094910479dc3e1b768306a4, type: 2} + - {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3} + - {fileID: 410087039} + - {fileID: 410087041} + - {fileID: 410087040} + - {fileID: 410087042} + - {fileID: 2800000, guid: 188dfe7e559f13248ba2c41eb5a59328, type: 3} + - {fileID: 2800000, guid: f20112bdeec2e8d4d9f80e8390e37263, type: 3} + - {fileID: 11500000, guid: 0b2db86121404754db890f4c8dfe81b2, type: 3} + - {fileID: 11500000, guid: d7fd9488000d3734a9e00ee676215985, type: 3} + - {fileID: 11500000, guid: 94df1ffae0c2c7d4ba695b68267eea10, type: 3} + - {fileID: 11500000, guid: 172515602e62fb746b5d573b38a5fe58, type: 3} + - {fileID: 11500000, guid: 485e02e02c638cf4b9ca8344fd6213a9, type: 3} + - {fileID: 11500000, guid: 81180773991d8724ab7f2d216912b564, type: 3} + - {fileID: 11500000, guid: 899c54efeace73346a0a16faa3afe726, type: 3} + - {fileID: 11500000, guid: 97c23e3b12dc18c42a140437e53d3951, type: 3} + - {fileID: 11500000, guid: 2d01154bce0123949a8800d85a063092, type: 3} + - {fileID: 11500000, guid: fb60a22f311433c4c962b888d1393f88, type: 3} + - {fileID: 11400000, guid: a6560a915ef98420e9faacc1c7438823, type: 2} + - {fileID: 832575517} + - {fileID: 832575519} + - {fileID: 832575518} + - {fileID: 832575522} + - {fileID: 832575521} + - {fileID: 832575520} + - {fileID: 11500000, guid: 0892af0ddd15c449d9b1c65248b5dc64, type: 3} + - {fileID: 6, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 211, guid: 0000000000000000f000000000000000, type: 0} + - {fileID: 2100000, guid: 40de2c4d4a13a4ab2a7b404b9ea124dc, type: 2} + - {fileID: 11500000, guid: 09efd164733b64d539127e1d09f6ef5a, type: 3} + - {fileID: 11500000, guid: 1d40f46869fc84408ab4870b70e789ef, type: 3} + - {fileID: 11500000, guid: 8d2b6af5deaa046ff89ed3c74bb2ffdc, type: 3} + - {fileID: 11500000, guid: 48120e902e0734a51a10b8b4c0229afa, type: 3} + - {fileID: 11500000, guid: 1d27859adda1341aaa0db8a117d5431c, type: 3} + - {fileID: 11500000, guid: 912c3a32e155f4ca79a4ca1fa1f359e5, type: 3} + - {fileID: 11500000, guid: af21e649d109b416aa81541349c26926, type: 3} + - {fileID: 10207, guid: 0000000000000000e000000000000000, type: 0} + - {fileID: 11500000, guid: 9bfe18cabd8814ad0b27f5969180c1d2, type: 3} + - {fileID: 11500000, guid: 6b1bd7cbcd49b4f0b805e902cd7c3025, type: 3} + - {fileID: 11500000, guid: 6da43522623d4704e979466dc7650b65, type: 3} + - {fileID: 1197505577} + - {fileID: 1197505579} + - {fileID: 1197505578} + - {fileID: 1197505580} + - {fileID: 1197505582} + - {fileID: 11400000, guid: 266f4a39c512c46eea7e44336e4fc600, type: 2} + - {fileID: 308406596911943559, guid: a18690d2958394a129fa40db84473abf, type: 3} + - {fileID: 5458850307965270050, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 5524510864018492689, guid: 5a9a2433580c2451b8200185cb45f867, type: 3} + - {fileID: 8828428123186639208, guid: 20234a708961745eeafa459c79524348, type: 3} + - {fileID: 7248180033186031075, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 4801226466239889825, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 2100000, guid: 2424431729f1047c4b42f971c2cdd2b6, type: 2} + - {fileID: 2100000, guid: 8af6dd7f0725540388b84a4697118bb9, type: 2} + - {fileID: 8182686472733940155, guid: 9b2da5f6faa9c4d2abe557fc8f79f806, type: 3} + - {fileID: 1197505581} + - {fileID: 845605030242152257, guid: 1ea739ef6f1bf4e87835b0f554587451, type: 3} + - {fileID: 4392065290618403719, guid: a18690d2958394a129fa40db84473abf, type: 3} + - {fileID: 5952134433872257209, guid: 5a9a2433580c2451b8200185cb45f867, type: 3} + - {fileID: 5685490303190717638, guid: 5a9a2433580c2451b8200185cb45f867, type: 3} + - {fileID: 2018703855695848494, guid: 20234a708961745eeafa459c79524348, type: 3} + - {fileID: 5564891438271901146, guid: 20234a708961745eeafa459c79524348, type: 3} + - {fileID: 1315658469023090610, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 8806291656250087362, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 5989318717494774921, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 4874969544181214436, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 7085906370378666250, guid: a21d9cdd0e3454527bec5f2b0e9a9cae, type: 3} + - {fileID: 3154956539503596607, guid: 9b2da5f6faa9c4d2abe557fc8f79f806, type: 3} + - {fileID: 1476474925599486088, guid: 9b2da5f6faa9c4d2abe557fc8f79f806, type: 3} + - {fileID: 2859209460979211711, guid: 1ea739ef6f1bf4e87835b0f554587451, type: 3} + - {fileID: 5676301476469219168, guid: 1ea739ef6f1bf4e87835b0f554587451, type: 3} + - {fileID: 2852814640559356108, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 5627864271135565099, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 7167795648212539471, guid: 609cdf441cd2f4c78a430e7df78a40f4, type: 3} + - {fileID: 11500000, guid: 531894cbc68d4bf49a71825ad87c3305, type: 3} + - {fileID: 11500000, guid: 6bf8e915527fa424a8b17dc168fe20eb, type: 3} + - {fileID: 11500000, guid: a79441f348de89743a2939f4d699eac1, type: 3} + - {fileID: 11500000, guid: 79d811a12f27f43629797719fcbfc6ae, type: 3} + - {fileID: 11500000, guid: 347013242dca7c44fb5001793033ea59, type: 3} + - {fileID: 2048155077} + - {fileID: 330585546} + - {fileID: 330585543} + - {fileID: 330585544} + - {fileID: 330585547} + - {fileID: 330585550} + - {fileID: 330585549} + - {fileID: 330585548} + - {fileID: 293267687} + - {fileID: 719302917} + - {fileID: 759707323} + - {fileID: 759707324} + - {fileID: 330585545} + - {fileID: 293267688} + - {fileID: 293267689} + - {fileID: 2048155078} + - {fileID: 759707325} + - {fileID: 719302918} + - {fileID: 11500000, guid: 76c392e42b5098c458856cdf6ecaaaa1, type: 3} + - {fileID: 11500000, guid: 4f231c4fb786f3946a6b90b886c48677, type: 3} + - {fileID: 151991539} + - {fileID: 151991542} + - {fileID: 151991541} + - {fileID: 151991540} +--- !u!4 &1926461710 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 1926461707} + serializedVersion: 2 + m_LocalRotation: {x: 0, y: 0, z: 0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 0} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &2048155077 GameObject: m_ObjectHideFlags: 0 @@ -2572,3 +2528,4 @@ SceneRoots: - {fileID: 1197505579} - {fileID: 759707325} - {fileID: 151991542} + - {fileID: 1926461710} diff --git a/Assets/Scripts/Base/BaseElement.cs b/Assets/Scripts/Base/BaseElement.cs index dbd076a5..a9048f04 100644 --- a/Assets/Scripts/Base/BaseElement.cs +++ b/Assets/Scripts/Base/BaseElement.cs @@ -33,6 +33,7 @@ namespace Ichni.RhythmGame //次级模块 public List submoduleList = new List(); + public TimeDurationSubmodule timeDurationSubmodule; public TransformSubmodule transformSubmodule; public ColorSubmodule colorSubmodule; @@ -47,6 +48,7 @@ namespace Ichni.RhythmGame this.elementGuid = elementGuid; this.tags = tags; EditorManager.instance.elementList.Add(this); + submoduleList = new List(); //GameManager.beatMapContainer.beatMapElementList.Add(this); //serialNumber = totalSerialNumber++; //SetTransformObserver(); @@ -57,7 +59,9 @@ namespace Ichni.RhythmGame /// public virtual void AfterInitialize() { - + submoduleList.Add(timeDurationSubmodule); + submoduleList.Add(transformSubmodule); + submoduleList.Add(colorSubmodule); } /// @@ -209,9 +213,12 @@ namespace Ichni.RhythmGame [System.Serializable] public abstract class BaseElement_BM { - [System.NonSerialized] public static Dictionary identifier; //存档类的标识符 + [System.NonSerialized] + public static Dictionary identifier = new Dictionary(); //存档类的标识符 + + [System.NonSerialized] + public BaseElement matchedElement; //存档类对应的游戏物体 - [System.NonSerialized] public BaseElement matchedElement; //存档类对应的游戏物体 public string elementName; public List tags; public Guid elementGuid; diff --git a/Assets/Scripts/Base/Manager/EditorManager.cs b/Assets/Scripts/Base/Manager/EditorManager.cs index 6011d3a3..33a56337 100644 --- a/Assets/Scripts/Base/Manager/EditorManager.cs +++ b/Assets/Scripts/Base/Manager/EditorManager.cs @@ -2,6 +2,7 @@ using System; using System.Collections; using System.Collections.Generic; using Ichni.RhythmGame; +using Ichni.RhythmGame.Beatmap; using Ichni.RhythmGame.ThemeBundles.Basic; using Sirenix.OdinInspector; using UnityEngine; @@ -17,6 +18,9 @@ namespace Ichni public BasePrefabsCollection basePrefabs; public List elementList = new List(); + + public List elementList_BM = new List(); + public List submoduleList_BM = new List(); private void Awake() { @@ -55,6 +59,20 @@ namespace Ichni e.AfterInitialize(); e.Refresh(); }); + + elementList.ForEach(e => + { + e.SaveBM(); + e.submoduleList.RemoveAll(s=>s == null); + e.submoduleList.ForEach(s => s.SaveBM()); + }); + + //Save + elementList.ForEach(x => elementList_BM.Add(x.matchedBM)); + elementList.ForEach(x => submoduleList_BM.AddRange(x.submoduleList.ConvertAll(s => s.matchedBM))); + ES3.Save>("submoduleList", submoduleList_BM); + ES3.Save>("elementList", elementList_BM); + } private void Update() diff --git a/Assets/Scripts/GameElements/ElementFolder/ElementFolder.cs b/Assets/Scripts/GameElements/ElementFolder/ElementFolder.cs index e1b40875..f7e70633 100644 --- a/Assets/Scripts/GameElements/ElementFolder/ElementFolder.cs +++ b/Assets/Scripts/GameElements/ElementFolder/ElementFolder.cs @@ -1,6 +1,7 @@ using System; using System.Collections; using System.Collections.Generic; +using Ichni.RhythmGame.Beatmap; using Lean.Pool; using UnityEngine; @@ -31,7 +32,9 @@ namespace Ichni.RhythmGame { public override void SaveBM() { - matchedBM = new Beatmap.ElementFolder_BM(elementName, elementGuid, tags, parentElement.matchedBM); + matchedBM = parentElement != null ? + new ElementFolder_BM(elementName, elementGuid, tags, parentElement.matchedBM) : + new ElementFolder_BM(elementName, elementGuid, tags, null); } } diff --git a/Assets/Scripts/GameElements/Notes/NoteBase.cs b/Assets/Scripts/GameElements/Notes/NoteBase.cs index 37e1fd88..d937a154 100644 --- a/Assets/Scripts/GameElements/Notes/NoteBase.cs +++ b/Assets/Scripts/GameElements/Notes/NoteBase.cs @@ -80,6 +80,14 @@ namespace Ichni.RhythmGame public override void AfterInitialize() { + base.AfterInitialize(); + submoduleList.Add(generateEffects); + submoduleList.Add(generalJudgeEffects); + submoduleList.Add(perfectJudgeEffects); + submoduleList.Add(goodJudgeEffects); + submoduleList.Add(badJudgeEffects); + submoduleList.Add(missJudgeEffects); + generateEffects.effectList.ForEach(e => e.Recover()); generalJudgeEffects.effectList.ForEach(e => e.Recover()); perfectJudgeEffects.effectList.ForEach(e => e.Recover()); diff --git a/Assets/Scripts/GameElements/Track/PathNode.cs b/Assets/Scripts/GameElements/Track/PathNode.cs index 0965b5ca..1de14191 100644 --- a/Assets/Scripts/GameElements/Track/PathNode.cs +++ b/Assets/Scripts/GameElements/Track/PathNode.cs @@ -40,6 +40,8 @@ namespace Ichni.RhythmGame public override void AfterInitialize() { + base.AfterInitialize(); + Refresh(); if (track.trackPathSubmodule.pathNodeList.Count > 3) { diff --git a/Assets/Scripts/GameElements/Track/Track.cs b/Assets/Scripts/GameElements/Track/Track.cs index cb8079af..b3ac0166 100644 --- a/Assets/Scripts/GameElements/Track/Track.cs +++ b/Assets/Scripts/GameElements/Track/Track.cs @@ -34,7 +34,10 @@ namespace Ichni.RhythmGame public override void AfterInitialize() { - + base.AfterInitialize(); + submoduleList.Add(trackPathSubmodule); + submoduleList.Add(trackTimeSubmodule); + submoduleList.Add(trackRendererSubmodule); } private void Update()