removing zzfx
This commit is contained in:
@ -1,185 +0,0 @@
|
|||||||
import { type Editor } from "../main";
|
|
||||||
import { AudibleEvent } from "./AbstractEvents";
|
|
||||||
import * as zzfx from "zzfx";
|
|
||||||
|
|
||||||
interface ZZFXValues {
|
|
||||||
volume: number;
|
|
||||||
randomness: number;
|
|
||||||
frequency: number;
|
|
||||||
attack: number;
|
|
||||||
sustain: number;
|
|
||||||
release: number;
|
|
||||||
shape: number;
|
|
||||||
shapeCurve: number;
|
|
||||||
slide: number;
|
|
||||||
deltaSlide: number;
|
|
||||||
pitchJump: number;
|
|
||||||
pitchJumpTime: number;
|
|
||||||
repeatTime: number;
|
|
||||||
noise: number;
|
|
||||||
modulation: number;
|
|
||||||
bitCrush: number;
|
|
||||||
delay: number;
|
|
||||||
sustainVolume: number;
|
|
||||||
decay: number;
|
|
||||||
tremolo: number;
|
|
||||||
}
|
|
||||||
|
|
||||||
export class ZZFX extends AudibleEvent {
|
|
||||||
/**
|
|
||||||
* This class facilitates the creation of ZZFX Synth events
|
|
||||||
* using method chaining. It leverages ZZFX for having another
|
|
||||||
* synth to play with
|
|
||||||
*/
|
|
||||||
values: ZZFXValues;
|
|
||||||
constructor(sound: object, public app: Editor) {
|
|
||||||
super(app);
|
|
||||||
this.values =
|
|
||||||
{
|
|
||||||
volume: 1,
|
|
||||||
randomness: 0.05,
|
|
||||||
frequency: 220,
|
|
||||||
attack: 0,
|
|
||||||
sustain: 0,
|
|
||||||
release: 0.1,
|
|
||||||
shape: 0,
|
|
||||||
shapeCurve: 1,
|
|
||||||
slide: 0,
|
|
||||||
deltaSlide: 0,
|
|
||||||
pitchJump: 0,
|
|
||||||
pitchJumpTime: 0,
|
|
||||||
repeatTime: 0,
|
|
||||||
noise: 0,
|
|
||||||
modulation: 0,
|
|
||||||
bitCrush: 0,
|
|
||||||
delay: 0,
|
|
||||||
sustainVolume: 1,
|
|
||||||
decay: 0,
|
|
||||||
tremolo: 0,
|
|
||||||
} || sound;
|
|
||||||
}
|
|
||||||
|
|
||||||
volume = (value: number): this => {
|
|
||||||
this.values["volume"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
vol = this.volume;
|
|
||||||
|
|
||||||
randomness = (value: number): this => {
|
|
||||||
this.values["randomness"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
rand = this.randomness;
|
|
||||||
|
|
||||||
frequency = (value: number): this => {
|
|
||||||
this.values["frequency"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
freq = this.frequency;
|
|
||||||
|
|
||||||
attack = (value: number): this => {
|
|
||||||
this.values["attack"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
att = this.attack;
|
|
||||||
|
|
||||||
sustain = (value: number): this => {
|
|
||||||
this.values["sustain"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
sus = this.sustain;
|
|
||||||
|
|
||||||
release = (value: number): this => {
|
|
||||||
this.values["release"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
rel = this.release;
|
|
||||||
|
|
||||||
shape = (value: number): this => {
|
|
||||||
this.values["shape"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
shp = this.shape;
|
|
||||||
|
|
||||||
shapeCurve = (value: number): this => {
|
|
||||||
this.values["shapeCurve"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
shpCurve = this.shapeCurve;
|
|
||||||
|
|
||||||
slide = (value: number): this => {
|
|
||||||
this.values["slide"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
sld = this.slide;
|
|
||||||
|
|
||||||
deltaSlide = (value: number): this => {
|
|
||||||
this.values["deltaSlide"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
dsld = this.deltaSlide;
|
|
||||||
|
|
||||||
pitchJump = (value: number): this => {
|
|
||||||
this.values["pitchJump"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
pitchj = this.pitchJump;
|
|
||||||
|
|
||||||
pitchJumpTime = (value: number): this => {
|
|
||||||
this.values["pitchJumpTime"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
pitchjt = this.pitchJumpTime;
|
|
||||||
|
|
||||||
repeatTime = (value: number): this => {
|
|
||||||
this.values["repeatTime"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
rept = this.repeatTime;
|
|
||||||
|
|
||||||
noise = (value: number): this => {
|
|
||||||
this.values["noise"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
nois = this.noise;
|
|
||||||
|
|
||||||
modulation = (value: number): this => {
|
|
||||||
this.values["modulation"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
mod = this.modulation;
|
|
||||||
|
|
||||||
bitCrush = (value: number): this => {
|
|
||||||
this.values["bitCrush"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
bitc = this.bitCrush;
|
|
||||||
|
|
||||||
delay = (value: number): this => {
|
|
||||||
this.values["delay"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
del = this.delay;
|
|
||||||
|
|
||||||
sustainVolume = (value: number): this => {
|
|
||||||
this.values["sustainVolume"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
susvol = this.sustainVolume;
|
|
||||||
|
|
||||||
decay = (value: number): this => {
|
|
||||||
this.values["decay"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
dec = this.decay;
|
|
||||||
|
|
||||||
tremolo = (value: number): this => {
|
|
||||||
this.values["tremolo"] = value;
|
|
||||||
return this;
|
|
||||||
};
|
|
||||||
trem = this.tremolo;
|
|
||||||
|
|
||||||
play = (): void => {
|
|
||||||
zzfx(...Object.values(this.values));
|
|
||||||
};
|
|
||||||
}
|
|
||||||
Reference in New Issue
Block a user