From 2fbd39ead802e51b47bd1e37c6f97350420a90b9 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Bart=C5=82omiej=20Przemys=C5=82aw=20Pluta?= Date: Sat, 25 Apr 2020 14:15:28 +0200 Subject: [PATCH] Update hardcoded commands invocation in modules to new syntax --- .../ext/midi/function/MidiHelpFunction.kt | 4 ++-- .../music-tools/src/main/resources/main.mus | 20 +++++++++++-------- 2 files changed, 14 insertions(+), 10 deletions(-) diff --git a/modules/midi/src/main/kotlin/io/smnp/ext/midi/function/MidiHelpFunction.kt b/modules/midi/src/main/kotlin/io/smnp/ext/midi/function/MidiHelpFunction.kt index e437c06..1e76feb 100644 --- a/modules/midi/src/main/kotlin/io/smnp/ext/midi/function/MidiHelpFunction.kt +++ b/modules/midi/src/main/kotlin/io/smnp/ext/midi/function/MidiHelpFunction.kt @@ -44,7 +44,7 @@ class MidiHelpFunction : Function("midiHelp") { } val notes = Value.list( - listOf(Value.string("i:$instrument")) + environment.invokeFunction( + listOf(Value.map(mapOf(Value.string("instrument") to Value.int(instrument)))) + environment.invokeFunction( "range", listOf(begin, end) ).value as List @@ -60,7 +60,7 @@ class MidiHelpFunction : Function("midiHelp") { println(it) Midi .with(ConfigMap(mapOf(Value.string("bpm") to Value.int(bpm)))) - .play(mapOf(channel to listOf(listOf("i:$instrument", it)))) + .play(mapOf(channel to listOf(listOf(mapOf("instrument" to instrument), it)))) Thread.sleep(100) } } diff --git a/modules/music-tools/src/main/resources/main.mus b/modules/music-tools/src/main/resources/main.mus index 37b496f..bf71dfc 100644 --- a/modules/music-tools/src/main/resources/main.mus +++ b/modules/music-tools/src/main/resources/main.mus @@ -4,11 +4,13 @@ function metronome(bpm: int = 120, beats: int = 4, accent: note = @A#2, beat: no } function alert(melody: string = "beep") { + i = instrument(108) + melodies = { - beep -> ["i:108", @c5, 4, @c5, 1, 4], - bell -> ["i:108", @c5:8, @db5:8], - alarm1 -> ["i:108", (range(@g, @g5) as n ^ n.withDuration(32))].flatten(), - alarm2 -> ["i:108", (range(@g, @g5) as n ^ n.withDuration(32)), -(range(@c, @c5) as n ^ n.withDuration(32))].flatten() + beep -> [i, @c5, 4, @c5, 1, 4], + bell -> [i, @c5:8, @db5:8], + alarm1 -> [i, (range(@g, @g5) as n ^ n.withDuration(32))].flatten(), + alarm2 -> [i, (range(@g, @g5) as n ^ n.withDuration(32)), -(range(@c, @c5) as n ^ n.withDuration(32))].flatten() }; if(not melodies.containsKey(melody)) { @@ -22,11 +24,13 @@ function alert(melody: string = "beep") { } function alert(cycles: int, melody: string = "beep") { + i = instrument(108) + melodies = { - beep -> ["i:108", @c5, 4, @c5, 1, 4], - bell -> ["i:108", @c5:8, @db5:8], - alarm1 -> ["i:108", (range(@g, @g5) as n ^ n.withDuration(32))].flatten(), - alarm2 -> ["i:108", (range(@g, @g5) as n ^ n.withDuration(32)), -(range(@c, @c5) as n ^ n.withDuration(32))].flatten() + beep -> [i, @c5, 4, @c5, 1, 4], + bell -> [i, @c5:8, @db5:8], + alarm1 -> [i, (range(@g, @g5) as n ^ n.withDuration(32))].flatten(), + alarm2 -> [i, (range(@g, @g5) as n ^ n.withDuration(32)), -(range(@c, @c5) as n ^ n.withDuration(32))].flatten() }; if(not melodies.containsKey(melody)) {