import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.awt.geom.*;
public class robotClass extends JFrame

{
public static Color newColor2 ;
public static Color newColor1 ;

public robotClass()
{
super("Drawing Polygons");
setSize(400,400);
setVisible(true);
}

public void paint (Graphics g)
{

Graphics2D g2d = (Graphics2D) g;

// Graphics useLess = (Graphics)g2d;

g.setColor(Color.yellow);
int xValues[] ={40, 50, 60, 40, 40, 45};
int yValues[]= {50, 50, 50, 50, 50, 50};
Polygon polygon1 = new Polygon(xValues, yValues, 6);
g.drawPolygon(polygon1);

int xValues2[] = {150, 150, 250, 250, 235, 165, 150};//body
int yValues2[] = {125, 250, 250, 125, 100, 100, 125 };
g.setColor(newColor1);
g.fillPolygon (xValues2, yValues2, 7);

int xValues3[] = {190, 190, 210, 210};//neck
int yValues3[] = {100, 92, 92 ,100};
g.setColor(Color.orange);
g.fillPolygon( xValues3, yValues3, 4);

g.setColor(Color.yellow); //head
g.fillArc(177, 40, 45, 55, 0, 360);

int xValues10[] = {185,215};//mouth
int yValues10[] = {80,80};
g.setColor(Color.black);
g.drawPolyline(xValues10, yValues10, 2);

g.setColor(Color.blue);// left eye
g.fillArc(185, 60, 8,8,0, 360);

g.setColor(Color.blue);// right eye
g.fillArc(207, 60, 8,8,0, 360);

g.setColor(Color.black);// right eye
g.fillArc(182, 38, 37,25,0, 180);

int xValues4[] = {150, 85, 95, 150}; // left arm
int yValues4[] = {125,170, 185, 140 };
g.setColor(newColor2);
g.fillPolygon (xValues4, yValues4, 4);

int xValues11[] = { 100, 60, 93};//knife
int yValues11[] = { 185, 130, 190};
g.setColor(Color.gray);
g.fillPolygon (xValues11, yValues11, 3);

g.setColor(Color.red);// blood
g.fillArc(63, 150, 3,6,0, 360);

g.setColor(Color.red);// blood
g.fillArc(63, 160, 4,8,0, 360);

g.setColor(Color.red);// blood
g.fillArc(63, 175, 7,11,0, 360);

g.setColor(Color.red);// blood
g.fillArc(63, 195, 11,13,0, 360);

g.setColor(Color.red);// blood
g.fillArc(63, 230, 17,23,0, 360);

g.setColor(Color.red);// blood
g.fillArc(55, 280, 60,25,0, 360);

int xValues5[] = {250, 300, 295, 250};
int yValues5[] = {125, 170, 185, 140 };
g.setColor(newColor2);
g.fillPolygon (xValues5, yValues5, 4);

int xValues6[] = {155, 155, 140, 140,170,170};// left leg
int yValues6[] = {250, 300, 300, 310 ,310,250};
g.setColor(Color.yellow);
g.fillPolygon (xValues6, yValues6, 6);

int xValues21[] = {170,120,120,170};// left foot
int yValues21[] = {300,300,310,310};
g.setColor(Color.red);
g.fillPolygon (xValues21, yValues21, 4);

int xValues7[] = {245, 245, 260, 260, 230, 230};
int yValues7[] = {250, 300, 300, 310 ,310,250};// right leg
g.setColor(Color.yellow);
g.fillPolygon (xValues7, yValues7, 6);

int xValues20[] = {230,280, 280,230};
int yValues20[] = {300,300, 310, 310};// right foot
g.setColor(Color.red);
g.fillPolygon (xValues20, yValues20, 4);

g.setFont( new Font ( "Monospaced", Font.ITALIC, 20));//message at bottom
g.setColor( Color.red);
g.drawString( "I am a Robot Killer Clown" ,60,330);

g.setColor(Color.red);// bulls eye
g.fillArc(163, 125, 75,75,0, 360);

g.setColor(Color.white);// bullseye
g.fillArc(168, 130, 65,65,0, 360);

g.setColor(Color.red);// bulls eye
g.fillArc(173, 135, 55,55,0, 360);

g.setColor(Color.white);// bullseye
g.fillArc(178, 140, 45,45,0, 360);

g.setColor(Color.red);// bulls eye
g.fillArc(183, 145, 35,35,0, 360);

g.setColor(Color.white);// bullseye
g.fillArc(188, 150, 25,25,0, 360);

g.setColor(Color.red);// bulls eye
g.fillArc(193, 155, 15,15,0, 360);

g.setColor(Color.white);// bullseye
g.fillArc(198, 160, 5,5,0, 360);

g.setFont( new Font ( "Monospaced",Font.BOLD ,12));// shirt saying
g.setColor( Color.red);
g.drawString( "Come and Get " ,160,220);

g.setFont( new Font ( "Monospaced",Font.BOLD ,24));//Shirt saying
g.setColor( Color.red);
g.drawString( "ME! " ,184,240);
}

public static void main( String args[])
   {
   newColor1 = JColorChooser.showDialog(null , "choose color for shirt", Color.BLACK); //user chooses which color to pick
   if (newColor1 == null)
      {
      newColor1 =Color.blue; //default color is black if cancel is pressed
      }
   
   newColor2 = JColorChooser.showDialog(null , "choose color for arms", Color.PINK); //user chooses which color to pick
   if (newColor2 == null)
      {
      newColor2 =Color.red; //default color is black if cancel is pressed
      }
   robotClass application = new robotClass();

   application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
   }//end main

}//end Lab4MainClass


