xxxxxxxxxx
251
//let balls = [];
let pic;
//pic 2 is the mouth open
let pic2;
// pic3 is the mouth close
let pic3;
let sound;
//let sound2;
let serial;
let latestData = "waiting for data";
let inData;
// latestData1= puppet no.1
let latestData1;
// latestData2= theater background
let latestData2;
// latestData3=puppet no.2
let latestData3;
// latestData4=flex sensor 1
let latestData4;
// latestData5=flex sensor 2
//let latestData5;
let on = false;
let showPuppet2=false;
let showText = false;
let showTheater = false;
let showMouth = true;
//let showMusic=false;
// function setup() {
// createCanvas(400, 400);
// createCanvas(windowWidth, windowHeight);
// serial = new p5.SerialPort();
// serial.list();
// serial.open("/dev/tty.usbmodem143101");
// serial.on("connected", serverConnected);
// serial.on("list", gotList);
// serial.on("data", gotData);
// serial.on("error", gotError);
// serial.on("open", gotOpen);
// serial.on("close", gotClose);
// //soundPlay();
// sound.play();
// }
function preload() {
pic = loadImage("images.jpeg");
// mouseopen
pic2 = loadImage("7741636054605_.pic_thumb.jpg");
// mouseclose
pic3 = loadImage("7751636054642_.pic_thumb.jpg");
sound = loadSound("234809__armjan88__hip-hop-beat-by-arm-saj-1.mp3");
// sound2=loadSound("516854__robinhood76__08687-shine-magic-stinger.mp3")
}
function setup() {
createCanvas(400, 400);
createCanvas(windowWidth, windowHeight);
serial = new p5.SerialPort();
serial.list();
serial.open("/dev/tty.usbmodem143101");
serial.on("connected", serverConnected);
serial.on("list", gotList);
serial.on("data", gotData);
serial.on("error", gotError);
serial.on("open", gotOpen);
serial.on("close", gotClose);
//sound.play();
}
function serverConnected() {
print("Connected to Server");
}
function gotList(thelist) {
print("List of Serial Ports:");
for (let i = 0; i < thelist.length; i++) {
print(i + "" + thelist[i]);
}
}
function gotOpen() {
print("Serial Port is Open");
}
function gotClose() {
print("Serial Port is Closed");
latestData = "Serial Port is Closed";
}
function gotError(theerror) {
print(theerror);
}
function gotData() {
// let currentString = serial.readLine();
// trim(currentString);
// if (!currentString) return;
// //console.log(currentString);
// latestData = currentString;
var inString = serial.readStringUntil("\r\n");
if (inString.length > 0) {
var sensors = split(inString, ","); // split the string on the commas
if (sensors.length > 1) {
// if there are three elements
latestData1 = sensors[0]; // 0= theater show up
latestData2 = sensors[1]; // 1= puppet no.1
latestData3 = sensors[2];// 2= puppet no.2
latestData4=sensors[3]// 3= sound with images
//latestData5=sensors[4]; // sound 2
}
}
}
function draw() {
soundPlay();
//sound2Play();
background("black");
fill("white");
text(latestData, 10, 10);
//sound.play();
if (latestData1 >= 1) {
on = true;
}
if (latestData2 >= 1) {
showTheater = true;
showText = true;
}
// puppet no.2 show
if (latestData3 >=1){
showPuppet2=true
}
// if (latestData4 >= 1) {
// showMouth = false;
// image(pic2, 0, 0);
// } else {
// image(pic3, 0, 0);
// }
//else{
// image(pic3, 0,0)
// }
if (showTheater) {
push();
scale(5);
image(pic, 0, 0);
pop();
}
if (on) {
push();
fill(255);
ellipse(200, 200, 50);
pop();
}
if (showText) {
text("wear", width / 2, height / 2);
}
// show puppet-full face
if(showPuppet2){
push();
fill(255);
ellipse(200, 300,200);
pop();
}
// sound+mouth change
if (latestData4 >= 1) {
showMouth = false;
image(pic2, 0, 0);
} else {
image(pic3, 0, 0);
}
if (showMouth) {
image(pic3, 0, 0);
}
// felx sensor that play sound 2
// if (latestData5 >= 1) {
// showMouth = false;
// image(pic2, 200, 200);
// } else {
// image(pic3, 200, 200);
// }
if (frameCount % 600 == 1) {
showText = false;
}
if (frameCount % 600 == 1) {
on = false;
}
if (frameCount % 600 == 1) {
showPuppet2 = false;
}
if (frameCount % 3600 == 1) {
showTheater = false;
}
}
function soundPlay() {
if (latestData4 > 1 && sound.isPlaying()) {
sound.pause();
console.log("pausing song.")
}
if(latestData4 ==0 && !sound.isPlaying()){
sound.play();
console.log("playing song.")
}
// function sound2Play(){
// if (latestData5 > 1 && sound.isPlaying()) {
// sound.pause();
// console.log("pausing song.")
// }
// if(latestData5 ==0 && !sound.isPlaying()){
// sound.play();
// console.log("playing song.")
// }
// }
}