//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // * Overwritten Method: Check Limit //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ protected override void CheckLimit() { if (m_rNotesManager != null && CanSwitchNotes) { if (!IsValidScale(LocalScale)) { CorrectScaleSize(); return; } // Transition to Prev/Next note if Note has gone out of Bounds OutOfBoundsIdentity eBoundary = GetOutOfBounds(); if (eBoundary != OutOfBoundsIdentity.NOT_OUT_OF_BOUNDS) { if (eBoundary == OutOfBoundsIdentity.EAST && m_rNotesManager.HasPreviousNote && LocalPosition.x > EasternBoundary * 1.25f) { m_rNotesManager.Disappear(MultipleNotesManager.TransitioningNote.PREVIOUS_NOTE); } else if (eBoundary == OutOfBoundsIdentity.WEST && m_rNotesManager.HasNextNote && LocalPosition.x < WesternBoundary * 1.25f) { m_rNotesManager.Disappear(MultipleNotesManager.TransitioningNote.NEXT_NOTE); } else { CorrectMovementPosition(); } } } else { base.CheckLimit(); } }
public void PlayThroughRhythmList(Playlist ePlaylist, MultipleNotesManager rOwningSheetMusic, float fDelayTime = 0.0f) { // Assign and then close down the Sheet Music m_rOwningSheetMusicNote = rOwningSheetMusic; if (rOwningSheetMusic != null) { rOwningSheetMusic.Disappear(false); } m_bIsInvoked = true; m_eSelectedPlaylist = ePlaylist; m_fStartDelayTime = fDelayTime; }
//~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ // * Derived Method: On Trigger //~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ protected override void OnTrigger() { base.OnTrigger(); m_rMultipleNotesManager.Disappear(m_eTransitioningNote); }