Bala.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.logging.Level;
  11 import java.util.logging.Logger;
  12 import sun.java2d.loops.FillRect;
  13 /*
  14  *Se crea la clase Bala
  15  */
  16 public class Bala extends ObjetoGrafico implements Runnable {
  17 
  18     private Lienzo lienzo;
  19     private Cabeza[][] cabeza;
  20     private PuntajeVidas puntaje;
  21 
  22     /*
  23      *Se añade la bala a lienzo para mirarlo en su ejecucion
  24      */
  25     public Bala(int x, int y, int ancho, int alto, Lienzo li, Cabeza[][] cabeza,PuntajeVidas puntaje) {
  26         super(x, y, ancho, alto);
  27         lienzo = li;
  28         this.cabeza = cabeza;
  29         this.puntaje = puntaje;
  30 
  31     }
  32     /*
  33      *Se crea la bala con sus respectibas cordenadas
  34      */
  35 
  36     public void paint(Graphics g) {
  37 
  38         if (visible) {
  39 
  40          
  41             g.setColor(new Color(50, 56, 58));
  42             g.fillOval(x + 0 * ancho / 140, y + 0 * alto / 180, 140 * ancho / 140, 70 * alto / 180);
  43 
  44 
  45             // casquito
  46             g.setColor(new Color(167, 177, 182));
  47             int[] casco1X = {
  48                 x + 0 * ancho / 130,
  49                 x + 0 * ancho / 130,
  50                 x + 130 * ancho / 130,
  51                 x + 130 * ancho / 130,};
  52             int[] casco1Y = {
  53                 y + 40 * alto / 180,
  54                 y + 180 * alto / 180,
  55                 y + 180 * alto / 180,
  56                 y + 40 * alto / 180,};
  57             g.fillPolygon(casco1X, casco1Y, 4);
  58 
  59             //borde del casquito
  60             g.setColor(new Color(4, 4, 4));
  61             int[] casco2X = {
  62                 x + 0 * ancho / 130,
  63                 x + 0 * ancho / 130,
  64                 x + 130 * ancho / 130,
  65                 x + 130 * ancho / 130,};
  66             int[] casco2Y = {
  67                 y + 150 * alto / 180,
  68                 y + 180 * alto / 180,
  69                 y + 180 * alto / 180,
  70                 y + 150 * alto / 180,};
  71             g.fillPolygon(casco2X, casco2Y, 4);
  72 
  73 
  74         }
  75 
  76 
  77     }
  78 
  79     /*
  80      *Se crea el movimiento de la bala
  81      */
  82     public void run() {
  83 
  84         for (;;) {
  85 
  86             decy(10);
  87             if (y > 800) {
  88                 y = 800;
  89 
  90             }
  91             /*Se crea la colicion de cabeza con bala
  92              *haciendo q la cabeza desaparesca */
  93             for (int i = 0; i < cabeza.length; i++) {
  94                 for (int j = 0; j < cabeza[i].length; j++) {
  95                     if (this.colisiona(cabeza[i][j])) {
  96                         cabeza[i][j].setVisible(false);
  97                         setVisible(false);
  98                        puntaje.add(10);
  99                     }
 100 
 101                 }
 102 
 103             }
 104             /*
 105              *Este es el "repaint" de disparo de las balas
 106              *el cual usa el try y el catch
 107              */
 108             lienzo.repaint();
 109             try {
 110                 Thread.sleep(100);
 111             } catch (InterruptedException ex) {
 112                 Logger.getLogger(Bala.class.getName()).log(Level.SEVERE, null, ex);
 113             }
 114         }
 115     }
 116 
 117     /*
 118      *Se crea un constructor para la cabeza
 119      */
 120     private boolean colisiona(Cabeza[][] cabeza) {
 121         throw new UnsupportedOperationException("Not yet implemented");
 122     }
 123 }

Java/Programas/PinguinoGg/Bala.java (last edited 2010-10-28 11:41:13 by LorenaGuerrero)