Browse Source

feat: 评测选段BeatLength修改

TIANYONG 4 months ago
parent
commit
663301fda5
1 changed files with 6 additions and 1 deletions
  1. 6 1
      src/page-instrument/evaluat-model/index.tsx

+ 6 - 1
src/page-instrument/evaluat-model/index.tsx

@@ -207,12 +207,17 @@ export default defineComponent({
       actualBeatLength = preTimes.length ? actualBeatLength + preTimes[preTimes.length - 1].relaMeasureLength * 1000 : actualBeatLength;
       // 如果是弱起,并且预备小节是第一节
       if (state.section.length && state.sectionFirst && state.sectionFirst.measureListIndex == 0) {
-        actualBeatLength = actualBeatLength < Math.round((state.times[0].fixtime * 1000) / 1) ? Math.round((state.times[0].fixtime * 1000) / 1) : actualBeatLength;
+        // actualBeatLength = actualBeatLength < Math.round((state.times[0].fixtime * 1000) / 1) ? Math.round((state.times[0].fixtime * 1000) / 1) : actualBeatLength;
       }
       
       let firstNoteTime = unitTestIdx > 1 ? preTime : 0;
       let measureIndex = -1;
       let recordMeasure = -1;
+      
+      // 如果有mp3节拍器,并且预备小节是第一节,并且从0开始播放,actualBeatLength需要加上mp3节拍器时间
+      if (state.section.length === 2 && firstNoteTime === 0 && state.section[0]?.MeasureNumberXML === state.firstMeasureNumber + 1 && state.times[0].fixtime) {
+        actualBeatLength  = actualBeatLength + Math.round((state.times[0].fixtime * 1000) / 1)
+      }
 
       for (let index = 0; index < selectTimes.length; index++) {
         const item = selectTimes[index];