Cabeza.java

Categorías: CategoryJava | CategoryProgramacion

   1 /**
   2  *@author Elkin Andrey Garzón Alarcón...Geek Master
   3  *@author Ingrid Lorena Guerrero Mayorga...
   4  *@author Jefferson Fabian Idarraga Idarraga Pinilla...
   5  */
   6 package pinguinogg;
   7 
   8 import java.awt.Color;
   9 import java.awt.Graphics;
  10 import java.util.List;
  11 import java.util.logging.Level;
  12 import java.util.logging.Logger;
  13 
  14 /*
  15  *Se crea la cabeza la cual extiende de objeto grafico implementa
  16  *un Runnable el cual hace que se mueva el hilo de la cebeza
  17  */
  18 public class Cabeza extends ObjetoGrafico implements Runnable {
  19 
  20     private Object Threat;
  21     private Lienzo lienzo;
  22     private PuntajeVidas puntaje;
  23 
  24        /*Se crea el constructor  */
  25     public Cabeza(int x, int y, int ancho, int alto, Lienzo lienzo, PuntajeVidas puntaje) {
  26         super(x, y, ancho, alto);
  27 
  28         this.lienzo = lienzo;
  29         this.puntaje = puntaje;
  30     }
  31 
  32     public void paint(Graphics g) {
  33         if (visible) {
  34             //pelo1
  35             g.setColor(new Color(199, 202, 203));
  36             int[] pelo1X = {
  37                 x + 20 * ancho / 85,
  38                 x + 5 * ancho / 85,
  39                 x + 5 * ancho / 85,};
  40             int[] pelo1Y = {
  41                 y + 38 * alto / 160,
  42                 y + 25 * alto / 160,
  43                 y + 64 * alto / 160,};
  44             g.fillPolygon(pelo1X, pelo1Y, 3);
  45 
  46 
  47             //pelo2
  48             g.setColor(new Color(199, 202, 203));
  49             int[] pelo2X = {
  50                 x + 40 * ancho / 85,
  51                 x + 35 * ancho / 85,
  52                 x + 20 * ancho / 85,};
  53             int[] pelo2Y = {
  54                 y + 29 * alto / 160,
  55                 y + 0 * alto / 160,
  56                 y + 38 * alto / 160,};
  57             g.fillPolygon(pelo2X, pelo2Y, 3);
  58 
  59             //pelo3
  60             g.setColor(new Color(199, 202, 203));
  61             int[] pelo3X = {
  62                 x + 58 * ancho / 85,
  63                 x + 50 * ancho / 85,
  64                 x + 40 * ancho / 85,};
  65             int[] pelo3Y = {
  66                 y + 35 * alto / 160,
  67                 y + 0 * alto / 160,
  68                 y + 29 * alto / 160,};
  69             g.fillPolygon(pelo3X, pelo3Y, 3);
  70 
  71             //pelo 4
  72             g.setColor(new Color(199, 202, 203));
  73             int[] pelo4X = {
  74                 x + 72 * ancho / 85,
  75                 x + 72 * ancho / 85,
  76                 x + 58 * ancho / 85,};
  77             int[] pelo4Y = {
  78                 y + 53 * alto / 160,
  79                 y + 23 * alto / 160,
  80                 y + 34 * alto / 160,};
  81             g.fillPolygon(pelo4X, pelo4Y, 3);
  82 
  83             //cabeza
  84             g.setColor(new Color(106, 151, 234));
  85             g.fillOval(x + 0 * ancho / 85, y + 30 * alto / 160, 85 * ancho / 85, 130 * alto / 160);
  86 
  87             //contorno
  88             //g.setColor(Color.BLACK);
  89             //g.drawOval(x + 0 * ancho / 85, y + 30 * alto / 160, 85 * ancho / 85, 130 * alto / 160);
  90 
  91             //cachete 1
  92             g.setColor(new Color(226, 175, 188));
  93             g.fillOval(x + 10 * ancho / 85, y + 100 * alto / 160, 10 * ancho / 85, 10 * alto / 160);
  94 
  95             //cahete 2
  96             g.setColor(new Color(226, 175, 188));
  97             g.fillOval(x + 70 * ancho / 85, y + 100 * alto / 160, 10 * ancho / 85, 10 * alto / 160);
  98 
  99             //seja 1
 100 
 101             g.setColor(Color.LIGHT_GRAY);
 102             int[] seja1X = {
 103                 x + 70 * ancho / 85,
 104                 x + 70 * ancho / 85,
 105                 x + 50 * ancho / 85,
 106                 x + 50 * ancho / 85,};
 107             int[] seja1Y = {
 108                 y + 55 * alto / 160,
 109                 y + 65 * alto / 160,
 110                 y + 70 * alto / 160,
 111                 y + 60 * alto / 160,};
 112             g.fillPolygon(seja1X, seja1Y, 4);
 113 
 114             //seja 2
 115 
 116             g.setColor(Color.LIGHT_GRAY);
 117             int[] seja2X = {
 118                 x + 35 * ancho / 85,
 119                 x + 35 * ancho / 85,
 120                 x + 15 * ancho / 85,
 121                 x + 15 * ancho / 85,};
 122             int[] seja2Y = {
 123                 y + 65 * alto / 160,
 124                 y + 55 * alto / 160,
 125                 y + 60 * alto / 160,
 126                 y + 70 * alto / 160,};
 127             g.fillPolygon(seja2X, seja2Y, 4);
 128 
 129             // pico 1
 130             g.setColor(new Color(241, 180, 37));
 131             int[] pico1X = {
 132                 x + 65 * ancho / 85,
 133                 x + 25 * ancho / 85,
 134                 x + 45 * ancho / 85,};
 135             int[] pico1Y = {
 136                 y + 110 * alto / 160,
 137                 y + 110 * alto / 160,
 138                 y + 130 * alto / 160,};
 139             g.fillPolygon(pico1X, pico1Y, 3);
 140 
 141             // pico 2
 142             g.setColor(new Color(245, 205, 109));
 143             int[] pico2X = {
 144                 x + 40 * ancho / 85,
 145                 x + 25 * ancho / 85,
 146                 x + 35 * ancho / 85,};
 147             int[] pico2Y = {
 148                 y + 125 * alto / 160,
 149                 y + 110 * alto / 160,
 150                 y + 130 * alto / 160,};
 151             g.fillPolygon(pico2X, pico2Y, 3);
 152 
 153 
 154             //ojo derecho
 155             g.setColor(Color.WHITE);
 156             g.fillOval(x + 20 * ancho / 85, y + 70 * alto / 160, 21 * ancho / 85, 35 * alto / 160);
 157 
 158             //pupila derecha
 159             g.setColor(new Color(39, 32, 128));
 160             g.fillOval(x + 25 * ancho / 85, y + 75 * alto / 160, 10 * ancho / 85, 20 * alto / 160);
 161 
 162             //ojo izq
 163             g.setColor(Color.WHITE);
 164             g.fillOval(x + 50 * ancho / 85, y + 70 * alto / 160, 21 * ancho / 85, 35 * alto / 160);
 165 
 166             //pupila izq
 167             g.setColor(new Color(39, 32, 128));
 168             g.fillOval(x + 55 * ancho / 85, y + 75 * alto / 160, 10 * ancho / 85, 20 * alto / 160);
 169 
 170         }
 171 
 172 
 173 
 174 
 175     }
 176 
 177     public void run() {
 178         for (;;) {
 179             incy(10);
 180             if (y > 610 || !visible) {
 181                 if (y >= 610) {
 182                     puntaje.vidas--;
 183                     if (puntaje.vidas == 0) {
 184                         //fin del juego
 185                     }
 186                 }
 187                 y = 0;
 188                 visible = true;
 189             }
 190             lienzo.repaint();
 191             try {
 192                 Thread.sleep((int) (Math.random() * 500 + 200));
 193             } catch (InterruptedException ex) {
 194                 Logger.getLogger(Cabeza.class.getName()).log(Level.SEVERE, null, ex);
 195             }
 196         }
 197 
 198 
 199     }
 200 }

Java/Programas/PinguinoGg/Cabeza.java (last edited 2010-10-28 11:43:07 by LorenaGuerrero)