public void Init(Canvas libraryUIPrefab, ChordEditor chordEditorPrefab, MusicSystem musicSystem) { InitLibrary(libraryUIPrefab); chordEditor = Instantiate(chordEditorPrefab); base.Init(chordEditor); chordEditor.ChordsUpdated.AddListener(UpdateChords); chordEventManager.Init(); PointerPosChanged.AddListener(_ => PointerPosChangedEvent.Invoke()); chordEditor.ChordsUpdated.AddListener(ChordPlacedEvent.Invoke); }
public static ChordSlot Instantiate(ChordSlot prefab, Transform parent, Vector3 localPosition, DraggableChord chordPrefab, ChordEditor chordEditor) { ChordSlot instance = Instantiate(prefab, parent); instance.transform.localPosition = Helpers.ReplaceZ(localPosition, -0.1f); instance.chordPrefab = chordPrefab; instance.editor = chordEditor; instance.camera = Camera.main; instance.isProperlyInstantiated = true; return(instance); }