This commit is contained in:
2025-07-21 12:29:03 +08:00
52 changed files with 145884 additions and 122604 deletions

View File

@@ -0,0 +1,172 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!114 &-1962591172073477845
MonoBehaviour:
m_ObjectHideFlags: 11
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 7
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: M_hold
m_Shader: {fileID: 4800000, guid: ae29d8ac364c31c45951cc7ee49fb4e7, type: 3}
m_Parent: {fileID: 0}
m_ModifiedSerializedProperties: 0
m_ValidKeywords: []
m_InvalidKeywords: []
m_LightmapFlags: 4
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 0
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_LockedProperties:
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _dissvolemap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _texcoord:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _vertexmap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- _AlphaClip: 0
- _AlphaCutoff: 0.5
- _AlphaToMask: 0
- _Blend: 0
- _BlendModePreserveSpecular: 1
- _BumpScale: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _Cull: 2
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DstBlend: 0
- _DstBlendAlpha: 0
- _EdgeValue: 0.378
- _EnvironmentReflections: 1
- _Float0: 0.84
- _Float1: 1.41
- _Float2: 12.91
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _IOR_ins: 1
- _Metallic: 0
- _OcclusionStrength: 1
- _Opacity: 0
- _Parallax: 0.005
- _QueueControl: 0
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _SrcBlendAlpha: 1
- _Surface: 0
- _Width: 1.05
- _WorkflowMode: 1
- _ZWrite: 1
- _alpha: 1
- _alpha1: 2.42
- _edge: 0.4
- _line_angle: 3.1415
- _line_density: 10
- _line_width: 0.06
- _roll_speed: 0.2
- _speed: 0
- _vertexoffset: 0
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _Color0: {r: 0.1544589, g: 0.2214439, b: 0.8396226, a: 1}
- _Color1: {r: 1.4845159, g: 3.7472029, b: 5.5213575, a: 1}
- _ColorA: {r: 0.08490568, g: 0.005206483, b: 0.005206483, a: 0}
- _ColorB: {r: 2.270603, g: 0.9966403, b: 0.4177054, a: 0}
- _EmissionColor: {r: 0, g: 0, b: 0, a: 1}
- _IN: {r: 0.007843138, g: 0.019607844, b: 0.043137256, a: 1}
- _ImageColor: {r: 1, g: 1, b: 1, a: 0}
- _LINE: {r: 0.54245293, g: 0.6397447, b: 1.0000002, a: 1}
- _OUT: {r: 0.40277463, g: 1.0166805, b: 1.498039, a: 1}
- _SpecColor: {r: 0.19999996, g: 0.19999996, b: 0.19999996, a: 1}
- _Vector0: {r: -0.05, g: 1, b: 0, a: 0}
- _colorremap: {r: 0.5, g: 1, b: 0, a: 1}
m_BuildTextureStacks: []

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: af5abaed674f09748ac72087ce57dd24
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 2100000
userData:
assetBundleName:
assetBundleVariant:

File diff suppressed because it is too large Load Diff

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: ae29d8ac364c31c45951cc7ee49fb4e7
ShaderImporter:
externalObjects: {}
defaultTextures:
- _mainTex: {fileID: 2800000, guid: 325d33c6d266f0e448f60efb34dde7b1, type: 3}
- _dissolve: {fileID: 2800000, guid: 3e826cfc16029dc45981831227fd6fde, type: 3}
nonModifiableTextures: []
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -25,9 +25,7 @@ namespace Ichni.RhythmGame
{
Hold hold = Instantiate(EditorManager.instance.basePrefabs.holdNote, parentElement.transform)
.GetComponent<Hold>();
hold.Initialize(elementName, id, tags, EditorManager.instance.useNotePrefab ? false : isFirstGenerated, parentElement);
hold.exactJudgeTime = exactJudgeTime;
hold.holdEndTime = holdEndTime;
@@ -73,7 +71,7 @@ namespace Ichni.RhythmGame
base.UpdateNoteInMovableTrack();
}
if (noteVisual is NoteVisualBaseHold noteVisualHold)
if (noteVisual is INoteVisualHold noteVisualHold)
{
noteVisualHold.UpdateHoldInMovableTrack();
}
@@ -82,7 +80,7 @@ namespace Ichni.RhythmGame
public override void UpdateNoteInStaticTrack()
{
base.UpdateNoteInStaticTrack();
if (noteVisual is NoteVisualBaseHold noteVisualHold)
if (noteVisual is INoteVisualHold noteVisualHold)
{
noteVisualHold.UpdateHoldInStaticTrack();
}
@@ -157,7 +155,6 @@ namespace Ichni.RhythmGame
if (isFirstJudged && songTime < exactJudgeTime)
{
isFirstJudged = false;
isHolding = false;
isFinalJudged = false;

View File

@@ -67,9 +67,7 @@ namespace Ichni.RhythmGame
public override void Refresh()
{
base.Refresh();
if (noteVisual != null)
{
noteVisual.Refresh();

View File

@@ -3,6 +3,7 @@ using System.Collections;
using System.Collections.Generic;
using Ichni.Editor;
using UnityEngine;
using UnityEngine.Serialization;
namespace Ichni.RhythmGame
{
@@ -16,7 +17,7 @@ namespace Ichni.RhythmGame
public GameObject judgeEffect;
public List<GameObject> notePartList;
public List<GameObject> effectPartList;
public List<GameObject> effectPrefabList;
public EffectSubmodule effectSubmodule { get; set; }
public SelectSubmodule selectSubmodule { get; set; }

View File

@@ -19,4 +19,11 @@ namespace Ichni.RhythmGame
}
}
public interface INoteVisualHold
{
public Hold hold { get; set; }
public void UpdateHoldInMovableTrack();
public void UpdateHoldInStaticTrack();
}
}

View File

@@ -257,9 +257,9 @@
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"x" : 5,
"y" : 0,
"z" : 50
"z" : 25
},
"originalEulerAngles" : {
"x" : 0,
@@ -479,7 +479,7 @@
"z" : 0
},
"originalEulerAngles" : {
"x" : 0,
"x" : -30,
"y" : 0,
"z" : 0
},
@@ -501,7 +501,7 @@
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackHeadPoint_BM,Assembly-CSharp",
"MotionAngles" : false,
"motionApplyRotation" : false,
"elementName" : "New Track Head Point",
"tags" : [
@@ -623,7 +623,7 @@
},{
"__type" : "Ichni.RhythmGame.Beatmap.CrossTrackPoint_BM,Assembly-CSharp",
"trackSwitch" : {
"value" : 1,
"value" : 0,
"animations" : [
{
"value" : 0,
@@ -635,8 +635,8 @@
]
},
"trackPercent" : {
"value" : 1,
"currentAnimationIndex" : 1,
"value" : 0,
"currentAnimationIndex" : 0,
"animations" : [
{
"startValue" : 0,
@@ -653,8 +653,8 @@
}
],
"isSwitchingReturnType" : false,
"lastReturnType" : 3,
"returnType" : 3
"lastReturnType" : 1,
"returnType" : 1
},
"MotionAngles" : false,
"elementName" : "New Cross Track Point",
@@ -1121,7 +1121,7 @@
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackHeadPoint_BM,Assembly-CSharp",
"MotionAngles" : false,
"motionApplyRotation" : false,
"elementName" : "New Track Head Point",
"tags" : [
@@ -2138,7 +2138,7 @@
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackHeadPoint_BM,Assembly-CSharp",
"MotionAngles" : false,
"motionApplyRotation" : false,
"elementName" : "New Track Head Point",
"tags" : [
@@ -2977,7 +2977,7 @@
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TrackHeadPoint_BM,Assembly-CSharp",
"MotionAngles" : false,
"motionApplyRotation" : false,
"elementName" : "New Track Head Point",
"tags" : [
@@ -12648,7 +12648,7 @@
],
"elementGuid" : {
"value" : "33cc2f7c-8376-4fba-8ea4-44bdd41679d9"
"value" : "01d059da-18f5-42f8-9861-592017879b50"
},
"attachedElementGuid" : {
"value" : "bf6ef3b7-5d0f-49a0-b565-be93321a36f2"
@@ -12671,54 +12671,20 @@
"z" : 1
},
"attachedElementGuid" : {
"value" : "33cc2f7c-8376-4fba-8ea4-44bdd41679d9"
"value" : "01d059da-18f5-42f8-9861-592017879b50"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.EffectSubmodule_BM,Assembly-CSharp",
"effectCollection" : {"Prior":[
],"Default":[
{
"__type" : "Ichni.RhythmGame.Beatmap.VignetteEffect_BM,Assembly-CSharp",
"duration" : 6,
"peak" : 1,
"smoothness" : 5,
"color" : {
"r" : 0,
"g" : 0,
"b" : 0,
"a" : 1
},
"intensityCurve" : {
"keys" : [
{
"time" : 0,
"value" : 0,
"inTangent" : 0.1831066,
"outTangent" : 0.2083444
},{
"time" : 0.095,
"value" : 1,
"inTangent" : 1.14566934,
"outTangent" : 5.127961
},{
"time" : 0.8775,
"value" : 0,
"inTangent" : 0.148036778,
"outTangent" : -2.05021882
}
],
"preWrapMode" : 8,
"postWrapMode" : 8
},
"effectTime" : 0
}
],"Late":[
]
},
"attachedElementGuid" : {
"value" : "33cc2f7c-8376-4fba-8ea4-44bdd41679d9"
"value" : "01d059da-18f5-42f8-9861-592017879b50"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.BackgroundSetter_BM,Assembly-CSharp",
@@ -12833,6 +12799,14 @@
"emissionIntensity" : 0,
"zWrite" : false,
"sideCount" : 4,
"uvScale" : {
"x" : 1,
"y" : 1
},
"uvOffset" : {
"x" : 0,
"y" : 0
},
"attachedElementGuid" : {
"value" : "c07837be-c12a-471a-8c38-2c558edb99e0"
}
@@ -13142,6 +13116,14 @@
"emissionIntensity" : 0,
"zWrite" : false,
"sideCount" : 4,
"uvScale" : {
"x" : 1,
"y" : 1
},
"uvOffset" : {
"x" : 0,
"y" : 0
},
"attachedElementGuid" : {
"value" : "802a77b8-2947-4d25-86fd-42acf9a1f69d"
}
@@ -13451,6 +13433,14 @@
"emissionIntensity" : 0,
"zWrite" : false,
"sideCount" : 4,
"uvScale" : {
"x" : 1,
"y" : 1
},
"uvOffset" : {
"x" : 0,
"y" : 0
},
"attachedElementGuid" : {
"value" : "a5a82012-ccac-4359-a461-ccd481a98abe"
}
@@ -13760,6 +13750,14 @@
"emissionIntensity" : 0,
"zWrite" : false,
"sideCount" : 4,
"uvScale" : {
"x" : 1,
"y" : 1
},
"uvOffset" : {
"x" : 0,
"y" : 0
},
"attachedElementGuid" : {
"value" : "d371a173-9264-4259-a45e-f48d6b5473c0"
}
@@ -14069,6 +14067,14 @@
"emissionIntensity" : 0,
"zWrite" : false,
"sideCount" : 4,
"uvScale" : {
"x" : 1,
"y" : 1
},
"uvOffset" : {
"x" : 0,
"y" : 0
},
"attachedElementGuid" : {
"value" : "89288765-7b32-4828-a2de-6b9ed7f47094"
}
@@ -14378,6 +14384,14 @@
"emissionIntensity" : 0,
"zWrite" : false,
"sideCount" : 4,
"uvScale" : {
"x" : 1,
"y" : 1
},
"uvOffset" : {
"x" : 0,
"y" : 0
},
"attachedElementGuid" : {
"value" : "ee6998e1-cf99-46d1-a991-1908e31f6163"
}
@@ -14687,6 +14701,14 @@
"emissionIntensity" : 0,
"zWrite" : false,
"sideCount" : 4,
"uvScale" : {
"x" : 1,
"y" : 1
},
"uvOffset" : {
"x" : 0,
"y" : 0
},
"attachedElementGuid" : {
"value" : "00d9c8cc-3cae-47cc-ab9a-f2d89cde5f2b"
}
@@ -14963,6 +14985,227 @@
"attachedElementGuid" : {
"value" : "717b20ad-e006-4913-b0b0-471ceb633826"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.PathNode_BM,Assembly-CSharp",
"isShowingSphere" : true,
"elementName" : "New Path Node",
"tags" : [
],
"elementGuid" : {
"value" : "2c7ea617-6b33-40b0-a013-aa8cee6cabc3"
},
"attachedElementGuid" : {
"value" : "85ba31a7-2345-4cef-a955-8c8890a02dff"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TransformSubmodule_BM,Assembly-CSharp",
"originalPosition" : {
"x" : 0,
"y" : 0,
"z" : 50
},
"originalEulerAngles" : {
"x" : 0,
"y" : 0,
"z" : 0
},
"originalScale" : {
"x" : 1,
"y" : 1,
"z" : 1
},
"attachedElementGuid" : {
"value" : "2c7ea617-6b33-40b0-a013-aa8cee6cabc3"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "2c7ea617-6b33-40b0-a013-aa8cee6cabc3"
}
},{
"__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" : "2c7ea617-6b33-40b0-a013-aa8cee6cabc3"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.Hold_BM,Assembly-CSharp",
"holdEndTime" : 3,
"exactJudgeTime" : 1.5,
"elementName" : "New Hold",
"tags" : [
],
"elementGuid" : {
"value" : "71ee8bac-559a-4217-92e5-3d92606dab26"
},
"attachedElementGuid" : {
"value" : "85ba31a7-2345-4cef-a955-8c8890a02dff"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "71ee8bac-559a-4217-92e5-3d92606dab26"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.NoteJudgeSubmodule_BM,Assembly-CSharp",
"judgeUnitList" : [
{
"__type" : "Ichni.RhythmGame.Beatmap.TouchAreaJudgeUnit_BM,Assembly-CSharp",
"areaRadius" : 500
}
],
"attachedElementGuid" : {
"value" : "71ee8bac-559a-4217-92e5-3d92606dab26"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.NoteAudioSubmodule_BM,Assembly-CSharp",
"generalJudgeAudioList" : [
"DefaultTap"
],
"perfectAudioList" : [
],
"goodAudioList" : [
],
"badAudioList" : [
],
"missAudioList" : [
],
"holdStartAudioList" : [
],
"attachedElementGuid" : {
"value" : "71ee8bac-559a-4217-92e5-3d92606dab26"
}
},{
"__type" : "Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap.DTMNoteVisualHold_BM,Assembly-CSharp",
"themeBundleName" : "departure_to_multiverse",
"objectName" : "DTM_NoteVisualHold",
"elementName" : "New Note Visual",
"tags" : [
],
"elementGuid" : {
"value" : "16f21361-27bd-4ff7-a33f-dca3a5a5bc80"
},
"attachedElementGuid" : {
"value" : "71ee8bac-559a-4217-92e5-3d92606dab26"
}
},{
"__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" : "16f21361-27bd-4ff7-a33f-dca3a5a5bc80"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.TimeDurationSubmodule_BM,Assembly-CSharp",
"isOverridingDuration" : false,
"startTime" : -32767,
"endTime" : 32767,
"attachedElementGuid" : {
"value" : "16f21361-27bd-4ff7-a33f-dca3a5a5bc80"
}
},{
"__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" : "16f21361-27bd-4ff7-a33f-dca3a5a5bc80"
}
},{
"__type" : "Ichni.RhythmGame.Beatmap.EffectSubmodule_BM,Assembly-CSharp",
"effectCollection" : {"Generate":[
{
"__type" : "Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap.DTMNoteGenerateExtend_BM,Assembly-CSharp",
"generateTime" : 1,
"effectTime" : 1
}
],"GeneralJudge":[
],"StartHold":[
],"Holding":[
{
"__type" : "Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap.DTMNoteHoldingBreath_BM,Assembly-CSharp",
"effectTime" : 0
}
],"Perfect":[
{
"__type" : "Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap.DTMNotePerfectBurst_BM,Assembly-CSharp",
"effectTime" : 0
}
],"Good":[
{
"__type" : "Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap.DTMNoteGoodBurst_BM,Assembly-CSharp",
"effectTime" : 0
}
],"Bad":[
{
"__type" : "Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap.DTMNoteBadBurst_BM,Assembly-CSharp",
"effectTime" : 0
}
],"Miss":[
{
"__type" : "Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap.DTMNoteMissTransparent_BM,Assembly-CSharp",
"effectTime" : 0.2
}
],"AfterJudge":[
]
},
"attachedElementGuid" : {
"value" : "16f21361-27bd-4ff7-a33f-dca3a5a5bc80"
}
}
],
"attachedElementGuid" : {

View File

@@ -5,6 +5,7 @@
"songName" : "alunite cas.wav",
"bpm" : 200,
"delay" : 0,
"offset" : 0,
"attachedElementGuid" : {
"value" : "00000000-0000-0000-0000-000000000000"
}

View File

@@ -1,5 +1,5 @@
ManifestFileVersion: 0
CRC: 257446605
CRC: 3409446513
AssetBundleManifest:
AssetBundleInfos:
Info_0:

View File

@@ -1,15 +1,15 @@
ManifestFileVersion: 0
CRC: 4108135736
CRC: 2653829664
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: ed01d6ac2a91cb5624170b70a1a0fe12
Hash: e57bd42d21e469f4dacf0aa66125975e
TypeTreeHash:
serializedVersion: 2
Hash: 696680dabdc2eea8ec8568746f08c0dc
Hash: e8ed2067ca66f784a9ef17bc308b5932
IncrementalBuildHash:
serializedVersion: 2
Hash: ed01d6ac2a91cb5624170b70a1a0fe12
Hash: e57bd42d21e469f4dacf0aa66125975e
HashAppended: 0
ClassTypes:
- Class: 1
@@ -99,12 +99,14 @@ Assets:
- Assets/ThemeBundles/Basic/Prefabs/Sphere.prefab
- Assets/ThemeBundles/Basic/Prefabs/JudgeTrigger.prefab
- Assets/ThemeBundles/Basic/Prefabs/Quad.prefab
- Assets/ThemeBundles/DepartureToMultiverse/Textures/Square - Copy.png
- Assets/ThemeBundles/Basic/Textures/TrackSegment.png
- Assets/ThemeBundles/Basic/Materials/Basic_Track_Segments.mat
- Assets/ThemeBundles/Basic/Materials/Basic_Track_Default.mat
- 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/Materials/Skybox/Basic_Skybox_Black.mat
- Assets/ThemeBundles/Basic/Prefabs/PointLight.prefab
- Assets/ThemeBundles/Basic/Textures/Orb_0.tga
Dependencies: []

View File

@@ -1,15 +1,15 @@
ManifestFileVersion: 0
CRC: 1463767891
CRC: 2271015578
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: ff8a158cf2d89314a97dd33ab112a017
Hash: a699dc62093f8070b605256ebcbc610f
TypeTreeHash:
serializedVersion: 2
Hash: 6f6fddb4189435859f7911e8c9a54df2
Hash: 795e40e0c14831e91691692b43709fca
IncrementalBuildHash:
serializedVersion: 2
Hash: ff8a158cf2d89314a97dd33ab112a017
Hash: a699dc62093f8070b605256ebcbc610f
HashAppended: 0
ClassTypes:
- Class: 1
@@ -36,8 +36,14 @@ ClassTypes:
Script: {fileID: 11500000, guid: ea0771a0c87f746769a9ffd7286a0665, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: b37c44f04f3075045aef6be2c0506551, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 77ab80dc0820f9d4a8cd9fddbbc89057, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 0def5156137c6d14082064fa7b5d5247, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: eb907071d10d7324995ff3aefbc2f1df, type: 3}
- Class: 114
Script: {fileID: 11500000, guid: 0b426e434ca7bbe4b9dce2a80472de6f, type: 3}
- Class: 115
Script: {instanceID: 0}
- Class: 135
@@ -46,7 +52,23 @@ ClassTypes:
Script: {instanceID: 0}
- Class: 199
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: Assembly-CSharp
ClassName: Ichni.RhythmGame.FlexibleBool
- AssemblyName: Assembly-CSharp
@@ -66,6 +88,7 @@ Assets:
- Assets/ThemeBundles/DepartureToMultiverse/Materials/ParticleTracker/DTM_Particle_SquareFrame.mat
- Assets/ThemeBundles/DepartureToMultiverse/Materials/Skybox/DTM_Skybox_BlueprintDark.mat
- Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_Trail.prefab
- Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_NoteVisualHold.prefab
- Assets/ThemeBundles/DepartureToMultiverse/Prefabs/DTM_NoteVisualStay.prefab
- Assets/ThemeBundles/DepartureToMultiverse/Materials/Skybox/DTM_Skybox_BlueprintBlue.mat
Dependencies: []

View File

@@ -1,15 +1,15 @@
ManifestFileVersion: 0
CRC: 1432827204
CRC: 265365096
Hashes:
AssetFileHash:
serializedVersion: 2
Hash: 7db694ea29a97076e6cffae4e7ae61f8
Hash: dcd570fc931461005f81963b02073d83
TypeTreeHash:
serializedVersion: 2
Hash: 2863942063cfae308cdf603227fbd0a9
Hash: 76414f0bd3072e0f403e9f6ae6853349
IncrementalBuildHash:
serializedVersion: 2
Hash: 7db694ea29a97076e6cffae4e7ae61f8
Hash: dcd570fc931461005f81963b02073d83
HashAppended: 0
ClassTypes:
- Class: 1

View File

@@ -1,5 +1,6 @@
fileFormatVersion: 2
guid: 6dbdd314784e80440b48088e6357c1ef
guid: b0f03c1d14dac7341a53b3860d63772f
folderAsset: yes
DefaultImporter:
externalObjects: {}
userData:

View File

@@ -0,0 +1,168 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!21 &2100000
Material:
serializedVersion: 8
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_Name: Basic_Skybox_Black
m_Shader: {fileID: 103, guid: 0000000000000000f000000000000000, type: 0}
m_ValidKeywords: []
m_InvalidKeywords:
- _EMISSION
m_LightmapFlags: 2
m_EnableInstancingVariants: 0
m_DoubleSidedGI: 1
m_CustomRenderQueue: -1
stringTagMap: {}
disabledShaderPasses: []
m_SavedProperties:
serializedVersion: 3
m_TexEnvs:
- _AlphaTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BaseMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _BumpMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailAlbedoMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailMask:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _DetailNormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _EmissionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MainTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MaskTex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _MetallicGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _NormalMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _OcclusionMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _ParallaxMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _SpecGlossMap:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- _Tex:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_Lightmaps:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_LightmapsInd:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
- unity_ShadowMasks:
m_Texture: {fileID: 0}
m_Scale: {x: 1, y: 1}
m_Offset: {x: 0, y: 0}
m_Ints: []
m_Floats:
- PixelSnap: 0
- _AlphaClip: 0
- _Blend: 0
- _BlendOp: 0
- _BumpScale: 1
- _CameraFadingEnabled: 0
- _CameraFarFadeDistance: 2
- _CameraNearFadeDistance: 1
- _ClearCoatMask: 0
- _ClearCoatSmoothness: 0
- _ColorMode: 0
- _Cull: 0
- _Cutoff: 0.5
- _DetailAlbedoMapScale: 1
- _DetailNormalMapScale: 1
- _DistortionBlend: 0.5
- _DistortionEnabled: 0
- _DistortionStrength: 1
- _DistortionStrengthScaled: 0.1
- _DstBlend: 0
- _EnableExternalAlpha: 0
- _EnvironmentReflections: 1
- _Exposure: 1
- _FlipbookBlending: 0
- _FlipbookMode: 0
- _GlossMapScale: 0
- _Glossiness: 0
- _GlossyReflections: 0
- _Metallic: 0
- _Mode: 0
- _OcclusionStrength: 1
- _Parallax: 0.005
- _QueueOffset: 0
- _ReceiveShadows: 1
- _Rotation: 0
- _Smoothness: 0.5
- _SmoothnessTextureChannel: 0
- _SoftParticlesEnabled: 0
- _SoftParticlesFarFadeDistance: 1
- _SoftParticlesNearFadeDistance: 0
- _SpecularHighlights: 1
- _SrcBlend: 1
- _Surface: 0
- _UVSec: 0
- _WorkflowMode: 1
- _ZWrite: 1
m_Colors:
- _BaseColor: {r: 1, g: 1, b: 1, a: 1}
- _BaseColorAddSubDiff: {r: 0, g: 0, b: 0, a: 0}
- _CameraFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _Color: {r: 1, g: 1, b: 1, a: 1}
- _EmissionColor: {r: 1, g: 1, b: 1, a: 1}
- _Flip: {r: 1, g: 1, b: 1, a: 1}
- _RendererColor: {r: 1, g: 1, b: 1, a: 1}
- _SoftParticleFadeParams: {r: 0, g: 0, b: 0, a: 0}
- _SpecColor: {r: 0.2, g: 0.2, b: 0.2, a: 1}
- _Tint: {r: 0, g: 0, b: 0, a: 0.5}
m_BuildTextureStacks: []
--- !u!114 &7235489447914666730
MonoBehaviour:
m_ObjectHideFlags: 11
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: d0353a89b1f911e48b9e16bdc9f2e058, type: 3}
m_Name:
m_EditorClassIdentifier:
version: 5

View File

@@ -0,0 +1,8 @@
fileFormatVersion: 2
guid: 3adeb76459d6d4d6c8b9e0f9f3dc70a4
NativeFormatImporter:
externalObjects: {}
mainObjectFileID: 0
userData:
assetBundleName: basic
assetBundleVariant:

View File

@@ -17,7 +17,7 @@ namespace Ichni.RhythmGame.ThemeBundles.Basic
{
this.note = noteVisual.note;
this.noteVisual = noteVisual;
this.effectRing = noteVisual.effectPartList[0];
this.effectRing = noteVisual.effectPrefabList[0];
this.effectTime = 0.1f;
}

View File

@@ -17,7 +17,7 @@ namespace Ichni.RhythmGame.ThemeBundles.Basic
{
this.note = noteVisual.note;
this.noteVisual = noteVisual;
this.effectRing = noteVisual.effectPartList[0];
this.effectRing = noteVisual.effectPrefabList[0];
this.effectTime = 0.1f;
}

View File

@@ -0,0 +1,645 @@
%YAML 1.1
%TAG !u! tag:unity3d.com,2011:
--- !u!1 &2247334318120717134
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8941245705576492046}
- component: {fileID: 3234857736539652113}
m_Layer: 9
m_Name: JudgeEffect
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8941245705576492046
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2247334318120717134}
serializedVersion: 2
m_LocalRotation: {x: 0, y: 0, z: 0, w: 1}
m_LocalPosition: {x: 0, y: 0, z: 0}
m_LocalScale: {x: 0, y: 0, z: 0}
m_ConstrainProportionsScale: 1
m_Children: []
m_Father: {fileID: 5440971188794703657}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!212 &3234857736539652113
SpriteRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2247334318120717134}
m_Enabled: 1
m_CastShadows: 0
m_ReceiveShadows: 0
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 0
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 10754, guid: 0000000000000000f000000000000000, type: 0}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 0
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_Sprite: {fileID: 21300000, guid: 0ab11be59df835d4099df401d7420c44, type: 3}
m_Color: {r: 1, g: 1, b: 1, a: 1}
m_FlipX: 0
m_FlipY: 0
m_DrawMode: 0
m_Size: {x: 1, y: 1}
m_AdaptiveModeThreshold: 0.5
m_SpriteTileMode: 1
m_WasSpriteAssigned: 1
m_MaskInteraction: 0
m_SpriteSortPoint: 0
--- !u!1 &2835341405362895704
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 7801980603414078133}
- component: {fileID: 4968410270678610796}
- component: {fileID: 2272208069831370301}
- component: {fileID: 3749440688852897166}
m_Layer: 9
m_Name: Tube
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &7801980603414078133
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2835341405362895704}
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: 4059193237441558666}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!33 &4968410270678610796
MeshFilter:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2835341405362895704}
m_Mesh: {fileID: 0}
--- !u!23 &2272208069831370301
MeshRenderer:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2835341405362895704}
m_Enabled: 1
m_CastShadows: 1
m_ReceiveShadows: 1
m_DynamicOccludee: 1
m_StaticShadowCaster: 0
m_MotionVectors: 1
m_LightProbeUsage: 1
m_ReflectionProbeUsage: 1
m_RayTracingMode: 2
m_RayTraceProcedural: 0
m_RenderingLayerMask: 1
m_RendererPriority: 0
m_Materials:
- {fileID: 2100000, guid: af5abaed674f09748ac72087ce57dd24, type: 2}
m_StaticBatchInfo:
firstSubMesh: 0
subMeshCount: 0
m_StaticBatchRoot: {fileID: 0}
m_ProbeAnchor: {fileID: 0}
m_LightProbeVolumeOverride: {fileID: 0}
m_ScaleInLightmap: 1
m_ReceiveGI: 1
m_PreserveUVs: 0
m_IgnoreNormalsForChartDetection: 0
m_ImportantGI: 0
m_StitchLightmapSeams: 1
m_SelectedEditorRenderState: 3
m_MinimumChartSize: 4
m_AutoUVMaxDistance: 0.5
m_AutoUVMaxAngle: 89
m_LightmapParameters: {fileID: 0}
m_SortingLayerID: 0
m_SortingLayer: 0
m_SortingOrder: 0
m_AdditionalVertexStreams: {fileID: 0}
--- !u!114 &3749440688852897166
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 2835341405362895704}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 77ab80dc0820f9d4a8cd9fddbbc89057, type: 3}
m_Name:
m_EditorClassIdentifier:
updateMethod: 2
_spline: {fileID: 0}
_autoUpdate: 1
_rotationModifier:
blend: 1
useClippedPercent: 0
keys: []
_offsetModifier:
blend: 1
useClippedPercent: 0
keys: []
_colorModifier:
blend: 1
useClippedPercent: 0
keys: []
_sizeModifier:
blend: 1
useClippedPercent: 0
keys: []
_clipFromSample:
position: {x: -6.683084, y: 0, z: -7.683098}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.6915577}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 0
_clipToSample:
position: {x: 9.592596, y: 0, z: 7.8994074}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.69155777}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 1
_loopSamples: 0
_clipFrom: 0
_clipTo: 1
animClipFrom: 0
animClipTo: 1
multithreaded: 0
buildOnAwake: 1
buildOnEnable: 0
_baked: 0
_markDynamic: 1
_size: 1
_color: {r: 1, g: 1, b: 1, a: 1}
_offset: {x: 0, y: 0, z: 0}
_normalMethod: 1
_calculateTangents: 1
_useSplineSize: 0
_useSplineColor: 0
_rotation: 0
_flipFaces: 0
_doubleSided: 0
_uvMode: 0
_uvScale: {x: 1, y: 1}
_uvOffset: {x: 0, y: 0}
_uvRotation: 0
_meshIndexFormat: 0
_bakedMesh: {fileID: 0}
colliderUpdateRate: 0.2
_sides: 12
_roundCapLatitude: 6
_capMode: 2
_revolve: 360
_capUVScale: 1
_uvTwist: 10
--- !u!1 &3131288717902165839
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 4059193237441558666}
m_Layer: 9
m_Name: Hold
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &4059193237441558666
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3131288717902165839}
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:
- {fileID: 8114717109722790342}
- {fileID: 7801980603414078133}
- {fileID: 3785488526070034336}
m_Father: {fileID: 5440971188794703657}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!1 &3937140081243091500
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 3785488526070034336}
- component: {fileID: 4319407568721311756}
m_Layer: 9
m_Name: Tail
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &3785488526070034336
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3937140081243091500}
serializedVersion: 2
m_LocalRotation: {x: -0, y: 0.39271, z: -0, w: 0.9196624}
m_LocalPosition: {x: 9.592596, y: 0, z: 7.8994074}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4059193237441558666}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &4319407568721311756
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 3937140081243091500}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0def5156137c6d14082064fa7b5d5247, type: 3}
m_Name:
m_EditorClassIdentifier:
updateMethod: 2
_spline: {fileID: 0}
_autoUpdate: 1
_rotationModifier:
blend: 1
useClippedPercent: 0
keys: []
_offsetModifier:
blend: 1
useClippedPercent: 0
keys: []
_colorModifier:
blend: 1
useClippedPercent: 0
keys: []
_sizeModifier:
blend: 1
useClippedPercent: 0
keys: []
_clipFromSample:
position: {x: -6.683084, y: 0, z: -7.683098}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.6915577}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 0
_clipToSample:
position: {x: 9.592596, y: 0, z: 7.8994074}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.69155777}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 1
_loopSamples: 0
_clipFrom: 0
_clipTo: 1
animClipFrom: 0
animClipTo: 1
multithreaded: 0
buildOnAwake: 1
buildOnEnable: 0
applyDirectionRotation: 1
useTriggers: 0
triggerGroup: 0
_direction: 1
_dontLerpDirection: 0
_physicsMode: 0
_motion:
_hasOffset: 0
_hasRotationOffset: 0
_offset: {x: 0, y: 0}
_rotationOffset: {x: 0, y: 0, z: 0}
_baseScale: {x: 1, y: 1, z: 1}
_2dMode: 0
velocityHandleMode: 0
applyPositionX: 1
applyPositionY: 1
applyPositionZ: 1
applyPosition2D: 1
retainLocalPosition: 0
direction: 1
applyRotationX: 1
applyRotationY: 1
applyRotationZ: 1
applyRotation2D: 1
retainLocalRotation: 0
applyScaleX: 0
applyScaleY: 0
applyScaleZ: 0
targetUser: {fileID: 4319407568721311756}
targetRigidbody: {fileID: 0}
targetRigidbody2D: {fileID: 0}
targetTransform: {fileID: 3785488526070034336}
_result:
position: {x: 9.592596, y: 0, z: 7.8994074}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.69155777}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 1
_targetObject: {fileID: 0}
_followTarget: {fileID: 0}
_followTargetDistance: 0
_followLoop: 0
_followTargetDirection: -1
_position: 1
_mode: 0
--- !u!1 &4564957481642038046
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 5440971188794703657}
- component: {fileID: 7499616667775238865}
m_Layer: 9
m_Name: DTM_NoteVisualHold
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &5440971188794703657
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4564957481642038046}
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:
- {fileID: 4059193237441558666}
- {fileID: 8941245705576492046}
m_Father: {fileID: 0}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &7499616667775238865
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4564957481642038046}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0b426e434ca7bbe4b9dce2a80472de6f, type: 3}
m_Name:
m_EditorClassIdentifier:
serializationData:
SerializedFormat: 2
SerializedBytes:
ReferencedUnityObjects: []
SerializedBytesString:
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:
elementName:
tags: []
parentElement: {fileID: 0}
connectedTab: {fileID: 0}
childElementList: []
themeBundleName:
objectName:
note: {fileID: 0}
isHighlighted: 0
noteMain: {fileID: 2835341405362895704}
judgeEffect: {fileID: 2247334318120717134}
notePartList:
- {fileID: 4591335795006963298}
- {fileID: 2835341405362895704}
- {fileID: 3937140081243091500}
effectPrefabList:
- {fileID: 1798892407782085822, guid: f9816b6dfe1265940a2b94499339686a, type: 3}
- {fileID: 8195266189035696496, guid: 4f8c4eed3f4a7f44fa3432b1adf7f0cb, type: 3}
- {fileID: 5570659531613823305, guid: 3374eb633bd06bd44a04d33a68cd59db, type: 3}
- {fileID: 1798892407782085822, guid: 77e52c87b41345a4fa7931acc2594ab3, type: 3}
normalMaterialList:
- {fileID: 2100000, guid: af5abaed674f09748ac72087ce57dd24, type: 2}
highlightMaterialList:
- {fileID: 2100000, guid: af5abaed674f09748ac72087ce57dd24, type: 2}
meshGenerator: {fileID: 3749440688852897166}
headPoint: {fileID: 4280273939034235032}
tailPoint: {fileID: 4319407568721311756}
--- !u!1 &4591335795006963298
GameObject:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
serializedVersion: 6
m_Component:
- component: {fileID: 8114717109722790342}
- component: {fileID: 4280273939034235032}
m_Layer: 9
m_Name: Head
m_TagString: Untagged
m_Icon: {fileID: 0}
m_NavMeshLayer: 0
m_StaticEditorFlags: 0
m_IsActive: 1
--- !u!4 &8114717109722790342
Transform:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4591335795006963298}
serializedVersion: 2
m_LocalRotation: {x: -0, y: 0.39270997, z: -0, w: 0.9196624}
m_LocalPosition: {x: -6.683084, y: 0, z: -7.683098}
m_LocalScale: {x: 1, y: 1, z: 1}
m_ConstrainProportionsScale: 0
m_Children: []
m_Father: {fileID: 4059193237441558666}
m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0}
--- !u!114 &4280273939034235032
MonoBehaviour:
m_ObjectHideFlags: 0
m_CorrespondingSourceObject: {fileID: 0}
m_PrefabInstance: {fileID: 0}
m_PrefabAsset: {fileID: 0}
m_GameObject: {fileID: 4591335795006963298}
m_Enabled: 1
m_EditorHideFlags: 0
m_Script: {fileID: 11500000, guid: 0def5156137c6d14082064fa7b5d5247, type: 3}
m_Name:
m_EditorClassIdentifier:
updateMethod: 2
_spline: {fileID: 0}
_autoUpdate: 1
_rotationModifier:
blend: 1
useClippedPercent: 0
keys: []
_offsetModifier:
blend: 1
useClippedPercent: 0
keys: []
_colorModifier:
blend: 1
useClippedPercent: 0
keys: []
_sizeModifier:
blend: 1
useClippedPercent: 0
keys: []
_clipFromSample:
position: {x: -6.683084, y: 0, z: -7.683098}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.6915577}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 0
_clipToSample:
position: {x: 9.592596, y: 0, z: 7.8994074}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.69155777}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 1
_loopSamples: 0
_clipFrom: 0
_clipTo: 1
animClipFrom: 0
animClipTo: 1
multithreaded: 0
buildOnAwake: 1
buildOnEnable: 0
applyDirectionRotation: 1
useTriggers: 0
triggerGroup: 0
_direction: 1
_dontLerpDirection: 0
_physicsMode: 0
_motion:
_hasOffset: 0
_hasRotationOffset: 0
_offset: {x: 0, y: 0}
_rotationOffset: {x: 0, y: 0, z: 0}
_baseScale: {x: 1, y: 1, z: 1}
_2dMode: 0
velocityHandleMode: 0
applyPositionX: 1
applyPositionY: 1
applyPositionZ: 1
applyPosition2D: 1
retainLocalPosition: 0
direction: 1
applyRotationX: 1
applyRotationY: 1
applyRotationZ: 1
applyRotation2D: 1
retainLocalRotation: 0
applyScaleX: 0
applyScaleY: 0
applyScaleZ: 0
targetUser: {fileID: 4280273939034235032}
targetRigidbody: {fileID: 0}
targetRigidbody2D: {fileID: 0}
targetTransform: {fileID: 8114717109722790342}
_result:
position: {x: -6.683084, y: 0, z: -7.683098}
up: {x: 0, y: 1, z: 0}
forward: {x: 0.72232115, y: 0, z: 0.6915577}
color: {r: 1, g: 1, b: 1, a: 1}
size: 1
percent: 0
_targetObject: {fileID: 0}
_followTarget: {fileID: 0}
_followTargetDistance: 0
_followLoop: 0
_followTargetDirection: -1
_position: 0
_mode: 0

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: b61f478adcf056b489ee428181e708a6
PrefabImporter:
externalObjects: {}
userData:
assetBundleName: departure_to_multiverse
assetBundleVariant:

View File

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

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 77e52c87b41345a4fa7931acc2594ab3
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

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

View File

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

View File

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

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 3374eb633bd06bd44a04d33a68cd59db
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -0,0 +1,7 @@
fileFormatVersion: 2
guid: 4f8c4eed3f4a7f44fa3432b1adf7f0cb
PrefabImporter:
externalObjects: {}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap;
using Lean.Pool;
using UnityEngine;
namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
@@ -15,19 +16,20 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
{
this.note = noteVisual.note;
this.noteVisual = noteVisual;
this.effectParticle = noteVisual.effectPartList[2].GetComponent<ParticleSystem>();
this.effectParticle = noteVisual.effectPrefabList[2].GetComponent<ParticleSystem>();
this.effectTime = 0f;
}
public override void Recover()
{
effectParticle.Stop();
noteVisual.noteMain.SetActive(true);
// noteVisual.noteMain.SetActive(true);
}
public override void Adjust()
{
effectParticle = LeanPool.Spawn(noteVisual.effectPrefabList[0], noteVisual.judgeEffect.transform).GetComponent<ParticleSystem>();
effectParticle.Play();
noteVisual.noteMain.SetActive(false);
LeanPool.Despawn(effectParticle.gameObject, 1);
}
public override EffectBase_BM ConvertToBM()

View File

@@ -1,10 +1,5 @@
using System.Collections;
using System.Collections.Generic;
using DG.Tweening;
using Dreamteck.Splines;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Ichni.RhythmGame.ThemeBundles.Basic;
using UnityEngine;
namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
@@ -22,7 +17,14 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
public sealed override void Recover()
{
noteVisual.noteMain.SetActive(false);
noteVisual.noteMain.transform.localScale = Vector3.zero;
if (noteVisual is DTMNoteVisualHold noteVisualHold)
{
noteVisualHold.meshGenerator.size = 0;
}
else
{
noteVisual.noteMain.transform.localScale = Vector3.zero;
}
}
public override void PreExecute()
@@ -33,12 +35,26 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
public override void Execute()
{
float e = AnimationCurveEvaluator.Evaluate(AnimationCurveType.OutQuad, effectProgressPercent);
noteVisual.noteMain.transform.localScale = e * Vector3.one;
if (noteVisual is DTMNoteVisualHold noteVisualHold)
{
noteVisualHold.meshGenerator.size = e;
}
else
{
noteVisual.noteMain.transform.localScale = e * Vector3.one;
}
}
public override void Adjust()
{
noteVisual.noteMain.transform.localScale = Vector3.one;
if (noteVisual is DTMNoteVisualHold noteVisualHold)
{
noteVisualHold.meshGenerator.size = 1;
}
else
{
noteVisual.noteMain.transform.localScale = Vector3.one;
}
}
public override EffectBase_BM ConvertToBM()

View File

@@ -0,0 +1,101 @@
using System.Collections;
using System.Collections.Generic;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap;
using UnityEngine;
namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
{
public class DTMNoteGenerateExtend : NoteGenerateEffect
{
private Hold hold;
private DTMNoteVisualHold noteVisualHold;
public float targetStartPercent, targetEndPercent;
public float startPercent, endPercent;
public DTMNoteGenerateExtend(NoteVisualBase noteVisual, float generateTime, float effectTime)
{
this.note = noteVisual.note;
this.hold = note as Hold;
this.noteVisual = noteVisual;
this.noteVisualHold = noteVisual as DTMNoteVisualHold;
this.generateTime = generateTime;
this.effectTime = effectTime;
}
private void UpdateHold()
{
hold.trackPositioner.SetPercent(startPercent);
noteVisualHold.meshGenerator.SetClipRange(startPercent, endPercent);
noteVisualHold.headPoint.SetPercent(startPercent);
noteVisualHold.tailPoint.SetPercent(endPercent);
}
public override void Recover()
{
noteVisualHold.noteMain.SetActive(false);
}
public override EffectBase_BM ConvertToBM()
{
return new DTMNoteGenerateExtend_BM(effectTime, generateTime);
}
public override void PreExecute()
{
TrackTimeSubmoduleMovable trackTimeSubmoduleMovable = hold.track.trackTimeSubmodule as TrackTimeSubmoduleMovable;
targetStartPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.exactJudgeTime);
targetEndPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.holdEndTime);
startPercent = targetStartPercent;
endPercent = targetStartPercent;
noteVisual.noteMain.SetActive(true);
}
public override void Execute()
{
float e = AnimationCurveEvaluator.Evaluate(AnimationCurveType.OutQuad, effectProgressPercent);
startPercent = targetStartPercent;
endPercent = Mathf.Lerp(targetStartPercent, targetEndPercent, e);
UpdateHold();
}
public override void Adjust()
{
startPercent = targetStartPercent;
endPercent = targetEndPercent;
UpdateHold();
}
public override void SetUpInspector()
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("DTM Note Generate Expand");
var subcontainer = container.GenerateSubcontainer(3);
var generateTimeField = inspector.GenerateInputField(this, subcontainer, "Generate Time", nameof(generateTime));
var effectTimeField = inspector.GenerateInputField(this, subcontainer, "Effect Time", nameof(effectTime));
}
}
namespace Beatmap
{
public class DTMNoteGenerateExtend_BM : NoteGenerateEffect_BM
{
public DTMNoteGenerateExtend_BM()
{
}
public DTMNoteGenerateExtend_BM(float effectTime, float generateTime) :
base(effectTime, generateTime)
{
}
public override EffectBase ConvertToGameType(GameElement attachedGameElement)
{
return new DTMNoteGenerateExtend(attachedGameElement as NoteVisualBase, generateTime, effectTime);
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 88fcaa4df9cf7d84f9d1849eff92321d
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap;
using Lean.Pool;
using UnityEngine;
namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
@@ -15,19 +16,19 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
{
this.note = noteVisual.note;
this.noteVisual = noteVisual;
this.effectParticle = noteVisual.effectPartList[1].GetComponent<ParticleSystem>();
this.effectTime = 0f;
}
public override void Recover()
{
effectParticle.Stop();
noteVisual.noteMain.SetActive(true);
//noteVisual.noteMain.SetActive(true);
}
public override void Adjust()
{
effectParticle = LeanPool.Spawn(noteVisual.effectPrefabList[0], noteVisual.judgeEffect.transform).GetComponent<ParticleSystem>();
effectParticle.Play();
noteVisual.noteMain.SetActive(false);
LeanPool.Despawn(effectParticle.gameObject, 1);
}
public override EffectBase_BM ConvertToBM()

View File

@@ -0,0 +1,70 @@
using System.Collections;
using System.Collections.Generic;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Lean.Pool;
using UnityEngine;
namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
{
public class DTMNoteHoldingBreath : NoteHoldingEffect
{
private ParticleSystem breathParticle;
public DTMNoteHoldingBreath(DTMNoteVisualHold noteVisual)
{
this.note = noteVisual.note;
this.noteVisual = noteVisual;
this.effectTime = GetHoldingTime();
}
public override void Recover()
{
if(breathParticle != null) LeanPool.Despawn(breathParticle.gameObject);
}
public override void PreExecute()
{
breathParticle = LeanPool.Spawn(noteVisual.effectPrefabList[3], noteVisual.judgeEffect.transform).GetComponent<ParticleSystem>();
breathParticle.Play();
}
public override void Adjust()
{
breathParticle.Stop(true, ParticleSystemStopBehavior.StopEmittingAndClear);
}
public override EffectBase_BM ConvertToBM()
{
return new Beatmap.DTMNoteHoldingBreath_BM(effectTime);
}
public override void SetUpInspector()
{
IHaveInspection inspector = EditorManager.instance.uiManager.inspector;
var container = inspector.GenerateContainer("Basic Note Holding Expand");
var subcontainer = container.GenerateSubcontainer(3);
}
}
namespace Beatmap
{
public class DTMNoteHoldingBreath_BM : NoteHoldingEffect_BM
{
public DTMNoteHoldingBreath_BM()
{
}
public DTMNoteHoldingBreath_BM(float effectTime) : base(effectTime)
{
}
public override EffectBase ConvertToGameType(GameElement attachedGameElement)
{
return new DTMNoteHoldingBreath(attachedGameElement as DTMNoteVisualHold);
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 87240dd684aa2b448b2fef479075e74a
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant:

View File

@@ -3,6 +3,7 @@ using System.Collections.Generic;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap;
using Lean.Pool;
using UnityEngine;
namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
@@ -15,19 +16,19 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
{
this.note = noteVisual.note;
this.noteVisual = noteVisual;
this.effectParticle = noteVisual.effectPartList[0].GetComponent<ParticleSystem>();
this.effectTime = 0f;
}
public override void Recover()
{
effectParticle.Stop();
noteVisual.noteMain.SetActive(true);
//noteVisual.noteMain.SetActive(true);
}
public override void Adjust()
{
effectParticle = LeanPool.Spawn(noteVisual.effectPrefabList[0], noteVisual.judgeEffect.transform).GetComponent<ParticleSystem>();
effectParticle.Play();
noteVisual.noteMain.SetActive(false);
LeanPool.Despawn(effectParticle.gameObject, 1);
}
public override EffectBase_BM ConvertToBM()

View File

@@ -51,17 +51,19 @@ namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
public override void Recover()
{
effectPartList.ForEach(effectPart =>
foreach (GameObject part in notePartList)
{
effectPart.GetComponent<ParticleSystem>().Stop();
});
foreach (Renderer renderer in notePartList.Select(part => part.GetComponent<Renderer>()))
{
renderer.material.SetFloat("_MainAlpha", 1f);
Renderer rend = part.GetComponent<Renderer>();
if (rend != null)
{
rend.material.SetFloat("_MainAlpha", 1f);
}
}
noteMain.transform.localScale = Vector3.zero;
foreach (EffectBase effect in effectSubmodule.effectCollection["Generate"])
{
effect.Recover();
}
}
}

View File

@@ -0,0 +1,162 @@
using System;
using System.Collections.Generic;
using System.Linq;
using Dreamteck.Splines;
using Ichni.RhythmGame.Beatmap;
using Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse.Beatmap;
using UnityEngine;
namespace Ichni.RhythmGame.ThemeBundles.DepartureToMultiverse
{
public partial class DTMNoteVisualHold : DTMNoteVisual, INoteVisualHold
{
public Hold hold { get; set; }
public MeshGenerator meshGenerator;
public SplinePositioner headPoint, tailPoint;
public static DTMNoteVisualHold GenerateElement(string elementName, Guid id, List<string> tags,
bool isFirstGenerated, GameElement parentElement, string themeBundleName, string objectName)
{
DTMNoteVisualHold noteVisualHold = SubstantialObject.GenerateElement(elementName, id, tags,
isFirstGenerated, themeBundleName, objectName, parentElement).GetComponent<DTMNoteVisualHold>();
return noteVisualHold;
}
public override void FirstSetUpObject(bool isFirstGenerated)
{
NoteBase note = parentElement as NoteBase;
if(note == null) throw new System.Exception("NoteVisual只能生成在Note下。");
if(!note.isOnTrack) throw new System.Exception("这种HoldNoteVisual只能生成在Track上。");
this.note = note;
note.noteVisual = this;
this.hold = note as Hold;
this.headPoint = notePartList[0].GetComponent<SplinePositioner>();
this.meshGenerator = notePartList[1].GetComponent<MeshGenerator>();
this.tailPoint = notePartList[2].GetComponent<SplinePositioner>();
this.hold.trackPositioner.autoUpdate = false;
headPoint.spline = hold.track.trackPathSubmodule.path;
meshGenerator.spline = hold.track.trackPathSubmodule.path;
tailPoint.spline = hold.track.trackPathSubmodule.path;
TrackTimeSubmoduleMovable trackTimeSubmoduleMovable = hold.track.trackTimeSubmodule as TrackTimeSubmoduleMovable;
float startPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.exactJudgeTime);
float endPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.holdEndTime);
hold.trackPositioner.SetPercent(startPercent);
meshGenerator.SetClipRange(startPercent, endPercent);
headPoint.SetPercent(startPercent);
tailPoint.SetPercent(endPercent);
if (isFirstGenerated)
{
note.noteJudgeSubmodule.AddJudgeUnit("TouchArea");
effectSubmodule.effectCollection["Generate"].Add(new DTMNoteGenerateExtend(this, 1f, 0.5f));
effectSubmodule.effectCollection["Perfect"].Add(new DTMNotePerfectBurst(this));
effectSubmodule.effectCollection["Good"].Add(new DTMNoteGoodBurst(this));
effectSubmodule.effectCollection["Bad"].Add(new DTMNoteBadBurst(this));
effectSubmodule.effectCollection["Miss"].Add(new DTMNoteMissTransparent(this, 0.2f));
}
}
public override void AfterInitialize()
{
base.AfterInitialize();
Recover();
}
public override void Recover()
{
foreach (GameObject part in notePartList)
{
Renderer rend = part.GetComponent<Renderer>();
if (rend != null)
{
rend.material.SetFloat("_MainAlpha", 1f);
}
}
foreach (EffectBase effect in effectSubmodule.effectCollection["Generate"])
{
effect.Recover();
}
}
}
public partial class DTMNoteVisualHold
{
public override void SaveBM()
{
matchedBM = new DTMNoteVisualHold_BM(elementName, elementGuid, tags, parentElement.matchedBM as GameElement_BM, themeBundleName, objectName);
}
private float startPercent, endPercent;
public void UpdateHoldInMovableTrack()
{
if (effectSubmodule.effectCollection["Generate"].Any(e => e.nowEffectState == EffectBase.EffectState.Middle))
{
return;
}
TrackTimeSubmoduleMovable trackTimeSubmoduleMovable = hold.track.trackTimeSubmodule as TrackTimeSubmoduleMovable;
startPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.exactJudgeTime);
endPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.holdEndTime);
if (hold.isHolding)
{
startPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.exactJudgeTime + hold.holdingTime);
endPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.holdEndTime);
}
else if (hold.isFinalJudged)
{
startPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.holdEndTime);
endPercent = trackTimeSubmoduleMovable.GetTrackPercent(hold.holdEndTime);
}
hold.trackPositioner.SetPercent(startPercent);
meshGenerator.SetClipRange(startPercent, endPercent);
headPoint.SetPercent(startPercent);
tailPoint.SetPercent(endPercent);
}
public void UpdateHoldInStaticTrack()
{
//throw new NotImplementedException();
}
}
namespace Beatmap
{
public class DTMNoteVisualHold_BM : SubstantialObject_BM
{
public DTMNoteVisualHold_BM()
{
}
public DTMNoteVisualHold_BM(string elementName, Guid id, List<string> tags,
GameElement_BM parent, string themeBundleName, string objectName) :
base(elementName, id, tags, parent, themeBundleName, objectName)
{
}
public override void ExecuteBM()
{
matchedElement = DTMNoteVisualHold.GenerateElement(elementName, elementGuid, tags, false,
GetElement(attachedElementGuid), themeBundleName, objectName);
}
public override GameElement DuplicateBM(GameElement parent)
{
return DTMNoteVisualHold.GenerateElement(elementName, Guid.NewGuid(), tags, false, parent, themeBundleName, objectName);
}
}
}
}

View File

@@ -0,0 +1,11 @@
fileFormatVersion: 2
guid: 0b426e434ca7bbe4b9dce2a80472de6f
MonoImporter:
externalObjects: {}
serializedVersion: 2
defaultReferences: []
executionOrder: 0
icon: {instanceID: 0}
userData:
assetBundleName:
assetBundleVariant: