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.Color;
   8 import java.awt.event.MouseEvent;
   9 import java.awt.event.MouseListener;
  10 import java.io.FileInputStream;
  11 import java.io.FileNotFoundException;
  12 import java.io.IOException;
  13 import java.util.ArrayList;
  14 import java.util.logging.Level;
  15 import java.util.logging.Logger;
  16 import sun.audio.AudioPlayer;
  17 import sun.audio.AudioStream;
  18 
  19 /**
  20  * @author lina Maria Angelica Bermudez Leon
  21  * @author  Mario Nicolas Arcila Escobar
  22  */
  23 /**
  24  * 
  25  *Esta clase es aquella que permite utilizar las acciones del mouse sobre el marco
  26  */
  27 
  28 public class EscuchaMouse implements MouseListener {
  29 
  30     private Calaveragg1 calavera;
  31     private Cañon cañon;
  32     private Lienzo lienzo;
  33     private ArrayList<Calaveragg1> calaveras;
  34     private static Pared[] paredes;
  35     private Pared[] pared;
  36     private Puntaje puntaje;
  37     private Pared[] paredes1;
  38     private Pared[] paredes2;
  39     private Pared[] paredes3;
  40     private EscuchaMoverMouse escuchaMoverMouse;
  41     private AudioStream disparo;
  42     private Configuraciones configuraciones = new Configuraciones();
  43     Color c1;
  44     Color c2;
  45     Color c3;
  46 
  47   /**
  48    * * @param calavera
  49      * @param cañon es el objeto grafico que se le asigna el movimiento
  50      * @param lienzo es el objeto grafico en el que se muestran las clases
  51      * @param pared es el objeto grafico que no se le asigna movimiento
  52      * @param puntaje es el que acomula y muestra el puntaje que lleva el usuario
  53      * @param paredes1 es el objeto grafico que no se le asigna movimiento
  54      * @param paredes2 es el objeto grafico que no se le asigna movimiento
  55      * @param paredes3 es el objeto grafico que no se le asigna movimiento
  56      * @param escuchaMoverMouse esta clase es la que eschucha las acciones del mouse
  57      * @param configuraciones esta clase permite asignar los cambios dados 
  58    */
  59     public EscuchaMouse(Calaveragg1 calavera, Cañon cañon, Lienzo lienzo, ArrayList<Calaveragg1> calaveras, Pared[] pared, Puntaje puntaje, Pared[] paredes1, Pared[] paredes2, Pared[] paredes3, EscuchaMoverMouse escuchaMoverMouse, Configuraciones configuraciones) {
  60         this.calavera = calavera;
  61         this.cañon = cañon;
  62         this.lienzo = lienzo;
  63         this.calaveras = calaveras;
  64         this.pared = pared;
  65         this.puntaje = puntaje;
  66         this.paredes1 = paredes1;
  67         this.paredes2 = paredes2;
  68         this.paredes3 = paredes3;
  69         this.escuchaMoverMouse = escuchaMoverMouse;
  70         this.configuraciones = configuraciones;
  71 
  72 
  73     }
  74 
  75     /** Metodo al dar click
  76      *
  77      *
  78      */
  79     public void mouseClicked(MouseEvent e) {
  80     }
  81 
  82     /**
  83      * Metodo al mantener presionado el mouse
  84      *
  85      */
  86     public void mousePressed(MouseEvent e) {
  87 
  88       
  89 
  90 
  91 
  92             if (Main.archivosCar == true) {
  93                 calavera = new Calaveragg1(cañon.x + 5, cañon.y - 77, 85, 85, configuraciones.colores[(int) (Math.random() * 3)], paredes, lienzo, calaveras, puntaje);
  94                 escuchaMoverMouse.setCalavera(calavera);
  95                 calaveras.add(calavera);
  96                 lienzo.add(calavera);
  97                 calavera.caminanB = true;
  98                 lienzo.repaint();
  99             } else {
 100                 System.err.println("No ah cargado");
 101                 calavera = new Calaveragg1(cañon.x + 5, cañon.y - 77, 85, 85, configuraciones.color1, paredes, lienzo, calaveras, puntaje);
 102                 escuchaMoverMouse.setCalavera(calavera);
 103                 calaveras.add(calavera);
 104                 lienzo.add(calavera);
 105                 calavera.caminanB = true;
 106                 lienzo.repaint();
 107             }
 108 
 109 
 110       
 111 
 112 
 113 
 114     }
 115 
 116     /**
 117      * Metodo al soltar el mouse
 118      *
 119      */
 120     public void mouseReleased(MouseEvent e) {
 121 
 122      
 123 
 124 
 125 
 126             Thread hiloCalaveragg1 = new Thread(calavera);
 127             try {
 128                 disparo = new AudioStream(new FileInputStream("cañon.wav"));
 129                 // Create an AudioStream object from the input stream.
 130 
 131             } catch (FileNotFoundException ex) {
 132                 Logger.getLogger(EscuchaMouse.class.getName()).log(Level.SEVERE, null, ex);
 133             } catch (IOException ex) {
 134                 Logger.getLogger(EscuchaMouse.class.getName()).log(Level.SEVERE, null, ex);
 135             }
 136 
 137             AudioPlayer.player.start(disparo);
 138             if (calavera == null) {
 139             } else {
 140                 hiloCalaveragg1.start();
 141             }
 142             lienzo.repaint();
 143        
 144 
 145     }
 146 
 147     public void mouseEntered(MouseEvent e) {
 148     }
 149 
 150     public void mouseExited(MouseEvent e) {
 151     }
 152 }

Java/Programas/SaveTheEarth/EscuchaMouse.java (last edited 2010-10-28 11:23:07 by Nicolas Arcila)