Programacion java
Enviado por tinajerotz • 13 de Marzo de 2013 • 1.047 Palabras (5 Páginas) • 447 Visitas
import java.awt.*; //para el frame y demas
import java.awt.event.*; //para los eventos
import java.util.*; //para el random
public class Ladrillitos extends Frame implements WindowListener, MouseListener, MouseMotionListener, Runnable {
Panel panel= new Panel();
int tx=220; //es la ubicacion en x de la barra donde rebota la pelota
int ty; //es la ubicacion en y de la barra donde rebota la pelota
int px; //es la ubicacion de la pelota en x
int py; //es la ubicacion de la pelota en y
int score=0; //son los puntos
int vidas=4; //es la cantidad de vidas
float incX=1;
float incY=1;
//incX y incY son los que dicen si la pelota tiene que camboiar de rumbo dependiendo si rebota en algun lado
boolean [] filas= new boolean[30]; //filas sirve para saber si la pelota entro dentro de las coordenasdas de un ladrillito
boolean inicio= false;
Random r= new Random();
/** Creates a new instance of Ladrillos */
public Ladrillitos() {
setSize(510, 400); //le damos el tamaño a la pantalla
add(panel); //agregamos el panel
panel.setBackground(Color.black); //lo pintamos de negro
panel.addMouseMotionListener(this); //le decimos que escuche el evento de mover el mouse
panel.addMouseListener(this); //le decimos que escuche los click del mouse
px= 260;
py = this.getHeight()-60;
addWindowListener(this);//le decimos que escuche si uno cierra la ventana
for (int x=0; x!=30; x++){
filas[x]=true;//inicializamos las filas y las ponemos a todas en false
}
}
public static void main (String [] Args){
Ladrillitos arkanoid= new Ladrillitos();
arkanoid.show();
arkanoid.run();//llamamos al thread
}
public void dibujar(Color [] colores){
Graphics g = panel.getGraphics();
g.clearRect(0,0, this.getWidth(), this.getHeight()); //borra toda la pantalla
g.setColor(Color.yellow); //le damos color a la pelotita
g.fillOval((int)px,(int)py, 10,10); //hacemos la pelotita
g.setColor(Color.red); //le damos color rojo al contorno de la pelotita
g.drawOval((int)px,(int)py, 10,10); //ahora hacemos el contorno
g.fillRect((int)tx,(int) ty, 80, 20); //hacemos la barra
g.setColor(Color.white); //le damos el color al contorno de la barra
g.drawRect((int)tx,(int) ty, 80, 20); //ahora la hacemos el contorno
g.setColor(Color.green); //le damos el color el texto
g.drawString("Ladrillitos", 10, 15);
g.drawString("Vidas:", 275, 15);
g.setColor(Color.orange);
g.drawString("sorbo@arnet.com.ar", 120, 15);
g.setColor(Color.green); //le damos el color el texto
switch(vidas){//muestra la cantidad de vida con unos rectangulitos arriba de la pantalla
//si las vidas son 4 significa que recien eempieza el juego y aparece un mensaje
case 4: g.drawString("Bienvenidos", 230, 200);
g.drawString("Presione el boton del derecho del mouse para comenzar", 100, 220);
g.setColor(Color.white);
g.fillRect(320,5,15,10);
g.fillRect(340,5,15,10);
g.fillRect(360,5,15,10);
g.setColor(Color.red);
g.drawRect(320,5,15,10);
g.drawRect(340,5,15,10);
g.drawRect(360,5,15,10);
break;
//si las vidas son 3 muestra 3 rectangulitos arriba
case 3: g.setColor(Color.white);
g.fillRect(320,5,15,10);
g.fillRect(340,5,15,10);
g.fillRect(360,5,15,10);
g.setColor(Color.red);
g.drawRect(320,5,15,10);
g.drawRect(340,5,15,10);
g.drawRect(360,5,15,10);
break;
//si las vidas son 2 muestra 2 rectangulitos arriba
case 2: g.setColor(Color.white);
g.fillRect(320,5,15,10);
g.fillRect(340,5,15,10);
g.setColor(Color.red);
g.drawRect(320,5,15,10);
g.drawRect(340,5,15,10);
break;
//si las vidas es 1 muestra 1 rectangulito arriba
case 1: g.setColor(Color.white);
g.fillRect(320,5,15,10);
g.setColor(Color.red);
g.drawRect(320,5,15,10);
break;
//si las vidas son 0 te muestra el cartelito de GAME OVER
case 0: g.drawString("GAME OVER", 230, 200);
g.drawString("Presione el boton del derecho del mouse para volver a jugar", 100, 220);
break;
}
g.setColor(Color.white); //color del texto
g.drawString("Puntuacion:", 400, 15);
g.drawString(String.valueOf(score), 470, 15); //te muestra la cantidad de puntos
if (score==300){
g.drawString("Ganaste!!!", 230, 200);
g.drawString("Calculo que dabes ser el hombre mas feliz del MUNDO, jaja", 70, 220);
g.drawString("Presiona el boton del derecho del mouse para volver a jugar", 100, 240);
vidas=4; //te reinicializa las vidas
}
//Ahora lo lindo!!! dibujamos los ladrillitos de colores de arriba
Graphics [] gl = new Graphics [30];
//inicializamos todo
int xp= 0;
int yp= 30;
int c=0; //este contador nos dice cuando tenemos que dibujar en la sig fila
for (int x=0; x!=30; x++){
gl[x]= panel.getGraphics(); //inicializamos el graficador
c++; //le sumamos uno al contador
if (c==11){ //porque son 10 ladrillitos por columna
xp=0;
yp=50; //hacemos que la proxima fila sea 20 pixeles mas
...