xxxxxxxxxx
135
let names = [
"Jin",
"Jing",
"Yifan C",
"Joe (Yifan D)",
"Augusta",
"William",
"Taigen",
"Inês",
"Meghna",
"Sammy",
"Yao",
"Shawn"
];
let y;
let counter = 0;
let pairs = [];
let over;
let groupsize;
let inpt;
let stte = 0;
let submit;
let anim;
function setup() {
createCanvas(windowWidth, windowHeight);
console.log(names.length);
inpt = createInput();
submit = createButton("submit");
inpt.position(20, 60);
submit.position(20, 85);
submit.mousePressed(grpSize);
anim = setInterval(function () {
background(255, 255, 0);
for (let i of names) {
text(i, random(width), random(150, height));
}
}, 100);
}
function grpSize() {
stte = 1;
groupsize = Number(inpt.value());
inpt.remove();
submit.remove();
}
function draw() {
textSize(36);
if (stte == 0) {
text("Enter group size", 20, 40);
} else {
clearInterval(anim);
background(255, 255, 0);
}
for (let i = 0; i < pairs.length; i++) {
text(pairs[i], 20, 70 + i * 70);
stroke(255, 0, 0);
line(0, 85 + i * 70, width, 85 + i * 70);
}
}
function mousePressed() {
let pair = [];
if (stte == 1) {
console.log("Generate");
console.log(names.length);
console.log(groupsize);
if (names.length > groupsize) {
let grp = "";
console.log("pairup 1");
for (let i = 0; i < groupsize; i++) {
let ind = floor(random(names.length));
pair[i] = names[ind];
names.splice(ind, 1);
grp = grp + " " + pair[i] + " ";
}
pairs[counter] = grp;
} else if (names.length == groupsize) {
console.log("pairup 2");
console.log(names);
let grp = "";
for (let i = 0; i < groupsize; i++) {
let ind = floor(random(names.length));
pair[i] = names[ind];
names.splice(ind, 1);
grp = grp + " " + pair[i] + " ";
}
pairs[counter] = grp;
console.log(names);
} else if (names.length < groupsize && names.length > 0) {
console.log("pairup 3");
let grp = "";
console.log("REmaining: " + names.length);
console.log(pairs);
for (let i = 0; i < names.length; i++) {
let ind = floor(random(names.length));
pair[i] = names[ind];
//grp = grp + " " + pair[i] + " ";
let gp = floor(random(pairs.length));
if (over !== pairs[gp]) {
pairs[gp] = pairs[gp] + " " + pair[i];
over = pairs[gp];
names.splice(ind, 1);
}
console.log(pairs[gp].length);
}
//pairs[counter] = grp;
} else if (names.length <= 0) {
console.log("pairup 4");
//pairs[counter] = " ";
return;
}
counter++;
}
// let n = floor(random(names.length));
//console.log(pairs[counter]);
// console.log(names.length);
//console.log(pairs)
//}
}