diff --git a/src/classes/SoundEvent.ts b/src/classes/SoundEvent.ts
index a48ddc7..f599a88 100644
--- a/src/classes/SoundEvent.ts
+++ b/src/classes/SoundEvent.ts
@@ -43,6 +43,8 @@ export class SoundEvent extends AudibleEvent {
sustainVolume = (value: number) => this.updateValue("sustainVolume", value);
decay = (value: number) => this.updateValue("decay", value);
tremolo = (value: number) => this.updateValue("tremolo", value);
+ duration = (value: number) => this.updateValue("duration", value);
+ zzfx = (value: number[]) => this.updateValue("zzfx", value);
// ================================================================================
// Basic Audio Engine Parameters
diff --git a/src/documentation/synths.ts b/src/documentation/synths.ts
index 1fe45c9..aea23be 100644
--- a/src/documentation/synths.ts
+++ b/src/documentation/synths.ts
@@ -136,7 +136,20 @@ mod(.5) :: sound(['z_sine', 'z_triangle', 'z_sawtooth', 'z_tan', 'z_noise'].beat
`,
true
)}
-${makeExample("Minimalist chiptune", ``, true)}
+${makeExample(
+ "Minimalist chiptune",
+ `
+mod(.5) :: sound('z_triangle')
+ .note([60, 67, 72, 63, 65, 70].div(.5))
+ .zrand(0).curve([1,2,3,4].div(1))
+ .slide(0.01).tremolo(12)
+ .noise([0,0.5].beat())
+ .decay(0.3).sustain(0)
+ .room(0.5).size(0.9)
+ .pitchJumpTime(0.01).out()
+`,
+ true
+)}
It comes with a set of parameters that can be used to tweak the sound. Don't underestimate this synth! It is very powerful for generating anything ranging from chaotic noise sources to lush pads:
@@ -161,9 +174,33 @@ It comes with a set of parameters that can be used to tweak the sound. Don't und
|zmod|| frequency modulation speed.|
|duration|| Total sound duration (overrides envelope) |
-${makeExample("Chaotic Noise source", ``, true)}
+${makeExample(
+ "Chaotic Noise source",
+ `
+mod(.25) :: sound('z_tan')
+ .note(40).noise(rand(0.0, 1.0))
+ .pitchJump(84).pitchJumpTime(rand(0.0, 1.0))
+ .zcrush([0,1,2,3,4].beat())
+ .zmod(rand(0.0, 1.0))
+ .cutoff(irand(2000,5000))
+ .sustain(0).decay([0.2, 0.1].pick())
+ .out()
+`,
+ true
+)}
${makeExample("Funny Gameboy Tune", ``, false)}
-${makeExample("Ambiant noise", ``, false)}
+${makeExample(
+ "Les voitures dans le futur",
+ `
+mod(1) :: sound(['z_triangle', 'z_sine'].pick())
+ .note([60,63,72,75].pick()).tremolo(16)
+ .zmod([0, 1/2, 1/8].division(2).pick())
+ .attack(0.5).release(0.5).sustain(2).delay(0.8)
+ .room(0.9).size(0.9)
+ .delayt(0.75).delayfb(0.5).out()
+`,
+ false
+)}
# Speech synthesis