ObjetoMovil.java
1
2
3
4
5 public class Tanque extends ObjetoGrafico implements Runnable {
6 private Lienzo lienzo;
7 private Frogger frogger;
8
9 public Tanque (int x, int y ,Frogger f,Lienzo l,int an, int bl ){
10 super (x,y,an,bl);
11 frogger = f;
12 lienzo = l;
13 }
14 public void run (){
15 while(frogger.getVisible()){
16 int posX = getPosX();
17
18 if ( frogger.getPosX() - posX > 0 ){
19 setPosX(posX + 10);
20 }
21 else{
22 setPosX (posX - 10);
23 }
24
25 if(Math.random() * 60 > 30 && frogger.getPosX() == getPosX()){
26 Bala bala = new Bala (getPosX()+30, getPosY() + 350, this ,lienzo, frogger,20,30);
27 bala.setVisible(true);
28 lienzo.add(bala);
29 Thread hiloBala = new Thread (bala);
30 hiloBala.start();
31 }
32
33 lienzo.repaint();
34 try {Thread.sleep(50);}catch(Exception e ){}
35 }
36 }
37
38
39
40
41
42 public void paint(Graphics g){
43 g.setColor(Color.black);
44 g.fillRect(getPosX() + (int) (getAncho()* 0.33) , getPosY()+ (int)(getAlto()*1.86), (int) (getAncho()* 0.44), (int)(getAlto()*0.52));
45 g.setColor(new Color(50,60, 70));
46 g.fillRect(getPosX(), getPosY()+ 435, getAncho(), (int)(getAlto()*0.079));
47 g.fillRect(getPosX()+ (int) (getAncho()* 0.33) , getPosY()+ (int)(getAlto()*1.80), (int)(getAncho()*0.44), (int)(getAlto()*0.079));
48 g.setColor(new Color(80,90, 100));
49 g.fillOval(getPosX(), getPosY()+ (int)(getAlto()*2.36), (int)(getAncho()*0.33), (int)(getAlto()*0.15));
50 g.fillOval(getPosX() + (int) (getAncho()* 0.66), getPosY()+ (int)(getAlto()*2.36), (int)(getAncho()*0.33), (int)(getAlto()*0.15));
51
52
53 }
54 }
CategoryJava | CategoryProgramacion