Пример #1
0
        public void InsertScoreBackwardWithNote(NoteBook noteBook, ScoreBook scoreBook, Score score, int beatNumer, int beatDenom, int barCount)
        {
            int initialScoreTick = score.StartTick;

            InsertScoreBackward(scoreBook, score, beatNumer, beatDenom, barCount);
            //score以降に含まれるすべてのノーツに対して位置をずらす
            int deltaTick = barCount * ScoreInfo.MaxBeatDiv * beatNumer / beatDenom;

            noteBook.RelocateNoteTickAfterScoreTick(initialScoreTick, deltaTick);
            UpdateNoteLocation?.Invoke(this);
        }
Пример #2
0
        public void InsertScoreBackwardWithNote(NoteBook noteBook, ScoreBook database, Score baseScore, ScoreBook newScores)
        {
            int initialScoreTick = baseScore.StartTick;

            InsertScoreBackward(database, baseScore, newScores);
            //score以降に含まれるすべてのノーツに対して位置をずらす
            int deltaTick = 0;

            newScores.ForEach(x => deltaTick += ScoreInfo.MaxBeatDiv * x.BeatNumer / x.BeatDenom);
            noteBook.RelocateNoteTickAfterScoreTick(initialScoreTick, deltaTick);
            UpdateNoteLocation?.Invoke(this);
        }