diff --git a/build-number.txt b/build-number.txt index 633e3dc2..8bfb8d67 100644 --- a/build-number.txt +++ b/build-number.txt @@ -1 +1 @@ -2833 \ No newline at end of file +2855 \ No newline at end of file diff --git a/src/main/java/me/chayapak1/chomens_bot/song/NBSConverter.java b/src/main/java/me/chayapak1/chomens_bot/song/NBSConverter.java index 87a8dffc..1f4abe6a 100644 --- a/src/main/java/me/chayapak1/chomens_bot/song/NBSConverter.java +++ b/src/main/java/me/chayapak1/chomens_bot/song/NBSConverter.java @@ -185,7 +185,16 @@ public class NBSConverter implements Converter { final String stringLayerNames = layerNames.toString(); - final Song song = new Song(!songName.isBlank() ? songName : fileName, bot, songName, songAuthor, songOriginalAuthor, songDescription, stringLayerNames.substring(0, stringLayerNames.length() - 1), true); + final Song song = new Song( + !songName.isBlank() ? songName : fileName, + bot, + songName, + songAuthor, + songOriginalAuthor, + songDescription, + stringLayerNames.substring(0, Math.max(0, stringLayerNames.length() - 1)), + true + ); if (loop > 0) { song.loopPosition = getMilliTime(loopStartTick, tempo); // song.loopCount = maxLoopCount; @@ -255,7 +264,7 @@ public class NBSConverter implements Converter { (float) note.velocity * (float) layerVolume / 10000f, getMilliTime(note.tick, tempo), Byte.toUnsignedInt(note.panning), - Byte.toUnsignedInt(nbsLayers.get(note.layer).stereo), + nbsLayers.isEmpty() ? 100 : Byte.toUnsignedInt(nbsLayers.get(note.layer).stereo), isRainbowToggle ) );