DOWNLOAD DOS EXEMPLOS AQUIOla pessoal!Nesse tutorial iremos aprender uma das maneiras de como usar os Eventos do Mouse, e muito semelhante ao tutorial anterior de Eventos do Teclado, para o nosso tutorial de hoje utilizaremos duas Interfaces: MouseListener e MouseMotionListener. (Criem um pacote tutorial13 no nosso projeto JAVAGAMES2D com o arquivo Game.java)Muito bem....Vamos la!A primeira coisa a ser feita e implementar as interfaces na nossa Classe Game.javapublic class Game extends JFrame implements MouseListener, MouseMotionListener{Lembrem de adicionar a implementacao dos metodos dessas interfaces, observem que podemos implementar quantas interfaces quisermos, bastando apenas separar por virgula, entao e possivel usar eventos de teclado e mouse num mesmo jogo...Agora veja os metodo que serao implementados no final da Classe Game.java:@Override public void mouseClicked(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseEntered(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseExited(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mousePressed(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseReleased(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseDragged(MouseEvent e) { // TODO Auto-generated method stub } @Override public void mouseMoved(MouseEvent e) { // TODO Auto-generated method stub }Recomendo apagar esses comentarios gerados (caso voce tenha mandado gerar automaticamente), Muito bem... vamos la....Os metodos mouseMoved() e mouseDragged() sao da interface MouseMotionsListener, e os outros metodos sao de MouseListener, bem... vejamos para que serve cada um desses eventos:mouseMoved(): e acionado todo vez que voce mover o mouse.mouseDragged(): e acionado toda vez que voce clica segura e arrasta.mouseReleased(): e acionado quando voce libera o clique.mousePressed(): e acionado no momento em que o clique e pressionado e mantamos pressionado.mouseExited(): e acionado quando o cursor e retirado de cima de um elemento.mouseEntered(): e acionado quando o cursor ficar sobre um elemento.mouseClicked(): e acionando quando clicamos com o mouse.Agora a proxima etapa e adicionar um escutador para esses eventos no nosso JFrame dentro do metodo inicializar(), se nao adicionarmos esses escutadores nenhum desses metodos serao executados quando os eventos forem acionados (lembrando, o escutador e que manda executar esses metodos quando o evento for acionado).Observe o codigo abaixo:public void inicializar() { setTitle("Titulo do Jogo!"); setSize(janelaW, janelaH); setResizable(false); setDefaultCloseOperation(EXIT_ON_CLOSE); setLayout(null); setVisible(true); backBuffer = new BufferedImage(janelaW, janelaH, BufferedImage.TYPE_INT_RGB); //AQUI ESTAMOS ADICIONANDO OS ESCUTADORES DE EVENTOS DO MOUSE addMouseListener(this); addMouseMotionListener(this); }Muito simples! nao e?Agora vamos ver um exemplo de uso de eventos do mouse, no nosso exemplo iremos mover uma mira, exibir as coordenadas do cursor no JFrame e quando clicarmos exibir uma mensagem!(LEIAM OS COMENTARIOS DO CODIGO COM ATENCAO)import java.awt.*;import java.awt.event.KeyEvent;import java.awt.event.KeyListener;import java.awt.event.MouseEvent;import java.awt.event.MouseListener;import java.awt.event.MouseMotionListener;import java.awt.image.BufferedImage;import java.io.File;import javax.swing.ImageIcon;import javax.swing.JFrame;import javax.swing.JOptionPane;public class Game extends JFrame implements MouseListener, MouseMotionListener{ BufferedImage backBuffer; int FPS = 30; int janelaW = 500; int janelaH = 500; //VARIAVEIS QUE VAMOS UTILIZAR //UMA IMAGEM PARA REPRESENTAR A MIRA //E AS SUAS COORDENADAS X e Y //NAO SE ESQUECA DE OLHAR O METODO desenharGraficos() //e os metodos de eventos que e onde iremos tratar algumas coisas ImageIcon mira = new ImageIcon("src/tutor13/mira.png"); int xMira; int yMira; public void atualizar() { } public void desenharGraficos() { Graphics g