// TesteTiro CLASS /**31/05 * Desenha 2 navios no painel de posicao HORIZONTAL * e informa se foi atingido ou nao!! **/ import java.awt.Color; import java.awt.Container; import java.awt.Frame; import java.awt.Graphics; import java.awt.event.MouseAdapter; import java.awt.event.MouseEvent; import java.awt.event.WindowAdapter; import java.awt.event.WindowEvent; import java.util.ArrayList; import javax.swing.JFrame; import javax.swing.JPanel; public class TesteTiro extends JFrame{ Ponto pCor = new Ponto(); JPanel painel; NavioCarga navio1 = new NavioCarga(); NavioCarga navio2 = new NavioCarga(); NavioCarga navio3 = new NavioCarga(); int teste; int teste1; int teste2; int teste3; int teste4; int teste5; int numTiros=0; private ArrayList listaPontos = new ArrayList(); private ArrayList listaPontos1 = new ArrayList(); Color cor = Color.blue; public ArrayList getListaPontos() { return listaPontos; } public void setListaPontos(ArrayList listaPontos) { this.listaPontos = listaPontos; } public ArrayList getListaPontos1() { return listaPontos1; } public void setListaPontos1(ArrayList listaPontos1) { this.listaPontos1 = listaPontos1; } public TesteTiro(){ super("Jogos"); painel=new JPanel(); //painel.setBackground(Color.blue); painel.setLayout(null); Container c= getContentPane(); c.add(painel); this.addMouseListener(new meuEvento()); } public void paint(Graphics gg){ super.paint(gg); gg.setColor(cor); navio1.paintAviao(gg); navio2.paintAviao(gg); navio3.paintAviao(gg); teste=(Integer)navio1.getCoord().get(0); teste1=(Integer)navio1.getCoord().get(1); teste2=(Integer)navio2.getCoord().get(0); teste3=(Integer)navio2.getCoord().get(1); teste4=(Integer)navio3.getCoord().get(0); teste5=(Integer)navio3.getCoord().get(1); listaPontos.add(teste); listaPontos.add(teste1); listaPontos.add(teste2); listaPontos.add(teste3); listaPontos.add(teste4); listaPontos.add(teste5); for (int i = 0; i < listaPontos1.size(); i++) { Ponto p=(Ponto)listaPontos1.get(i); gg.setColor(Color.red); gg.fillRect(p.getX(),p.getY(),5,5); } } public class meuEvento extends MouseAdapter{ public void mousePressed(MouseEvent e){ Ponto p = new Ponto(); p.setX(e.getX()); p.setY(e.getY()); listaPontos1.add(p); int xx=teste+45; int yy=teste1+15; int xxx=teste2+45; int yyy=teste3+15; int cooNavio3X=teste4+45; int cooNavio3Y=teste5+15; if (teste<=e.getX() && (teste1<=e.getY()) && (xx>=e.getX()) && (yy>=e.getY())) { numTiros++; System.out.println("Navio kakaka atingido!!!"); if (numTiros==3) { System.out.println("Voce afundou o navio kakaka"); navio1.setCor(Color.red); numTiros=0; //repaint(); } }else { if (teste2<=e.getX() && (teste3<=e.getY()) && (xxx>=e.getX()) && (yyy>=e.getY())) { numTiros++; System.out.println("Navio blabla atingido!!!"); if (numTiros==3) { System.out.println("Voce afundou o navio blabla"); navio2.setCor(Color.red); numTiros=0; } }else { if (teste4<=e.getX() && (teste5<=e.getY()) && (cooNavio3X>=e.getX()) && (cooNavio3Y>=e.getY())) { numTiros++; System.out.println("Navio tititi atingido!!!"); if (numTiros==3) { System.out.println("Voce afundou o navio tititi"); navio3.setCor(Color.red); numTiros=0; } }else { System.out.println("Errou!!!"); } } } repaint(); } } public static void main(String[] args){ TesteTiro ttt = new TesteTiro(); ttt.setSize(500,400); ttt.setLocation(300,200); ttt.setVisible(true); ttt.repaint(); } } *********************** //Ponto CLASS import java.awt.Color; public class Ponto { private int x; private int y; private Color color; public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() { return y; } public void setY(int y) { this.y = y; } public Color getColor() { return color; } public void setColor(Color color) { this.color = color; } } *************************************** // NavioCarga CLASS import java.awt.Color; import java.awt.Graphics; import java.util.ArrayList; import javax.swing.JFrame; public class NavioCarga extends JFrame{ private int x=(int)(Math.random()*(300)); private int y=(int)(Math.random()*(200)); private Color cor = Color.blue; private ArrayList coord = new ArrayList(); public int getX() { return x; } public void setX(int x) { this.x = x; } public int getY() { return y; } public void setY(int y) { this.y = y; } public Color getCor() { return cor; } public void setCor(Color cor) { this.cor = cor; } public ArrayList getCoord() { return coord; } public void setCoord(ArrayList coord) { this.coord = coord; } public void afundado(){ } public void paintAviao(Graphics g){ //super.paint(g); g.setColor(cor); g.fillRect(this.x, this.y, 45,15); coord.add(x); coord.add(y); } }