public class Note { char letter; int octave, length, pauseB4; Note(char letter, int octave, int length, int pauseB4) { this.letter = letter ; this.octave = octave; this.length = length; this.pauseB4 = pauseB4; } public void play(Keyboard kbrd, int timeIncr) { int before = (int)System.currentTimeMillis(); Slug.move(kbrd.getDistanceTo(letter, octave), kbrd ); //check pause int after = (int)System.currentTimeMillis(); int remainingPause = pauseB4*timeIncr - (int)(after - before); Slug.wait(remainingPause); Slug.play(length * timeIncr); } public void combine(Note note) { this.pauseB4 = note.pauseB4; this.length += note.length; } }