p5((s) => {
let system, x, y, n, w_diff, w, wds, rnd, wt;
x = 0;
y = 0;
n = form.words;
rnd = s.random(0.5);
wt = s.random(300);
w_diff = H / n;
wds = words(n);
let bg = getColor();
s.setup = function () {
s.createCanvas(W, H);
s.background(bg);
s.noStroke();
s.textSize(s.floor(H / n));
};
s.draw = function () {
if (!form.paint) {
s.background(bg);
}
for (let i = 1; i <= n; i++) {
w = wds[i];
align(i % 3);
if (s.random(1) > form.frequency) {
s.fill(255);
} else {
s.fill(0);
}
x = W * 0.5 + wt * s.sin((s.frameCount * rnd * i) / n);
y = -form.wiggle / 2 + s.floor(H / n) / 2 + w_diff * i;
s.text(w, x, y + form.wiggle * s.noise(x * 0.002, y * 0.002));
}
};
const align = (t) => {
switch (t) {
case 1:
s.textAlign(s.LEFT);
break;
case 2:
s.textAlign(s.CENTER);
break;
case 3:
s.textAlign(s.RIGHT);
break;
}
};
})