X-Git-Url: https://ruin.nu/git/?a=blobdiff_plain;f=MooNote.java;h=5628b1df0e6308140fdd39e5e9804f49b6adf065;hb=1d2d2bfd14ba0addab97692527d4414d3a87e13d;hp=57cf86c8529c9fef5ce0e59726b6c944f83ebc04;hpb=c31857b9fcb119f0d4c12b96222f66340b3dcc56;p=moosique.git diff --git a/MooNote.java b/MooNote.java index 57cf86c..5628b1d 100644 --- a/MooNote.java +++ b/MooNote.java @@ -40,7 +40,7 @@ public class MooNote extends MidiEvent implements Cloneable, Comparable { noteOffMsg = (ShortMessage)noteOffEvent.getMessage(); try { noteOnMsg.setMessage(ShortMessage.NOTE_ON, channel, pitch, velocity); - noteOffMsg.setMessage(ShortMessage.NOTE_OFF, channel, pitch, 0); + noteOffMsg.setMessage(ShortMessage.NOTE_OFF, channel, pitch, 64); } catch (InvalidMidiDataException e) {System.out.println("Invalid data!");} } @@ -175,6 +175,8 @@ public class MooNote extends MidiEvent implements Cloneable, Comparable { * @return a negative integer, zero, or a positive integer as this object is less than, equal to, or greater than the specified object */ public int compareTo(Object o) { - return (int)(getTick() - ((MidiEvent)o).getTick()); + int diff = (int)(getTick() - ((MidiEvent)o).getTick()); + if (diff != 0) return diff; + return (noteOnMsg.getData1() - ((ShortMessage)((MidiEvent)o).getMessage()).getData1()); } }