效果模块,以及代码位置整理

This commit is contained in:
SoulliesOfficial
2025-02-16 11:15:42 -05:00
parent 934d1b5aba
commit d77e1a0f70
204 changed files with 1107 additions and 347 deletions

View File

@@ -0,0 +1,38 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Ichni.Editor;
using Ichni.RhythmGame.Beatmap;
using Lean.Pool;
using MoreMountains.Feedbacks;
using MoreMountains.FeedbacksForThirdParty;
using Sirenix.OdinInspector;
namespace Ichni.RhythmGame
{
public class BloomShake : EffectBase
{
public float bloomTime;
public float bloomPeak;
[Button("Test Bloom Shake")]
public override void Adjust()
{
MMF_Player effect = LeanPool.Spawn(EditorManager.instance.basePrefabs.bloomShake).GetComponent<MMF_Player>();
effect.GetFeedbackOfType<MMF_Bloom_URP>().ShakeDuration = bloomTime;
effect.GetFeedbackOfType<MMF_Bloom_URP>().RemapIntensityOne = bloomPeak;
effect.PlayFeedbacks();
LeanPool.Despawn(effect.gameObject, bloomTime);
}
public override EffectBase_BM ConvertToBM()
{
throw new NotImplementedException();
}
public override void SetUpInspector()
{
throw new NotImplementedException();
}
}
}

View File

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

View File

@@ -0,0 +1,51 @@
using System;
using System.Collections;
using System.Collections.Generic;
using Sirenix.OdinInspector;
using UnityEngine;
namespace Ichni.RhythmGame
{
public partial class TimeEffectsCollection : GameElement, IHaveEffectSubmodule
{
public EffectSubmodule effectSubmodule { get; set; }
public float time;
public static TimeEffectsCollection CreateTimeEffectsCollection(float time)
{
TimeEffectsCollection timeEffectsCollection = Instantiate(EditorManager.instance.basePrefabs.emptyObject)
.AddComponent<TimeEffectsCollection>();
timeEffectsCollection.time = time;
return timeEffectsCollection;
}
protected override void SetDefaultSubmodules()
{
effectSubmodule = new EffectSubmodule(this);
}
private void Update()
{
effectSubmodule.effectCollection["Default"].ForEach(effect => effect.UpdateEffect(time));
}
}
public partial class TimeEffectsCollection
{
public override void SaveBM()
{
}
public override void SetUpInspector()
{
var container = inspector.GenerateContainer("Time Effects Collection");
var timeInputField = inspector.GenerateInputField(this, container, "Time", nameof(time));
}
}
namespace Beatmap
{
}
}

View File

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