using System.Collections; using System.Collections.Generic; using Ichni.Editor; using Ichni.RhythmGame.Beatmap; using Ichni.RhythmGame.ThemeBundles.Basic.Beatmap; using Ichni.RhythmGame.ThemeBundles.MetropolisOnOrbit.Beatmap; using UnityEngine; namespace Ichni.RhythmGame.ThemeBundles.MetropolisOnOrbit { public class MOONotePerfectAnimation : NotePerfectEffect { MOONoteVisual mooNoteVisual => noteVisual as MOONoteVisual; public MOONotePerfectAnimation(MOONoteVisual noteVisual) { this.note = noteVisual.note; this.noteVisual = noteVisual; this.effectTime = 0f; } public override void Recover() { //mooNoteVisual.judgeEffectAnimator.ResetTrigger("Perfect"); mooNoteVisual.judgeEffectAnimator.CrossFade("Idle", 0f); noteVisual.judgeEffect.SetActive(false); noteVisual.noteMain.SetActive(true); /*if (mooNoteVisual is BasicHoldVisualMesh holdVisualMesh) { holdVisualMesh.notePartList[1].SetActive(true); holdVisualMesh.notePartList[2].SetActive(true); }*/ } public override void Adjust() { noteVisual.judgeEffect.SetActive(true); mooNoteVisual.judgeEffectAnimator.CrossFade("Perfect", 0f); noteVisual.noteMain.SetActive(false); /*if (noteVisual is BasicHoldVisualMesh holdVisualMesh) { holdVisualMesh.notePartList[1].SetActive(false); holdVisualMesh.notePartList[2].SetActive(false); }*/ } public override EffectBase_BM ConvertToBM() { return new MOONotePerfectAnimation_BM(effectTime); } public override void SetUpInspector() { IHaveInspection inspector = EditorManager.instance.uiManager.inspector; var container = inspector.GenerateContainer("Basic Note Perfect Burst"); //var subcontainer = container.GenerateSubcontainer(3); } } namespace Beatmap { public class MOONotePerfectAnimation_BM : NotePerfectEffect_BM { public MOONotePerfectAnimation_BM() { } public MOONotePerfectAnimation_BM(float effectTime) : base(effectTime) { } public override EffectBase ConvertToGameType(GameElement attachedGameElement) { return new MOONotePerfectAnimation(attachedGameElement as MOONoteVisual); } } } }