Modify a text file: $/p2a331.pde
$/p2a331.pde
//house/sun/ hero int frames=30; float sunX; float sunY; float horizon; float heroX; float heroY; float heroXspeed, heroYspeed; float fast=1; float houseX=50, houseY= 100, houseW= 300, houseH=200; House home; Hero mike; ////SETUP: screen size & mode void setup() { size(800, 800); smooth(); frameRate(frames); horizon= height/1.5; //-- houseY= horizon-houseH; home = new House(); home.houseY = horizon - home.houseH; mike = new Hero(); sunY=horizon/4; reset(); } void reset() { heroHome(); } void heroHome() { heroX = houseX+5; heroY= houseY+10; heroXspeed= random(2, 7); heroYspeed = random(-3, +3); fast=1; } void draw() { scene(); action(); show(); messages(); } ///SCENE: sky, sun house void scene() { background(100, 200, 250); //sky noStroke(); fill(0, 250, 0); rect(0, horizon, width, height-horizon); //grass //-- house(); home.show(); sunX=sunX+fast*6; } void house() { stroke(0); fill(150, 30, 20); //Brown house rect(houseX, houseY, houseW, houseH); fill(0); triangle(houseX, houseY, houseX+houseW, houseY, houseX+houseW/2, houseY-houseH/2); //roof //house door fill(100, 10, 20); rect(houseW/2+houseX, houseH/2+houseY, 40, 100); //doorknob fill(255, 255, 0); ellipse(230, 490, 10, 10); } void action() { //sun moves across sky fill(255, 255, 0); ellipse(sunX, sunY-50, 150, 150); if (sunX>width) { sunX=0; } //move hero heroX= heroX + heroXspeed*fast; ////bounce off wall if (heroX>width-30 || heroX<40) { heroXspeed = -heroXspeed; } if (heroY>height -50-10 * heroXspeed || heroY