From 544669c53ebad3a86ad9d3c032695fafe05c6d72 Mon Sep 17 00:00:00 2001 From: esterTion Date: Thu, 7 Oct 2021 01:22:44 +0800 Subject: [PATCH] fix hold across sfl --- main.js | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/main.js b/main.js index 734fa3b..071c5ac 100644 --- a/main.js +++ b/main.js @@ -382,11 +382,12 @@ function parseNotesFromText(text) {noteList = []; //console.log(holdChain, changePoint) for (let j = 0; j < changePoint.length - 1; j++) { const startIndex = changePoint[j], endIndex = changePoint[j + 1], segments = endIndex - startIndex - const startOffset = holdChain[startIndex].laneOffset, startWidth = holdChain[startIndex].noteWidth - const endOffset = holdChain[endIndex].laneOffset, endWidth = holdChain[endIndex].noteWidth + const startOffset = holdChain[startIndex].laneOffset, startWidth = holdChain[startIndex].noteWidth, startDistance = holdChain[startIndex].distance + const endOffset = holdChain[endIndex].laneOffset, endWidth = holdChain[endIndex].noteWidth, endDistance = holdChain[endIndex].distance for (let k = startIndex + 1; k < endIndex; k++) { holdChain[k].laneOffset = (endOffset - startOffset) * (k - startIndex) / segments + startOffset holdChain[k].noteWidth = (endWidth - startWidth) * (k - startIndex) / segments + startWidth + holdChain[k].distance = (endDistance - startDistance) * (k - startIndex) / segments + startDistance } }