EscuchaMouse.java

Categorías: CategoryJava | CategoryProgramacion

   1 /*
   2  * To change this template, choose Tools | Templates
   3  * and open the template in the editor.
   4  */
   5 package savetheearthsk;
   6 
   7 import java.awt.event.MouseEvent;
   8 import java.awt.event.MouseListener;
   9 import java.util.ArrayList;
  10 
  11 /**
  12  *Esta clase permite asignar procesos a la activacion del mouse en tiempo de ejecucion
  13  *@author Luisa Fernanda Rueda Herrera
  14  *@author George Sebastian Parra Macias
  15  */
  16 public class EscuchaMouse implements MouseListener {
  17 
  18     private boolean caminarb = false;
  19     /**
  20      * Atributo privado de tipo Lienzo que recibe el lienzo desde el Main
  21      */
  22     private Lienzo lienzo;
  23     /**
  24      * Atributo privado de tipo Pared (constante) que guarda un arreglo de Pared
  25      */
  26     private static Pared[] paredes;
  27     /**
  28      * Atributo privado de tipo Pared que guarda un arreglo de Pared
  29      */
  30     private Pared[] pared;
  31     /**
  32      * Atributo privado de tipo Puntaje que guarda el puntaje
  33      */
  34     private Puntaje puntaje;
  35     /**
  36      * Atributo privado que  guarda un arreglo de tipo Pared que funciona como Pared sur
  37      */
  38     private Pared[] paredes1;
  39     /**
  40      * Atributo privado que  guarda un arreglo de tipo Pared que funciona como Pared izquierda
  41      */
  42     private Pared[] paredes2;
  43     /**
  44      * Atributo privado que  guarda un arreglo de tipo Pared que funciona como Pared derecha
  45      */
  46     private Pared[] paredes3;
  47     /**
  48      * Atributo privado que guarda la calaveragg1 que se dispara
  49      */
  50     private Calaveragg1 calaveragg1;
  51     /**
  52      * Atributo privado que contiene el arreglo de calaveras (objetivos)
  53      */
  54     private ArrayList<Calaveragg1> calaveras;
  55     /**
  56      * Atributo privado que guarda el areglo de cañones
  57      */
  58     private Canon canon;
  59     /**
  60      * Atributo de tipo configuracion que recibe la configuracion
  61      */
  62     private Configuracion configuracion;
  63     /**
  64      * Atributo de tipo EscuchaMoverMouse que interactua con la clase para hacer funcionar el mouse
  65      */
  66     private EscuchaMoverMouse escuchaMoverMouse;
  67 /**
  68  * Constructor de  EscuchaMouse que recibe los parametros que corresponden a los atributos privados
  69  * @param l
  70  * @param pared
  71  * @param paredes1
  72  * @param paredes2
  73  * @param paredes3
  74  * @param calaveras
  75  * @param puntaje
  76  * @param canon
  77  * @param calaveragg1
  78  * @param config
  79  * @param escuchaMoverMouse
  80  */
  81     public EscuchaMouse(Lienzo l, Pared[] pared, Pared[] paredes1, Pared[] paredes2, Pared[] paredes3, ArrayList<Calaveragg1> calaveras, Puntaje puntaje, Canon canon, Calaveragg1 calaveragg1, Configuracion config, EscuchaMoverMouse escuchaMoverMouse) {
  82         lienzo = l;
  83         this.puntaje = puntaje;
  84         this.pared = pared;
  85         this.paredes1 = paredes1;
  86         this.paredes2 = paredes2;
  87         this.paredes3 = paredes3;
  88         this.calaveras = calaveras;
  89         this.canon = canon;
  90         this.calaveragg1 = calaveragg1;
  91         this.configuracion = config;
  92         this.escuchaMoverMouse = escuchaMoverMouse;
  93     }
  94 /**
  95  * Metodo al dar click
  96  * @param e recibe un MouseEvent
  97  */
  98     public void mouseClicked(MouseEvent e) {
  99     }
 100 /**
 101  * Metodo al mantener presionado el mouse
 102  * @param e recibe un MouseEvent
 103  */
 104     public void mousePressed(MouseEvent e) {
 105         if (configuracion.mouse == false) {
 106             switch (canon.getDireccion()) {
 107                 case 1:
 108                     this.calaveragg1 = new Calaveragg1(canon.x + 12, canon.y - 65, 70, 70, Constantes.colores[(int) (Math.random() * 3)], paredes, paredes1, paredes2, paredes3, lienzo, calaveras, puntaje, configuracion);
 109                     calaveragg1.irCentro();
 110                     escuchaMoverMouse.setCalavera(calaveragg1);
 111 
 112                     break;
 113                 case 0:
 114                     this.calaveragg1 = new Calaveragg1(canon.x - 50, canon.y - 30, 70, 70, Constantes.colores[(int) (Math.random() * 3)], paredes, paredes1, paredes2, paredes3, lienzo, calaveras, puntaje, configuracion);
 115                     calaveragg1.irIzquierda();
 116                     escuchaMoverMouse.setCalavera(calaveragg1);
 117                     break;
 118                 case 2:
 119                     this.calaveragg1 = new Calaveragg1(canon.x + 90, canon.y - 20, 70, 70, Constantes.colores[(int) (Math.random() * 3)], paredes, paredes1, paredes2, paredes3, lienzo, calaveras, puntaje, configuracion);
 120                     calaveragg1.irDerecha();
 121                     escuchaMoverMouse.setCalavera(calaveragg1);
 122                     break;
 123             }
 124 
 125             calaveras.add(calaveragg1);
 126             lienzo.add(calaveragg1);
 127             lienzo.repaint();
 128         }
 129     }
 130 /**
 131  * Metodo al soltar el mouse
 132  * @param e Recibe un MouseEvent
 133  */
 134     public void mouseReleased(MouseEvent e) {
 135         if (configuracion.mouse == false) {
 136             Thread hiloCalaveragg1 = new Thread(calaveragg1);
 137             if (calaveragg1 == null) {
 138             } else {
 139                 hiloCalaveragg1.start();
 140 
 141             }
 142 
 143             lienzo.repaint();
 144             caminarb = false;
 145         }
 146     }
 147 
 148     public void mouseEntered(MouseEvent e) {
 149       
 150 
 151 
 152     }
 153 
 154     public void mouseExited(MouseEvent e) {
 155        
 156 
 157     }
 158 }

Java/Programas/SaveTheEarthII/EscuchaMouse.java (last edited 2010-10-28 12:15:50 by GeorgeParra)