添加了track的一些refresh(static没做)
TrackPercentPoint 在有Movable的前提下添加默认动画
This commit is contained in:
2025-04-12 23:59:46 +08:00
parent ca1c6f8df6
commit 7cfd6945b8
74 changed files with 4961 additions and 3497 deletions

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -162,7 +162,6 @@ MonoBehaviour:
- {fileID: 4800000, guid: 3f7a07814aa8ca44e820255a68f2ca9f, type: 3}
- {fileID: 11500000, guid: dcf702d09b6611648a7df04aa49aa927, type: 3}
- {fileID: 11500000, guid: ab1e04d0e4926e748895c81bd8791147, type: 3}
- {fileID: 2800000, guid: ee148e281f3c41c5b4ff5f8a5afe5a6c, type: 3}
- {fileID: 2800000, guid: 9968c15ee9537b645b53450d8361958c, type: 3}
- {fileID: 2100000, guid: eff639c6aea3d804486872c96eb9ec60, type: 2}
- {fileID: 4800000, guid: 4af258f019782954c9c32cd616f51c3b, type: 3}
@@ -193,9 +192,7 @@ MonoBehaviour:
- {fileID: 2800000, guid: 188dfe7e559f13248ba2c41eb5a59328, type: 3}
- {fileID: 2800000, guid: f20112bdeec2e8d4d9f80e8390e37263, type: 3}
- {fileID: 2800000, guid: 3ee40aa79cd242a5b53b0b0ca4f13f0f, type: 3}
- {fileID: 2800000, guid: 2fd6421f253b4ef1a19526541f9ffc0c, type: 3}
- {fileID: 2800000, guid: a7ec9e7ad8b847b7ae4510af83c5d868, type: 3}
- {fileID: 2800000, guid: 02f78a9ec76d40f49bfac78c64a754d1, type: 3}
- {fileID: 2800000, guid: f66c4aa44c09b6a42a2b5b9f9334d824, type: 3}
- {fileID: 2970054869584064766, guid: d00706ed05d0c4a55943214fad99b6cd, type: 3}
- {fileID: 2800000, guid: f87b5805002ec9649bcb1b96d8a16ba9, type: 3}
@@ -220,4 +217,18 @@ MonoBehaviour:
- {fileID: 11500000, guid: eb907071d10d7324995ff3aefbc2f1df, type: 3}
- {fileID: 2800000, guid: 21b64335db12190479894eb88ed5e9f6, type: 3}
- {fileID: 2011543157634142961, guid: 41993de9eb4184946b271ed039f2827a, type: 3}
_Values: febc7fe765b0407b8c8e90345544ac394753b1a281922a4e114589015196ee4776dac15926adab1e4620c9a232d1ed566ec628c1efb3c0693a954d39e3d36066f7d0f7b20b638d2be0a95163e7ea141dcc1f6b7591d3a73e949134651819880de72e3b2ecf0dbc66f70629b01243766dcd4f9bcf7dee1e4185b3b64b611e3b6ddb9f15d3e773b400f9c3036d9fa280501bc798c97db9902b9e9549f346d5832eb56db8a23f89a7640733ce3e6d52283bf75ba0ec3738db268ac131e2db057329631d4d0b8c6d0e3ae43753f6ee4b353bd2e2253bebcd1860a0d4110fb94b096d897f3d09494eb63919371d8cc711425cd33b203e27204208f885cc092656e150e128c851cd967a1faedeb3ac8643a066696941ce49905954dfd41e62741c9c0aa24726e7840a0343e00326e5bdac65587954269665689864e713ed6a2aafad56a7eda6d48a710f5ea039098a96961a33923a2536bdcc8f3956cf3dcf0690ce165927cb38a6b5d322f7c42dc76a0f38733adf6e4e962d5c724536aed9f37e2a0bdb44464957c307518d1d6d10b64b0a6e7bc20b8ff906d175ab6ca57cd054ac25fd0313370dae837788d136e691bc77608932df9423e3b3338526c6cbf834351a137c1a389017a534ffce0da47d9d35274df6eeb94b093a0b8594cefd75351f440851d414a23ed05fd81393f2f058b123a51281feba84311bb826be24e5a3a934ef519d2cc8208573c74de13776471b2de3aaa287b71dfe7cdf46a2847f54867bbdc7e042f5ddeb7b72f23af89a976e0042eb07904531eb0bafe6f4f03cf60c72c6667aae67d83705be2614c5e205e248a312fd7aec8b041ed350852f5e12e7049d558c480b488043b79862cbcac2a022982aef40f444f346a79a2ea1059b0743e0f8591ae3c7fa2d3130b993d419467c3a1a11a336459a24f05e953a20def4426fb65fc8a58b1358f90d04e060c5c571d2b1d2df9baa98256d81d67ace3ff30fdb03fd7487f0de3b24b60f810b51bf247fb2b1b92bc13b5741d788d13165e2476a8c158cb8c388005461687b65a3ff1b24340358a005f80142ff99728e376301c37373b1d6f9dd45d64ff173d548421cd7a3aefd628aa7636cec3148a304701d0398480ecfb2ba1d13492eeff76bd706bc7d4932e661634ee528ba16386a5d2e222b8a926faf1324ea91eb185bb86b273cc874da44c2c8630469d658085c1a5814ff32331eba696b6f91e488b384552cbd92da6ff683e95e632696d9866c2d4553bcd3a41560b90932df6bb3de40b07741fcea64c975b168176f69bbafbd0e02659edc6f57fa421c4de43d1617368022761e988981c87c3693c4457b358b4774d2694e3f634120464531e71ac865af2011b8ba6fdb7a7f63dd5a236d4b39183f9dc945aee841be3402ad314c4f68000774658ced46b6504c174de2429b726e0c19a8b791aa5d085276ef6d2e49321474591be0b0c606851a79f9c5352400cf703e2433a7b16f5c2e6edf6435237e961b396ee87f91be4612239c0aa4233e7677e7a55dcb88d4107f070a9e49d5b59b7e9c41c82751f6647d3f927f2a9e42277d89e9df153fdca55f4b6bcfff42469d23fcd8dc3077c189625a00baf3af2a9114c7d35516e91e8c796f198b64faa45a7d76e4cc1385ae6d5597fece2223c27907bf9d45847ed3436467e24fa936e0676b0de32eca03e1ca4ab765c42d4645930bf57524eacefd8d1cb65bedc01984f90d2e25547c193f025f28bed33a98ca8b20b0bb6153fbaec60fabeeeb580bf6ce3aa12e00df0fe90e34887cee722e374a7fe70e0f5e22a61123ec64d22b53a95330f098dcc6cb6a2f3853d2248762c7c172a46c3f1a052d5d041cddcb73bb398821d6427d6aa47b4c51c2b84e0a356679245da0771895c7d53dc4281c57ca5c0c735c465ea5452b171e5977a3a788b62300769e73c717ea69523e1b1b6350b4123f2055d2455efa01667d0c20667fd04e408a38358395e8fe2e21a0600022e3653654a6a7bbab2d126df16216a159bd23308821f7db067caf05f2c702ba2c54cd7f7f064293ad02db5d26c79132d15cd522c4908944da413d270a5d361bd5a8be626b68deac856f7d7aba654bc01482cc6a0e20814221eea63ebd9562f4c608cd307a0b62c6c47d5753ecf0758b0a83ed7892cc0db4277b417c3d600f10f3774c4f67e5b9f6dff95a6fc92d2f12633149407d249c0605e7f6013519fcda7298b975a4262324caf69875d8821306b3d1e76f57b06d3025bab57f12483e39027f0260e7a4b68a546e0a788474ed588871c418a6f4bc4de93852016a5c947150da992f
- {fileID: 4800000, guid: 650dd9526735d5b46b79224bc6e94025, type: 3}
- {fileID: 12800000, guid: 56c59f4ecd2348d41abca4cc46a07e11, type: 3}
- {fileID: 2800000, guid: 56c59f4ecd2348d41abca4cc46a07e11, type: 3}
- {fileID: 2100000, guid: 56c59f4ecd2348d41abca4cc46a07e11, type: 3}
- {fileID: 11400000, guid: 1e3c311fc27694a419baca451fc975d1, type: 2}
- {fileID: 2100000, guid: e73a58f6e2794ae7b1b7e50b7fb811b0, type: 2}
- {fileID: 2100000, guid: 79459efec17a4d00a321bdcc27bbc385, type: 2}
- {fileID: 4800000, guid: dd89cf5b9246416f84610a006f916af7, type: 3}
- {fileID: 11400000, guid: 3497dcff4899a0948918d45e2dd1209d, type: 2}
- {fileID: 2800000, guid: 96bd02e8dddad6344938e2eb170be839, type: 3}
- {fileID: 2100000, guid: 96bd02e8dddad6344938e2eb170be839, type: 3}
- {fileID: 12800000, guid: 96bd02e8dddad6344938e2eb170be839, type: 3}
- {fileID: 397643772535428835, guid: 3497dcff4899a0948918d45e2dd1209d, type: 2}
- {fileID: 1619957366814478166, guid: 3497dcff4899a0948918d45e2dd1209d, type: 2}
_Values: febc7fe765b0407b8c8e90345544ac394753b1a281922a4e114589015196ee4776dac15926adab1e4620c9a232d1ed566ec628c1efb3c0693a954d39e3d36066f7d0f7b20b638d2be0a95163e7ea141dcc1f6b7591d3a73e949134651819880de72e3b2ecf0dbc66f70629b01243766dcd4f9bcf7dee1e4185b3b64b611e3b6ddb9f15d3e773b400f9c3036d9fa280501bc798c97db9902b9e9549f346d5832eb56db8a23f89a7640733ce3e6d52283bf75ba0ec3738db268ac131e2db057329631d4d0b8c6d0e3ae43753f6ee4b353bd2e2253bebcd1860a0d4110fb94b096d897f3d09494eb63919371d8cc711425cd33b203e27204208f885cc092656e150e128c851cd967a1faedeb3ac8643a066696941ce49905954dfd41e62741c9c0aa24726e7840a0343e00326e5bdac65587954269665689864e713ed6a2aafad56a7eda6d48a710f5ea039098a96961a33923a2536bdcc8f3956cf3dcf0690ce165927cb38a6b5d322f7c42dc76a0f38733adf6e4e962d5c724536aed9f37e2a0bdb44464957c307518d1d6d10b64b0a6e7bc20b8ff906d175ab6ca57cd054ac25fd0313370dae837788d136e691bc77608932df9423e3b3338526c6cbf834351a137c1a389017a534ffce0da47d9d35274df6eeb94b093a0b8594cefd75351f440851d414a23ed05fd81393f2f058b123a51281feba84311bb826be24e5a3a934ef519d2cc8208573c74de13776471b2de3aaa287b71dfe7cdf46a2847f54867bbdc7e042f5ddeb7b72f23af89a976e0042eb07904531eb0bafe6f4f03cf60c72c6667aae67d83705be2614c5e205e248a312fd7aec8b041ed350852f5e12e7049d558c480b488043b79862cbcac2a022982aef40f444f346a79a2ea1059b0743e0f8591ae3c7fa2d3130b993d419467c3a1a11a336459a24f05e953a20def4426fb65fc8a58b1358f90d04e060c5c571d2b1d2df9baa98256d81d67ace3ff30fdb03fd7487f0de3b24b60f810b51bf247fb2b1b92bc13b5741d788d13165e2476a8c158cb8c388005461687b65a3ff1b24340358a005f80142ff99728e376301c37373b1d6f9dd45d64ff173d548421cd7a3aefd628aa7636cec3148a304701d0398480ecfb2ba1d13492eeff76bd706bc7d4932e661634ee528ba16386a5d2e222b8a926faf1324ea91eb185bb86b273cc874da44c2c8630469d658085c1a5814ff32331eba696b6f91e488b384552cbd92da6ff683e95e632696d9866c2d4553bcd3a41560b90932df6bb3de40b07741fcea64c975b168176f69bbafbd0e02659edc6f57fa421c4de43d1617368022761e988981c87c3693c4457b358b4774d2694e3f634120464531e71ac865af2011b8ba6fdb7a7f63dd5a236d4b39183f9dc945aee841be3402ad314c4f68000774658ced46b6504c174de2429b726e0c19a8b791aa5d085276ef6d2e49321474591be0b0c606851a79f9c5352400cf703e2433a7b16f5c2e6edf6435237e961b396ee87f91be4612239c0aa4233e7677e7a55dcb88d4107f070a9e49d5b59b7e9c41c82751f6647d3f927f2a9e42277d89e9df153fdca55f4b6bcfff42469d23fcd8dc3077c189625a00baf3af2a9114c7d35516e91e8c796f198b64faa45a7d76e4cc1385ae6d5597fece2223c2790767e24fa936e0676b0de32eca03e1ca4ab765c42d4645930bf57524eacefd8d1cb65bedc01984f90d2e25547c193f025f28bed33a98ca8b20b0bb6153fbaec60fabeeeb580bf6ce3aa12e00df0fe90e34887cee722e374a7fe70e0f5e22a61123ec64d22b53a95330f098dcc6cb6a2f3853d2248762c7c172a46c3f1a052d5d041cddcb73bb398821d6427d6aa47b4c51c2b84e0a356679245da0771895c7d53dc4281c57ca5c0c735c465ea5452b171e5977a3a788b62300769e73c717ea69523e1b1b6350b4123f2055d2455efa01667d0c20667fd04e408a38358395e8fe2e21a0600022e3653654a6a7bbab2d126d8821f7db067caf057f064293ad02db5d26c79132d15cd522c4908944da413d270a5d361bd5a8be626b68deac856f7d7aba654bc01482cc6a0e20814221eea63ebd9562f4c608cd307a0b62c6c47d5753ecf0758b0a83ed7892cc0db4277b417c3d600f10f3774c4f67e5b9f6dff95a6fc92d2f12633149407d249c0605e7f6013519fcda7298b975a4262324caf69875d8821306b3d1e76f57b06d3025bab57f12483e39027f0260e7a4b68a546e0a788474ed588871c418a6f4bc4de93852016a5c947150da992f0af17fc19603432768e6fe4375176058af2698f75295c034652546000a1f4747974a8bb1e79e1c627676cb950ee7484a337fe927519074615183074115cf5849624826405ceebf10f6c992369faabc7e24043374cae00a27bfed026ba65e77591e81f6560d89a621c206ce7802c23e58

View File

@@ -237,7 +237,7 @@ MonoBehaviour:
m_OnCullStateChanged:
m_PersistentCalls:
m_Calls: []
m_text: Game Element Name
m_text: "\u6D4B\u8BD5123ABC\u3042\u3044\u3046\u3048\u304A"
m_isRightToLeft: 0
m_fontAsset: {fileID: 11400000, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
m_sharedMaterial: {fileID: 2180264, guid: 8f586378b4e144a9851e7b34d9b748ee, type: 2}
@@ -264,7 +264,7 @@ MonoBehaviour:
m_faceColor:
serializedVersion: 2
rgba: 4294967295
m_fontSize: 25.7
m_fontSize: 26.85
m_fontSizeBase: 24
m_fontWeight: 400
m_enableAutoSizing: 1

View File

@@ -18,6 +18,7 @@ namespace Ichni.RhythmGame
public override void SetDefaultSubmodules()
{
timeDurationSubmodule = new TimeDurationSubmodule(this);
}
/// <summary>

View File

@@ -12,34 +12,31 @@ namespace Ichni.RhythmGame
{
private TransformSubmodule targetTransformSubmodule;
public FlexibleFloat eulerAngleX, eulerAngleY, eulerAngleZ;
public static Swirl GenerateElement(string elementName, Guid id,
public static Swirl GenerateElement(string elementName, Guid id,
List<string> tags, bool isFirstGenerated, GameElement animatedObject,
FlexibleFloat eulerAngleX, FlexibleFloat eulerAngleY, FlexibleFloat eulerAngleZ)
{
Swirl swirl = Instantiate(EditorManager.instance.basePrefabs.emptyObject).AddComponent<Swirl>();
swirl.Initialize(elementName, id, tags, isFirstGenerated, animatedObject);
swirl.animatedObject = animatedObject;
swirl.eulerAngleX = eulerAngleX;
swirl.eulerAngleY = eulerAngleY;
swirl.eulerAngleZ = eulerAngleZ;
swirl.animationReturnType = FlexibleReturnType.Before;
swirl.targetTransformSubmodule = (animatedObject as IHaveTransformSubmodule).transformSubmodule;
//swirl.timeDurationSubmodule.SetDuration(eulerAngleX, eulerAngleY, eulerAngleZ);
return swirl;
}
public override void SetDefaultSubmodules()
{
timeDurationSubmodule = new TimeDurationSubmodule(this);
}
protected override void UpdateAnimation(float songTime)
{
@@ -61,7 +58,7 @@ namespace Ichni.RhythmGame
animationReturnType = FlexibleReturnType.MiddleInterval;
}
}
public override void ApplyTimeOffset(float offset)
{
base.ApplyTimeOffset(offset);
@@ -70,7 +67,7 @@ namespace Ichni.RhythmGame
eulerAngleZ.animations.ForEach(anim => anim.ApplyTimeOffset(offset));
}
}
public partial class Swirl
{
public override void SaveBM()
@@ -82,10 +79,10 @@ namespace Ichni.RhythmGame
public override void SetUpInspector()
{
base.SetUpInspector();
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Swirl");
var eulerAngleXButton = inspector.GenerateButton(this, container, "Euler Angle X",
() =>
{
@@ -101,19 +98,19 @@ namespace Ichni.RhythmGame
{
inspector.GenerateCompositeParameterWindow(this, "Euler Angle Z", nameof(eulerAngleZ)).SetAsFlexibleFloat();
});
var graphicEditor = inspector.GenerateButton(this, container, "GraphicEditor",
() =>
{
inspector.GenerateGraphicalFlexibleFloatWindow(this, "Displacement",
new FlexibleFloat[] { eulerAngleX, eulerAngleY, eulerAngleZ },
new FlexibleFloat[] { eulerAngleX, eulerAngleY, eulerAngleZ },
new string[] { "EulerX", "EulerY", "EulerZ" });
});
container.SetDeviver(1);
}
}
namespace Beatmap
{
public class Swirl_BM : AnimationBase_BM
@@ -121,10 +118,10 @@ namespace Ichni.RhythmGame
public FlexibleFloat_BM eulerAngleX, eulerAngleY, eulerAngleZ;
public Swirl_BM()
{
}
public Swirl_BM(string elementName, Guid elementGuid, List<string> tags, GameElement_BM attachedElement,
public Swirl_BM(string elementName, Guid elementGuid, List<string> tags, GameElement_BM attachedElement,
FlexibleFloat_BM eulerAngleX, FlexibleFloat_BM eulerAngleY, FlexibleFloat_BM eulerAngleZ)
: base(elementName, elementGuid, tags, attachedElement)
{
@@ -135,7 +132,7 @@ namespace Ichni.RhythmGame
public override void ExecuteBM()
{
matchedElement = Swirl.GenerateElement(elementName, elementGuid, tags, false, GetElement(attachedElementGuid),
matchedElement = Swirl.GenerateElement(elementName, elementGuid, tags, false, GetElement(attachedElementGuid),
eulerAngleX.ConvertToGameType(), eulerAngleY.ConvertToGameType(), eulerAngleZ.ConvertToGameType());
}

View File

@@ -57,8 +57,12 @@ namespace Ichni.RhythmGame
startTimes.Add(flexibleFloat.animations[0].startTime);
endTimes.Add(flexibleFloat.animations[^1].endTime);
}
else continue;
}
if (startTimes.Count == 0 || endTimes.Count == 0)
{
return;
}
startTime = startTimes.Min();
endTime = endTimes.Max();
}
@@ -94,7 +98,7 @@ namespace Ichni.RhythmGame
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Time Duration");
var overrideToggle = inspector.GenerateToggle(this, container, "Override Duration", nameof(isOverridingDuration));
var startTimeInputField = inspector.GenerateInputField(this, container, "Start Time", nameof(startTime));
var endTimeInputField = inspector.GenerateInputField(this, container, "End Time", nameof(endTime));

View File

@@ -39,6 +39,17 @@ namespace Ichni.RhythmGame
point.isBeyond1 = trackPercent.animations.Any(animation => animation.endValue > 1); //判断是否有超过1的动画超过1将会循环
//添加默认动画
if (point.parentElement is Track track1 && track1.submoduleList.Where(submodule => submodule is TrackTimeSubmoduleMovable).Count() == 1)
{
TrackTimeSubmoduleMovable trackTimeSubmoduleMovable = track1.submoduleList.Where(submodule => submodule is TrackTimeSubmoduleMovable).FirstOrDefault() as TrackTimeSubmoduleMovable;
point.trackPercent.Add(
new AnimatedFloat(trackTimeSubmoduleMovable.trackStartTime, trackTimeSubmoduleMovable.trackEndTime, 0, 1, AnimationCurveType.Linear)); //添加一个默认的动画
}
return point;
}
@@ -86,12 +97,12 @@ namespace Ichni.RhythmGame
{
inspector.GenerateCompositeParameterWindow(this, "Track Percent", nameof(trackPercent)).SetAsFlexibleFloat();
});
var generateTrailButton = inspector.GenerateButton(this, container, "Generate Trail", () =>
{
Trail.GenerateElement("New Trail", Guid.NewGuid(), new List<string>(),
true, this, 1, true,
1, AnimationCurve.Constant(0,1, 1));
Trail.GenerateElement("New Trail", Guid.NewGuid(), new List<string>(),
true, this, 1, true,
1, AnimationCurve.Constant(0, 1, 1));
});
}
}

View File

@@ -18,14 +18,14 @@ namespace Ichni.RhythmGame
public Track.TrackSpaceType trackSpaceType;
public Track.TrackSamplingType trackSamplingType;
public bool isClosed;
public bool isShowingDisplay;
public TrackPathSubmodule(Track track, Track.TrackSpaceType trackSpaceType,
public TrackPathSubmodule(Track track, Track.TrackSpaceType trackSpaceType,
Track.TrackSamplingType trackSamplingType, bool isClosed, bool isShowingDisplay) : base(track)
{
this.path = track.AddComponent<SplineComputer>();
this.track.trackPathSubmodule = this;
this.pathNodeList = new List<PathNode>();
this.trackSpaceType = trackSpaceType;
@@ -33,15 +33,15 @@ namespace Ichni.RhythmGame
this.isClosed = isClosed;
this.path.sampleRate = 16;
SetUpSplineComputer(this.trackSpaceType, this.trackSamplingType);
//闭合路径在PathNode生成时执行在初始化的情况下PathNode数量为0不会执行闭合操作
this.isShowingDisplay = isShowingDisplay;
this.trackDisplay = UnityEngine.Object.Instantiate(EditorManager.instance.basePrefabs.trackDisplay, track.transform).GetComponent<SplineRenderer>();
this.trackDisplay.spline = path;
this.trackDisplay.size = 0.1f;
this.SetDisplay(isShowingDisplay);
}
}
@@ -77,13 +77,33 @@ namespace Ichni.RhythmGame
{
path.SetPoint(point.index, point.node, SplineComputer.Space.Local);
}
public void SetDisplay(bool isShowing)
{
this.isShowingDisplay = isShowing;
trackDisplay.gameObject.SetActive(isShowing);
}
public override void Refresh()
{
if (trackSpaceType == Track.TrackSpaceType.Linear)
{
SetTrackSpaceType((int)Spline.Type.Linear);
path.type = Spline.Type.Linear;
}
else
{
SetTrackSpaceType((int)trackSpaceType);
SetUpSplineComputer(trackSpaceType, trackSamplingType);
}
foreach (var pathNode in pathNodeList)
{
SetPathNode(pathNode);
}
ClosePath();
}
}
public partial class TrackPathSubmodule
@@ -97,22 +117,22 @@ namespace Ichni.RhythmGame
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Track Path");
var trackSpaceDropdown =
inspector.GenerateDropdown(this, container, "Space Type", typeof(Track.TrackSpaceType), nameof(trackSpaceType));
var trackSamplingDropdown =
inspector.GenerateDropdown(this, container, "Sampling Type", typeof(Track.TrackSamplingType), nameof(trackSamplingType));
var isClosedToggle =
var isClosedToggle =
inspector.GenerateToggle(this, container, "Is Closed", nameof(isClosed));
isClosedToggle.AddListenerFunction(ClosePath);
var generatePathNodeButton = inspector.GenerateButton(this, container, "Generate Path Node", () =>
{
PathNode.GenerateElement("New Path Node", Guid.NewGuid(), new List<string>(), true, track, true);
});
var showDisplayToggle = inspector.GenerateToggle(this, container, "Show Display", nameof(isShowingDisplay));
showDisplayToggle.AddListenerFunction(() => SetDisplay(isShowingDisplay));
}
@@ -126,10 +146,10 @@ namespace Ichni.RhythmGame
public Track.TrackSamplingType trackSamplingType;
public bool isClosed;
public bool isShowingDisplay;
public TrackPathSubmodule_BM()
{
}
@@ -155,6 +175,6 @@ namespace Ichni.RhythmGame
track.trackPathSubmodule = new TrackPathSubmodule(track, trackSpaceType, trackSamplingType, isClosed, isShowingDisplay);
}
}
}
}

View File

@@ -61,7 +61,20 @@ namespace Ichni.RhythmGame
float per = AnimationCurveEvaluator.Evaluate(animationCurveType, (songTimeInTime - trackStartTime) / trackTotalTime);
return Mathf.Clamp01(per);
}
public override void Refresh()
{
trackTotalTime = trackEndTime - trackStartTime;
UpdateTrackPart();
track.childElementList.ForEach(child =>
{
if (child is NoteBase note)
{
note.UpdateNoteInTrack();
}
});
}
public override void SaveBM()
{
matchedBM = new Beatmap.TrackTimeSubmoduleMovable_BM(attachedGameElement, this);
@@ -71,22 +84,22 @@ namespace Ichni.RhythmGame
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
Inspector inspectorMain = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Track Time Movable");
var startTimeInputField =
inspector.GenerateInputField(this, container, "Start Time", nameof(trackStartTime));
startTimeInputField.AddListenerFunction(RefreshChildren);
var endTimeInputField = inspector.GenerateInputField(this, container, "End Time", nameof(trackEndTime));
endTimeInputField.AddListenerFunction(RefreshChildren);
var visibleTimeInputField =
inspector.GenerateInputField(this, container, "Visible Time Length", nameof(visibleTrackTimeLength));
var animationCurveDropdown = inspector.GenerateDropdown(this, container, "Animation Curve",
typeof(AnimationCurveType), nameof(animationCurveType));
animationCurveDropdown.AddListenerFunction(RefreshChildren);
var deleteButton = inspector.GenerateButton(this, container, "Delete",
() =>
{
@@ -117,12 +130,12 @@ namespace Ichni.RhythmGame
public float trackEndTime;
public float visibleTrackTimeLength;
public AnimationCurveType animationCurveType;
public TrackTimeSubmoduleMovable_BM()
{
}
public TrackTimeSubmoduleMovable_BM(GameElement attachedElement, TrackTimeSubmoduleMovable trackTimeSubmoduleMovable) : base(attachedElement)
{
trackStartTime = trackTimeSubmoduleMovable.trackStartTime;
@@ -130,14 +143,14 @@ namespace Ichni.RhythmGame
visibleTrackTimeLength = trackTimeSubmoduleMovable.visibleTrackTimeLength;
animationCurveType = trackTimeSubmoduleMovable.animationCurveType;
}
public override void ExecuteBM()
{
attachedElement = GameElement_BM.GetElement(attachedElementGuid);
Track track = attachedElement as Track;
track.trackTimeSubmodule = new TrackTimeSubmoduleMovable(track, trackStartTime, trackEndTime, visibleTrackTimeLength, animationCurveType);
}
public override void DuplicateBM(GameElement attached)
{
Track track = attached as Track;
@@ -163,17 +176,31 @@ namespace Ichni.RhythmGame
this.tailPercent = 1;
//timeDurationSubmodule 根据下辖Note的时间来设置
}
public override void Refresh()
{
if (track.trackRendererSubmodule != null)
{
track.trackRendererSubmodule.meshGenerator.clipFrom = tailPercent;
track.trackRendererSubmodule.meshGenerator.clipTo = headPercent;
}
track.childElementList.ForEach(child =>
{
if (child is NoteBase note)
{
note.UpdateNoteInTrack();
}
});
}
public override void SaveBM()
{
matchedBM = new Beatmap.TrackTimeSubmoduleStatic_BM(attachedGameElement, this);
}
public override void SetUpInspector()
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
Inspector inspectorMain = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Track Time Static");
var totalTimeInputField =
inspector.GenerateInputField(this, container, "Total Time", nameof(trackTotalTime));
@@ -196,25 +223,25 @@ namespace Ichni.RhythmGame
{
public float trackTotalTime;
public AnimationCurveType animationCurveType;
public TrackTimeSubmoduleStatic_BM()
{
}
public TrackTimeSubmoduleStatic_BM(GameElement attachedElement, TrackTimeSubmoduleStatic trackTimeSubmoduleStatic) : base(attachedElement)
{
trackTotalTime = trackTimeSubmoduleStatic.trackTotalTime;
animationCurveType = trackTimeSubmoduleStatic.animationCurveType;
}
public override void ExecuteBM()
{
attachedElement = GameElement_BM.GetElement(attachedElementGuid);
Track track = attachedElement as Track;
track.trackTimeSubmodule = new TrackTimeSubmoduleStatic(track, trackTotalTime, animationCurveType);
}
public override void DuplicateBM(GameElement attached)
{
Track track = attached as Track;

View File

@@ -1082,8 +1082,8 @@
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackRendererSubmodulePathGenerator_BM,Assembly-CSharp",
"materialThemeBundleName" : "departure_to_multiverse",
"materialName" : "EnergyTrail0",
"materialThemeBundleName" : "",
"materialName" : "",
"enableEmission" : false,
"emissionIntensity" : 0,
"attachedElementGuid" : {
@@ -1267,10 +1267,10 @@
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackRendererSubmodulePathGenerator_BM,Assembly-CSharp",
"materialThemeBundleName" : "departure_to_multiverse",
"materialName" : "EnergyTrail0",
"materialThemeBundleName" : "",
"materialName" : "",
"enableEmission" : false,
"emissionIntensity" : 1,
"emissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "2f2377bf-1a79-4d0d-bb0b-97bdfac069f0"
}
@@ -1920,7 +1920,7 @@
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackTimeSubmoduleMovable_BM,Assembly-CSharp",
"trackStartTime" : 0,
"trackEndTime" : 1,
"trackEndTime" : 2,
"visibleTrackTimeLength" : 1,
"animationCurveType" : 2,
"attachedElementGuid" : {

View File

@@ -0,0 +1,493 @@
{
"BeatMap" : {
"__type" : "Ichni.RhythmGame.Beatmap.BeatmapContainer_BM,Assembly-CSharp",
"value" : {
"elementList" : [
{
"__type" : "Ichni.RhythmGame.Beatmap.ElementFolder_BM,Assembly-CSharp",
"elementName" : "cam",
"tags" : [
],
"elementGuid" : {
"value" : "79163056-a50f-4d47-8387-73a11b40ad6f"
},
"attachedElementGuid" : {
"value" : "00000000-0000-0000-0000-000000000000"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"y" : 10,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "79163056-a50f-4d47-8387-73a11b40ad6f"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "79163056-a50f-4d47-8387-73a11b40ad6f"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.GameCamera_BM,Assembly-CSharp",
"cameraViewType" : 0,
"perspectiveAngle" : 60,
"orthographicSize" : 10,
"elementName" : "New Camera",
"tags" : [
],
"elementGuid" : {
"value" : "18e4ad74-d656-4f48-9787-5ce147d331f5"
},
"attachedElementGuid" : {
"value" : "79163056-a50f-4d47-8387-73a11b40ad6f"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "18e4ad74-d656-4f48-9787-5ce147d331f5"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.Displacement_BM,Assembly-CSharp",
"positionX" : {
"animatedFloatList" : [
]
},
"positionY" : {
"animatedFloatList" : [
]
},
"positionZ" : {
"animatedFloatList" : [
{
"startValue" : 0,
"endValue" : 100,
"startTime" : 0,
"endTime" : 7.5,
"animationCurveType" : 0
},{
"startValue" : 100,
"endValue" : 200,
"startTime" : 7.5,
"endTime" : 15,
"animationCurveType" : 0
}
]
},
"elementName" : "New Displacement",
"tags" : [
],
"elementGuid" : {
"value" : "2d8e0851-8c4a-4ff4-9602-2ccb313730c4"
},
"attachedElementGuid" : {
"value" : "79163056-a50f-4d47-8387-73a11b40ad6f"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "2d8e0851-8c4a-4ff4-9602-2ccb313730c4"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.Swirl_BM,Assembly-CSharp",
"eulerAngleX" : {
"animatedFloatList" : [
{
"startValue" : 0,
"endValue" : 30,
"startTime" : 0,
"endTime" : 1.875,
"animationCurveType" : 5
}
]
},
"eulerAngleY" : {
"animatedFloatList" : [
]
},
"eulerAngleZ" : {
"animatedFloatList" : [
{
"startValue" : 0,
"endValue" : 15,
"startTime" : 0,
"endTime" : 1.875,
"animationCurveType" : 6
},{
"startValue" : 15,
"endValue" : -15,
"startTime" : 1.875,
"endTime" : 5.625,
"animationCurveType" : 3
},{
"startValue" : -15,
"endValue" : 15,
"startTime" : 5.625,
"endTime" : 9.375,
"animationCurveType" : 3
},{
"startValue" : 15,
"endValue" : -15,
"startTime" : 9.375,
"endTime" : 13.125,
"animationCurveType" : 3
},{
"startValue" : -15,
"endValue" : 0,
"startTime" : 13.125,
"endTime" : 14.0625,
"animationCurveType" : 29
}
]
},
"elementName" : "New Swirl",
"tags" : [
],
"elementGuid" : {
"value" : "bc00cf46-3a98-464f-8e76-38d6bf57f74e"
},
"attachedElementGuid" : {
"value" : "79163056-a50f-4d47-8387-73a11b40ad6f"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "bc00cf46-3a98-464f-8e76-38d6bf57f74e"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.ElementFolder_BM,Assembly-CSharp",
"elementName" : "TRACKS",
"tags" : [
],
"elementGuid" : {
"value" : "3627d7ce-a521-4e64-810a-31c7ae5cf375"
},
"attachedElementGuid" : {
"value" : "00000000-0000-0000-0000-000000000000"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "3627d7ce-a521-4e64-810a-31c7ae5cf375"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "3627d7ce-a521-4e64-810a-31c7ae5cf375"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.Track_BM,Assembly-CSharp",
"elementName" : "New Track",
"tags" : [
],
"elementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
},
"attachedElementGuid" : {
"value" : "3627d7ce-a521-4e64-810a-31c7ae5cf375"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackPathSubmodule_BM,Assembly-CSharp",
"trackSpaceType" : 2,
"trackSamplingType" : 0,
"isClosed" : false,
"isShowingDisplay" : false,
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackTimeSubmoduleMovable_BM,Assembly-CSharp",
"trackStartTime" : 0,
"trackEndTime" : 1,
"visibleTrackTimeLength" : 1,
"animationCurveType" : 0,
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackRendererSubmoduleAutoOrient_BM,Assembly-CSharp",
"materialThemeBundleName" : "",
"materialName" : "",
"enableEmission" : false,
"emissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.PathNode_BM,Assembly-CSharp",
"isShowingSphere" : true,
"elementName" : "New Path Node",
"tags" : [
],
"elementGuid" : {
"value" : "b4302048-2d5d-40b0-8868-7d77602d8eb9"
},
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "b4302048-2d5d-40b0-8868-7d77602d8eb9"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "b4302048-2d5d-40b0-8868-7d77602d8eb9"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.ColorSubmodule_BM,Assembly-CSharp",
"originalBaseColor" : {
"r" : 1,
"g" : 1,
"b" : 1,
"a" : 1
},
"emissionEnabled" : false,
"originalEmissionColor" : {
"r" : 0,
"g" : 0,
"b" : 0,
"a" : 1
},
"originalEmissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "b4302048-2d5d-40b0-8868-7d77602d8eb9"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.PathNode_BM,Assembly-CSharp",
"isShowingSphere" : true,
"elementName" : "New Path Node",
"tags" : [
],
"elementGuid" : {
"value" : "0cbbb936-239b-49de-8f52-a5357227f1ee"
},
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 5,
"y" : 0,
"z" : 100
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "0cbbb936-239b-49de-8f52-a5357227f1ee"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "0cbbb936-239b-49de-8f52-a5357227f1ee"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.ColorSubmodule_BM,Assembly-CSharp",
"originalBaseColor" : {
"r" : 1,
"g" : 1,
"b" : 1,
"a" : 1
},
"emissionEnabled" : false,
"originalEmissionColor" : {
"r" : 0,
"g" : 0,
"b" : 0,
"a" : 1
},
"originalEmissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "0cbbb936-239b-49de-8f52-a5357227f1ee"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.PathNode_BM,Assembly-CSharp",
"isShowingSphere" : true,
"elementName" : "New Path Node",
"tags" : [
],
"elementGuid" : {
"value" : "340d84e5-7ffa-4d3b-b5b8-3a1d45f43243"
},
"attachedElementGuid" : {
"value" : "c7a184d3-75eb-447a-8fc0-5b232931b777"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"y" : 0,
"z" : 200
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "340d84e5-7ffa-4d3b-b5b8-3a1d45f43243"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "340d84e5-7ffa-4d3b-b5b8-3a1d45f43243"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.ColorSubmodule_BM,Assembly-CSharp",
"originalBaseColor" : {
"r" : 1,
"g" : 1,
"b" : 1,
"a" : 1
},
"emissionEnabled" : false,
"originalEmissionColor" : {
"r" : 0,
"g" : 0,
"b" : 0,
"a" : 1
},
"originalEmissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "340d84e5-7ffa-4d3b-b5b8-3a1d45f43243"
}
}
],
"attachedElementGuid" : {
"value" : "00000000-0000-0000-0000-000000000000"
}
}
}
}

View File

@@ -0,0 +1,193 @@
{
"Clip" : {
"__type" : "System.Collections.Generic.List`1[[Ichni.RhythmGame.Beatmap.BaseElement_BM, Assembly-CSharp, Version=0.0.0.0, Culture=neutral, PublicKeyToken=null]],mscorlib",
"value" : [
{
"__type" : "Ichni.RhythmGame.Beatmap.Track_BM,Assembly-CSharp",
"elementName" : "3Dwall",
"tags" : [
],
"elementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
},
"attachedElementGuid" : {
"value" : "00000000-0000-0000-0000-000000000000"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 25,
"y" : 0,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackPathSubmodule_BM,Assembly-CSharp",
"trackSpaceType" : 0,
"trackSamplingType" : 0,
"isClosed" : false,
"isShowingDisplay" : false,
"attachedElementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackTimeSubmoduleStatic_BM,Assembly-CSharp",
"trackTotalTime" : 1,
"animationCurveType" : 0,
"attachedElementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackRendererSubmodulePathGenerator_BM,Assembly-CSharp",
"materialThemeBundleName" : "",
"materialName" : "",
"enableEmission" : false,
"emissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.PathNode_BM,Assembly-CSharp",
"isShowingSphere" : false,
"elementName" : "New Path Node",
"tags" : [
],
"elementGuid" : {
"value" : "3660327a-45fb-464d-9025-450fc3064973"
},
"attachedElementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : -10,
"y" : 0,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 10,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "3660327a-45fb-464d-9025-450fc3064973"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "3660327a-45fb-464d-9025-450fc3064973"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.ColorSubmodule_BM,Assembly-CSharp",
"originalBaseColor" : {
"r" : 0,
"g" : 1,
"b" : 0,
"a" : 1
},
"emissionEnabled" : false,
"originalEmissionColor" : {
"r" : 0,
"g" : 0,
"b" : 0,
"a" : 1
},
"originalEmissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "3660327a-45fb-464d-9025-450fc3064973"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.PathNode_BM,Assembly-CSharp",
"isShowingSphere" : false,
"elementName" : "New Path Node",
"tags" : [
],
"elementGuid" : {
"value" : "cd28dc86-da38-4612-8254-fec38ba18bf2"
},
"attachedElementGuid" : {
"value" : "ce3bfff0-ce95-48db-842e-52d898506140"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : -10,
"y" : 20,
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 10,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "cd28dc86-da38-4612-8254-fec38ba18bf2"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "cd28dc86-da38-4612-8254-fec38ba18bf2"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.ColorSubmodule_BM,Assembly-CSharp",
"originalBaseColor" : {
"r" : 0,
"g" : 0,
"b" : 1,
"a" : 1
},
"emissionEnabled" : false,
"originalEmissionColor" : {
"r" : 0,
"g" : 0,
"b" : 0,
"a" : 1
},
"originalEmissionIntensity" : 0,
"attachedElementGuid" : {
"value" : "cd28dc86-da38-4612-8254-fec38ba18bf2"
}
}
]
}
}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c602be09df9ff62439bdf252e3730cb2
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 6babd3be240546a4894edc460a02412a
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 343095be470947641b76e39b17755a25
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 919241b876cd8df4082aa16771554d8a
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 684b3e137fc1d1145ad4ca90dd63914d
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 47b206e9bad11a349a8c97a88028f5cf
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3555891f33fa1e04381b2e6c6ea7373a
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 6bf77d32a0a9b314ca451ebf4448634d
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: afdcb15cdf668c44f8aefdafa598fe2e
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: c30f48e7324b0204fb432660a6b660c1
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: a2ffb7e2b665348d8af211996c337be6
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 50379fdcfefa54bd2bc45c900e3db318
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: ab53f1438957c48ca8d3166755f9baba
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,10 @@
ManifestFileVersion: 0
CRC: 2300548296
AssetBundleManifest:
AssetBundleInfos:
Info_0:
Name: departure_to_multiverse
Dependencies: {}
Info_1:
Name: basic
Dependencies: {}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 175fd9b664900436ab65aef5b9673b61
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: a49f2ebd8c1ef4dae82289e5f8ac1387
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,102 @@
ManifestFileVersion: 0
CRC: 2992211523
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: 73ef2d7af62445869692313a69a03580
TypeTreeHash:
serializedVersion: 2
Hash: b0381af468dfa38d2d34223ebeb2d739
IncrementalBuildHash:
serializedVersion: 2
Hash: 73ef2d7af62445869692313a69a03580
HashAppended: 0
ClassTypes:
- Class: 1
Script: {instanceID: 0}
- Class: 4
Script: {instanceID: 0}
- Class: 21
Script: {instanceID: 0}
- Class: 23
Script: {instanceID: 0}
- Class: 28
Script: {instanceID: 0}
- Class: 33
Script: {instanceID: 0}
- Class: 43
Script: {instanceID: 0}
- Class: 48
Script: {instanceID: 0}
- Class: 65
Script: {instanceID: 0}
- Class: 108
Script: {instanceID: 0}
- Class: 114
Script: {fileID: 11500000, guid: 77ab80dc0820f9d4a8cd9fddbbc89057, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: b73aa7982dc9e4261b2ff45db0112d48, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: d94f163ef3d384b7eac5af0a344d786d, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 0def5156137c6d14082064fa7b5d5247, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 9a7a990728bad4e9ba201e72267e7eca, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 474bcb49853aa07438625e644c072ee6, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 2e1690bb01d509a439fc991a10f8278f, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 7e32cd989d5ff4f52b2b9ca2436698e6, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 4d3011bfdcb00476fbd1a7de86d1c1cb, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 72caf325f2b59403c94193cd2037b7ba, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: cba1fe17342b14361bb504a9a506878b, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: f92b9b8f89de544adaa001ccfdf7eae4, type: 3}
- Class: 115
Script: {instanceID: 0}
- Class: 212
Script: {instanceID: 0}
- Class: 213
Script: {instanceID: 0}
SerializeReferenceClassIdentifiers:
- AssemblyName: Assembly-CSharp
ClassName: Dreamteck.Splines.ColorModifier
- AssemblyName: Assembly-CSharp
ClassName: Dreamteck.Splines.OffsetModifier
- AssemblyName: Assembly-CSharp
ClassName: Dreamteck.Splines.RotationModifier
- AssemblyName: Assembly-CSharp
ClassName: Dreamteck.Splines.SizeModifier
- AssemblyName: Assembly-CSharp
ClassName: Dreamteck.Splines.SplineSample
- AssemblyName: Assembly-CSharp
ClassName: Dreamteck.Splines.TransformModule
- AssemblyName: Sirenix.Serialization
ClassName: Sirenix.Serialization.SerializationData
Assets:
- Assets/ThemeBundles/Basic/Prefabs/Plane.prefab
- Assets/ThemeBundles/Basic/Prefabs/BasicNoteHoldMovable.prefab
- Assets/ThemeBundles/Basic/Prefabs/Square2D.prefab
- Assets/ThemeBundles/Basic/Prefabs/Cube.prefab
- Assets/ThemeBundles/Basic/Prefabs/Cylinder.prefab
- Assets/ThemeBundles/Basic/Prefabs/Circle2D.prefab
- Assets/ThemeBundles/Basic/Prefabs/Hexagon2D.prefab
- Assets/ThemeBundles/Basic/Prefabs/BasicNoteHoldStrip.prefab
- Assets/ThemeBundles/Basic/Prefabs/IsometricDiamond2D.prefab
- Assets/ThemeBundles/Basic/Prefabs/EmptyObject.prefab
- Assets/ThemeBundles/Basic/Prefabs/Capsule2D.prefab
- Assets/ThemeBundles/Basic/Prefabs/Capsule.prefab
- Assets/ThemeBundles/Basic/Prefabs/Triangle2D.prefab
- Assets/ThemeBundles/Basic/Prefabs/Sphere.prefab
- Assets/ThemeBundles/Basic/Prefabs/JudgeTrigger.prefab
- Assets/ThemeBundles/Basic/Prefabs/Quad.prefab
- Assets/ThemeBundles/Basic/Prefabs/BasicNoteTap3D.prefab
- Assets/ThemeBundles/Basic/Prefabs/BasicNoteHoldStatic.prefab
- Assets/ThemeBundles/Basic/Prefabs/DirectionalLight.prefab
- Assets/ThemeBundles/Basic/Prefabs/BasicNoteHoldTube.prefab
- Assets/ThemeBundles/Basic/Prefabs/PointLight.prefab
Dependencies: []

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 7cd1c31164500418498415c1203ad157
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: e1779cd0b4513419889855538d5626fb
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,61 @@
ManifestFileVersion: 0
CRC: 3261250517
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: a803dabc470dfe50fe03b3b5c6c99666
TypeTreeHash:
serializedVersion: 2
Hash: 404a8c1c6e0f12c1e3c4bdd4b6e7abe8
IncrementalBuildHash:
serializedVersion: 2
Hash: a803dabc470dfe50fe03b3b5c6c99666
HashAppended: 0
ClassTypes:
- Class: 1
Script: {instanceID: 0}
- Class: 4
Script: {instanceID: 0}
- Class: 21
Script: {instanceID: 0}
- Class: 23
Script: {instanceID: 0}
- Class: 28
Script: {instanceID: 0}
- Class: 33
Script: {instanceID: 0}
- Class: 43
Script: {instanceID: 0}
- Class: 48
Script: {instanceID: 0}
- Class: 89
Script: {instanceID: 0}
- Class: 96
Script: {instanceID: 0}
- Class: 114
Script: {fileID: 11500000, guid: eb907071d10d7324995ff3aefbc2f1df, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: ea0771a0c87f746769a9ffd7286a0665, type: 3}
- Class: 115
Script: {instanceID: 0}
- Class: 198
Script: {instanceID: 0}
- Class: 199
Script: {instanceID: 0}
SerializeReferenceClassIdentifiers:
- AssemblyName: Assembly-CSharp
ClassName: Ichni.RhythmGame.FlexibleBool
- AssemblyName: Assembly-CSharp
ClassName: Ichni.RhythmGame.FlexibleFloat
- AssemblyName: Sirenix.Serialization
ClassName: Sirenix.Serialization.SerializationData
Assets:
- Assets/ThemeBundles/DepartureToMultiverse/Materials/Skybox/Blueprint03_06.mat
- Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_NoteVisualTap.prefab
- Assets/ThemeBundles/DepartureToMultiverse/Materials/Skybox/Blueprint02_06.mat
- Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_NoteVisualFlick.prefab
- Assets/ThemeBundles/DepartureToMultiverse/Materials/Track/EnergyTrail0.mat
- Assets/ThemeBundles/DepartureToMultiverse/Materials/Skybox/Blueprint01_06.mat
- Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_Trail.prefab
- Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_NoteVisualStay.prefab
Dependencies: []

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 1ac6105af2d1cc34b9d1a6298507d02f
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 98f59871cfa0d694fadd60ea53efba87
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,14 @@
{
"ThemeBundleAbstract" : {
"__type" : "Ichni.ThemeBundleAbstract,Assembly-CSharp",
"value" : {
"fileName" : "basic",
"displayName" : "basic",
"description" : "Default Description",
"tags" : [
],
"iconPath" : "Icons\/Default.png"
}
}
}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 8b47fc7bdb99e4aeb8cf9b577319e77d
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,14 @@
{
"ThemeBundleAbstract" : {
"__type" : "Ichni.ThemeBundleAbstract,Assembly-CSharp",
"value" : {
"fileName" : "departure_to_multiverse",
"displayName" : "departure_to_multiverse",
"description" : "Default Description",
"tags" : [
],
"iconPath" : "Icons\/Default.png"
}
}
}

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: b849d827f807845b7b25d149738efaa0
DefaultImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a2ffb7e2b665348d8af211996c337be6
guid: d836561fac9e79f47a4f0d42e801bb71
folderAsset: yes
DefaultImporter:
externalObjects: {}

Binary file not shown.

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 50379fdcfefa54bd2bc45c900e3db318
guid: 18ce61eab16f68546aa834b01586bdf0
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: ab53f1438957c48ca8d3166755f9baba
guid: 78beeec7f651b3b45b1530740c9b96dd
folderAsset: yes
DefaultImporter:
externalObjects: {}

View File

@@ -1,10 +1,10 @@
ManifestFileVersion: 0
CRC: 2300548296
CRC: 325561354
AssetBundleManifest:
AssetBundleInfos:
Info_0:
Name: departure_to_multiverse
Dependencies: {}
Info_1:
Name: basic
Dependencies: {}
Info_1:
Name: departure_to_multiverse
Dependencies: {}

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 175fd9b664900436ab65aef5b9673b61
guid: d58e7a7433f91a24db26a8712f3592da
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: a49f2ebd8c1ef4dae82289e5f8ac1387
guid: 9f6535d6fb941094c982a0ec14e4b3cd
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -1,15 +1,15 @@
ManifestFileVersion: 0
CRC: 2992211523
CRC: 3025065508
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: 73ef2d7af62445869692313a69a03580
Hash: 40b908b0debf98ce57405f4ee342cce5
TypeTreeHash:
serializedVersion: 2
Hash: b0381af468dfa38d2d34223ebeb2d739
IncrementalBuildHash:
serializedVersion: 2
Hash: 73ef2d7af62445869692313a69a03580
Hash: 40b908b0debf98ce57405f4ee342cce5
HashAppended: 0
ClassTypes:
- Class: 1

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 7cd1c31164500418498415c1203ad157
guid: dde51e61d30cfbc4f9173b86a0867f94
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: e1779cd0b4513419889855538d5626fb
guid: f12303aedea2ba84f91cb77cdeee4824
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -1,15 +1,15 @@
ManifestFileVersion: 0
CRC: 3261250517
CRC: 2114727793
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: a803dabc470dfe50fe03b3b5c6c99666
Hash: f622966d9d3bb4c4fe15f1377b604033
TypeTreeHash:
serializedVersion: 2
Hash: 404a8c1c6e0f12c1e3c4bdd4b6e7abe8
Hash: 0e4abbae5628b06ad350c372eef19b9f
IncrementalBuildHash:
serializedVersion: 2
Hash: a803dabc470dfe50fe03b3b5c6c99666
Hash: f622966d9d3bb4c4fe15f1377b604033
HashAppended: 0
ClassTypes:
- Class: 1
@@ -32,10 +32,10 @@ ClassTypes:
Script: {instanceID: 0}
- Class: 96
Script: {instanceID: 0}
- Class: 114
Script: {fileID: 11500000, guid: eb907071d10d7324995ff3aefbc2f1df, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: ea0771a0c87f746769a9ffd7286a0665, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: eb907071d10d7324995ff3aefbc2f1df, type: 3}
- Class: 115
Script: {instanceID: 0}
- Class: 198

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 1ac6105af2d1cc34b9d1a6298507d02f
guid: b388e3ab3a2252f429acfdc008621406
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 98f59871cfa0d694fadd60ea53efba87
guid: 9c6906848c3ff094bb7de22ec40de351
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: 8b47fc7bdb99e4aeb8cf9b577319e77d
guid: b7e62c41919f1a343949bb3552f73ce9
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -1,5 +1,5 @@
fileFormatVersion: 2
guid: b849d827f807845b7b25d149738efaa0
guid: 66d3ffd4a820da7459d09040e6a0739e
DefaultImporter:
externalObjects: {}
userData:

File diff suppressed because one or more lines are too long