void setup() { //// Screen size, etc. size( 629, 479 ); } void draw() { //// Next frame. scene(); hero(); } void scene() { //// Sky, sun, house, tree. background( 200, 220, 255 ); rectMode( CORNERS ); fill( 0, 200, 50 ); rect( 0, height/3, width, height ); fill(0,0,255); sun(); house(); // Title, author text( "Sunny Day", 200, 20 ); text( " Derek Holtberg ", 20, height-20 ); } void house() { rectMode(CENTER); fill(255,0,0); rect(230,350,259,200); rectMode(CORNERS); fill(0); triangle(90,250,230,175,370,250); rectMode(CENTER); rect(150,330,50,50); rect(310,330,50,50); } void sun() { //// Sun moves across sky. fill( 255,255,0 ); noStroke(); ellipse( frameCount % width , height/6, 70,70 ); stroke(0); // Restore stroke } void hero() { //// Follows mouse // noCursor(); head(); ellipse( mouseX-10, mouseY-40-20, 10, 2 ); ellipse( mouseX+10, mouseY-40-20, 10, 2 ); fill( 0, 0, 255 ); text( "Zoog", mouseX-10, mouseY-10 ); } void head() { //// Draw the head fill( 255,200,200 ); // Head ellipse( mouseX, mouseY-40-15, 40, 40 ); } void eyes() { //// Eyes fill(255); ellipse( mouseX-10, mouseY-40-20, 12, 12 ); ellipse( mouseX+10, mouseY-40-20, 12, 12 ); fill( 0, 0, 255 ); ellipse( mouseX-9-random(2), mouseY-40-20, 4, 4 ); ellipse( mouseX+9+random(2), mouseY-40-20, 4, 4 ); } void keyPressed() { //// When key is pressed, draw the eyes. eyes(); if (key == 'e') { eyes(); } if (key == 'E') { eyes(); } if (key == 'q') { exit(); } }