/* Title: Fishybois By: Chavaiz Amil Instructions: Move the mouse to move the fish, seaweed, bottle of feed, and tank Press the mouse to drop feed into the tank and activate text */ void setup() { size(400, 400); noStroke(); rectMode(CORNERS); ellipseMode(CENTER); } void draw() { frameRate(60); //wall background(180, 180, 180); fill(100, 100, 100); rect(-15, 370, 415, 415); //desk fill(44, 29, 14); rect(-15-mouseX/25, 340+mouseY/25, 415-mouseX/25, 370+mouseY/25); fill(82, 54, 27); rect(-15-mouseX/25, 240+mouseY/25, 415-mouseX/25, 340+mouseY/25); //tank back panel fill(201, 219, 220, 200); rect(90-mouseX/25, 90+mouseY/25, 310-mouseX/25, 250+mouseY/25); //filter fill(50, 50, 50); rect(180-mouseX/25, 90+mouseY/25, 200-mouseX/25, 140+mouseY/25); rect(190-mouseX/25, 140+mouseY/25, 200-mouseX/25, 160+mouseY/25); //bubbles fill(150, 150, 255, 150+sin(millis()/100)*30); ellipse(195-mouseX/25, 165+mouseY/25, 5+sin(millis()/200)*.85, 5+sin(millis()/200)*.85); ellipse(203-mouseX/25, 168+mouseY/25, 5.5+sin(millis()/100)*.85, 5.5+sin(millis()/100)*.85); fill(150, 150, 255, 150+sin(millis()/150)*30); ellipse(207-mouseX/25, 155+mouseY/25, 6+sin(millis()/200)*1, 6+sin(millis()/200)*1); ellipse(212-mouseX/25, 145+mouseY/25, 7+sin(millis()/100)*.85, 7+sin(millis()/100)*.85); //tank bottom fill(194, 178, 128); quad(10-mouseX/25, 320+mouseY/25, 90-mouseX/25, 250+mouseY/25, 310-mouseX/25, 250+mouseY/25, 390-mouseX/25, 320+mouseY/25); //side panel fill(201, 219, 220, 100); //left quad(10-mouseX/25, 50+mouseY/25, 90-mouseX/25, 90+mouseY/25, 90-mouseX/25, 250+mouseY/25, 10-mouseX/25, 320+mouseY/25); //right quad(310-mouseX/25, 250+mouseY/25, 390-mouseX/25, 320+mouseY/25, 390-mouseX/25, 50+mouseY/25, 310-mouseX/25, 90+mouseY/25); //rock fill(115, 115, 115); rectMode(CENTER); rect(110-mouseX/25, 265+mouseY/25, 40, 25, 200); //coral fill(115, 20, 20); rect(315-mouseX/25, 270+mouseY/25, 20, 40, 200); rect(321-mouseX/25, 250+mouseY/25, 7, 15, 200); rect(310-mouseX/25, 250+mouseY/25, 9, 20, 200); rect(313-mouseX/25, 258+mouseY/25, 30, 8, 200); //seaweed - wavybois stroke(69, 199, 69); strokeWeight(3); //left patch line(110-mouseX/25, 280+mouseY/25, 117-pmouseX*2/25+cos(millis()/200)*2, 250+mouseY/25); line(113-mouseX/25, 282+mouseY/25, 120-pmouseX*2/25+sin(millis()/200)*2, 253+mouseY/25); line(116-mouseX/25, 280+mouseY/25, 123-pmouseX*2/25+sin(millis()/200)*2, 248+mouseY/25); line(119-mouseX/25, 283+mouseY/25, 123-pmouseX*2/25+cos(millis()/200)*2, 256+mouseY/25); line(122-mouseX/25, 280+mouseY/25, 126-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); line(125-mouseX/25, 281+mouseY/25, 129-pmouseX*2/25+sin(millis()/200)*2, 250+mouseY/25); line(128-mouseX/25, 280+mouseY/25, 135-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); line(121-mouseX/25, 279+mouseY/25, 135-pmouseX*2/25+sin(millis()/200)*2, 253+mouseY/25); //left middle patch line(160-mouseX/25, 280+mouseY/25, 165-pmouseX*2/25+sin(millis()/200)*2, 250+mouseY/25); line(165-mouseX/25, 282+mouseY/25, 172-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); line(170-mouseX/25, 280+mouseY/25, 179-pmouseX*2/25+sin(millis()/200)*2, 248+mouseY/25); line(173-mouseX/25, 283+mouseY/25, 184-pmouseX*2/25+cos(millis()/200)*2, 256+mouseY/25); line(176-mouseX/25, 280+mouseY/25, 187-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); line(180-mouseX/25, 281+mouseY/25, 190-pmouseX*2/25+sin(millis()/200)*2, 250+mouseY/25); line(182-mouseX/25, 280+mouseY/25, 190-pmouseX*2/25+sin(millis()/200)*2, 253+mouseY/25); line(185-mouseX/25, 279+mouseY/25, 192-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); //right middle patch line(200-mouseX/25, 280+mouseY/25, 207-pmouseX*2/25+cos(millis()/200)*2, 250+mouseY/25); line(205-mouseX/25, 282+mouseY/25, 210-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); line(210-mouseX/25, 280+mouseY/25, 210-pmouseX*2/25+sin(millis()/200)*2, 248+mouseY/25); line(213-mouseX/25, 283+mouseY/25, 213-pmouseX*2/25+cos(millis()/200)*2, 256+mouseY/25); line(216-mouseX/25, 280+mouseY/25, 216-pmouseX*2/25+sin(millis()/200)*2, 253+mouseY/25); line(220-mouseX/25, 281+mouseY/25, 222-pmouseX*2/25+sin(millis()/200)*2, 250+mouseY/25); line(222-mouseX/25, 280+mouseY/25, 219-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); line(225-mouseX/25, 279+mouseY/25, 225-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); //right patch line(230-mouseX/25, 280+mouseY/25, 237-pmouseX*2/25+sin(millis()/200)*2, 250+mouseY/25); line(235-mouseX/25, 282+mouseY/25, 240-pmouseX*2/25+sin(millis()/200)*2, 253+mouseY/25); line(240-mouseX/25, 280+mouseY/25, 240-pmouseX*2/25+cos(millis()/200)*2, 248+mouseY/25); line(243-mouseX/25, 283+mouseY/25, 243-pmouseX*2/25+cos(millis()/200)*2, 256+mouseY/25); line(246-mouseX/25, 280+mouseY/25, 246-pmouseX*2/25+cos(millis()/200)*2, 253+mouseY/25); line(250-mouseX/25, 281+mouseY/25, 252-pmouseX*2/25+sin(millis()/200)*2, 250+mouseY/25); line(252-mouseX/25, 280+mouseY/25, 259-pmouseX*2/25+sin(millis()/200)*2, 253+mouseY/25); line(255-mouseX/25, 279+mouseY/25, 265-pmouseX*2/25+sin(millis()/200)*2, 253+mouseY/25); //disable stroke noStroke(); //bottle thing fill(255, 165, 0); rectMode(CENTER); ellipse(mouseX, 28, 20, 20); rect(mouseX, 45, 20, 40); fill(255, 255, 255); rect(mouseX, 45, 20, 20); //feesh fill(255, 135, 0); rect(70+mouseX/1.5, 150+mouseY/3, 40, 27, 50); triangle(50+mouseX/1.5, 150+mouseY/3, 40+mouseX/1.5, 140+mouseY/3, 40+mouseX/1.5, 160+mouseY/3); rect(330-mouseX/1.5, 250-mouseY/3, 40, 27, 50); triangle(350-mouseX/1.5, 250-mouseY/3, 360-mouseX/1.5, 240-mouseY/3, 360-mouseX/1.5, 260-mouseY/3); fill(255); rect(330-mouseX/1.5, 250-mouseY/3, 10, 27); fill(0); ellipse(85+mouseX/1.5, 147+mouseY/3, 3, 3); ellipse(315-mouseX/1.5, 247-mouseY/3, 3, 3); //tank front panel - inside all behind this fill(201, 219, 220, 75); rectMode(CORNERS); rect(10-mouseX/25, 50+mouseY/25, 390-mouseX/25, 320+mouseY/25); } void mousePressed() { frameRate(2); //feed ellipseMode(CENTER); fill(240, 140, 0, 100); ellipse(pmouseX+5, pmouseY-5, 5, 5); ellipse(pmouseX-9, pmouseY-13, 5, 5); ellipse(pmouseX+10, pmouseY-10, 5, 5); ellipse(pmouseX-5, pmouseY-7, 5, 5); ellipse(pmouseX, pmouseY-15, 5, 5); println("Have you seen my son???"); }