////  Q0.java -- CST 112 Quiz #1
//// Carrie Wisniewski

////////  GLOBAL DECLARATIONS  //////// 
String help=  "click below horizon to set the dart\n"
  + "click flag (or 'd' key) to throw.\n"
  + "r resets dart & target, q to quit.";

float horizon;
float flagX, flagY;                  // Coordinates of flag
float targetX, targetY;              // Coordinates of the bullseye.
float dartX, dartY, dartDX, dartDY;  // Coordinates & velocity for dart.
int score=0;
////////  SETUP //////// 
void setup() {
  size(800, 600);
  flagX=width/2;
  flagY=20;
  reset();
}
void reset() {
    horizon=  height / 4;
    targetX=  width-120;
    targetY=  random( horizon, height-100 );
    dartDX=dartDY=0;
    dartX=  100;
    dartY=  random( horizon, height-100 );
}

////////  NEXT FRAME //////// 
void draw() {
    scene();
    action();
    messages();
}


////////  Draw the scene //////// 
void scene() {
    background( 0, 128, 255 );            // Background should be sky-blue! 
    fill( 0,153,76 );                    // Grass should be green
    rect( 0,horizon, width,height*3/4 );

    // Flag //
    fill(255); 
    rect(flagX,flagY, 120,90);  
    fill(0); text("3-color-flag", flagX,flagY); 
    fill (0,0,204);
    rect(flagX, flagY,40,90);
    fill (0,0,255);
    
    //+++REMOVE+++//  Replace the above with YOUR code to draw tri-color flag! //+++REMOVE+++//
  
    // Target //
    fill(255,0,0); ellipse(targetX,targetY, 200,200); fill(0); text("bullseye+++", targetX,targetY); 
   fill (255);
    ellipse (targetX, targetY, 150,150);
   fill (255,0,0);
   fill(255,0,0);
   ellipse (targetX, targetY, 85,85);
   fill(255);
   ellipse(targetX, targetY, 50, 50);  
}


////////  ACTION:
////////    * Move the dart (until it stops), update score, etc.
////////    * Draw everything on the screen
void action() {

    //+++REMOVE+++//  Add YOUR code below, to move & draw the objects.  //+++REMOVE+++//

    // Move the dart
    dartX = dartX + dartDX;
    // STOP the dart when reaches target.
    if (dartX >= targetX) {
        dartDX=0;
    }
       
    
    // Draw the dart, etc.
    fill(51,255,255); 
    ellipse( dartX,dartY, 80,20 ); 
    fill(0);
    fill(0,128,255);
   text( "DART+++", dartX, dartY );
   textSize(10);
    
}

//////// MESSAGES:  title, author, score, etc. //////// 
void messages() {
    fill(0);
    textSize(24);
    text( "CST 112 Quiz #1", 10, 20 );
    text( "SCORE:", width*3/4,20 );
    textSize(12);
    text( help, 20,50 );
    text( "Carrie Wisniewski", 10, height-10 );
}
  

//////// EVENT HANDLERS:  keys & mouse ////////
void keyPressed() {
    if (key == 'q') { exit(); }
    if (key == 'r') { reset(); }
//    if (key == 'd') { dartReset();}
//    if (key== 't' ) {targetReset ();}
}
void mousePressed() {
  dartX= mouseX;
  dartY=mouseY;
  flagX= mouseX;
  flagY=mouseY;
}
    //+++REMOVE+++//  Add your code to handle mouse clicks on the flag!  //+++REMOVE+++//

    //+++REMOVE+++//  Add your code to handle clicks below the horizon!  //+++REMOVE+++//




//+++REMOVE+++//  PLEASE REMOVE ALL +++ LINES BEFORE SUBMITTING YOUR CODE!  //+++REMOVE+++//

