using System; using System.Collections; using System.Collections.Generic; using Ichni.RhythmGame.Beatmap; using Lean.Pool; using UnityEngine; namespace Ichni.RhythmGame.ThemeBundles.Basic { public partial class BasicNoteVisual : NoteVisualBase { public new static BasicNoteVisual GenerateElement(string elementName, Guid id, List tags, string themeBundleName, string objectName, Vector3 position, Vector3 eulerAngles, Vector3 scale, BaseElement parent, bool isFirstGenerated = true) { BasicNoteVisual noteVisual = SubstantialObject .GenerateElement(elementName, id, tags, themeBundleName, objectName, position, eulerAngles, scale, parent, isFirstGenerated) .GetComponent(); NoteBase note = parent as NoteBase; if(note == null) throw new System.Exception("NoteVisual只能生成在Note下。"); noteVisual.note = note; note.noteVisual = noteVisual; if (isFirstGenerated) { note.generateEffects.effectList.Add(new BasicNoteGenerateExpand(noteVisual.note)); note.perfectJudgeEffects.effectList.Add(new BasicNotePerfectBurst(noteVisual.note)); note.goodJudgeEffects.effectList.Add(new BasicNoteGoodBurst(noteVisual.note)); note.badJudgeEffects.effectList.Add(new BasicNoteBadExpand(noteVisual.note)); note.missJudgeEffects.effectList.Add(new BasicNoteMissPale(noteVisual.note)); } return noteVisual; } } public partial class BasicNoteVisual { public override void SaveBM() { } } namespace Beatmap { public class BasicNoteVisual_BM : BaseElement_BM { public BasicNoteVisual_BM() { } public BasicNoteVisual_BM(string elementName, Guid id, List tags, BaseElement_BM parent, string themeBundleName, string objectName, Vector3 position, Vector3 eulerAngles, Vector3 scale) : base(elementName, id, tags, parent) { this.elementName = elementName; this.elementGuid = id; this.tags = tags; // this.themeBundleName = themeBundleName; // this.objectName = objectName; // this.position = position; // this.eulerAngles = eulerAngles; // this.scale = scale; // this.parent = parent; } public override void ExecuteBM() { //TODO: 生成NoteVisual } public override BaseElement DuplicateBM(BaseElement parent) { //TODO: 生成NoteVisual return null; } } } }