ClubEnsayos.com - Ensayos de Calidad, Tareas y Monografias
Buscar

Programacion java

tinajerotz13 de Marzo de 2013

1.047 Palabras (5 Páginas)480 Visitas

Página 1 de 5

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 abajo que la anterior

}//fin del if c==11

if (c==21){

xp=0;

yp=70; //hacemos que la proxima fila sea 20 pixeles mas abajo que la anterior

}// fin del if c==21

gl[x].setColor(colores[x]); //le asignamos los colores a cada uno de los ladrillitos

if (filas[x]==true){ //si es true pintamos los ladrillitos sino borramos el espacio

gl[x].fillRect(xp,yp,48,15);

gl[x].setColor(Color.white);

gl[x].drawRect(xp,yp,48,15);

}//fin del if

else{

g.clearRect(xp,yp, 48, 15);

}//fin del else

xp+=50; //hacemos que se corra 50 px para la derecha para que pueda seguir agregando por columna

}//fin del for

}//fin del dibujar()

public void mover(){

if (inicio==false){

}

else{

//inicializamos los ejes de la pelotita

px += 5*incX;

py += 5*incY;

}

if (py>this.getHeight()){ //si es mas bajo que la barra

vidas--;//le restamos una vida

px= 260;//inicializamos el eje x de la pelotita

tx=220;//inicializamos el eje x de la barra

py = this.getHeight()-60; //inicializamos el eje y de la pelotita

inicio=false; //le asignamos a inicio el false

}

//para que rebote en las paredes y el piso

if ((px<0)||(px>this.getWidth()-20)){

incX *= -1; //multiplicarlo por -1 al eje x hace que cambie totalmente el rumbo de la pelotita

}

if (py<20){

incY *= -1; //multiplicarlo por -1 al eje y hace que cambie totalmente el rumbo de la pelotita

}

//para que rebote en la barra

if ((py==ty)&&(tx<px)&&(px<tx+80)){

incY *=-1;

//paralos rebotes en las esquinas de la barra

if ((px<tx+20)&&(incX>0)){

incX *=-1.5;

}

if ((px>tx+60)&&(incX<0)){

incX*=-1.5;

}

}

//verificamos donde pasa la pelotita y si pega en un ladrillito

//lo hace dasaparecer y cambia el rumbo(o se rebota))

if ((py<74) && (py>56)){

if (px<48){

if (filas[20]==true){

filas[20]=false;

incY*=-1;

score+=10;;

...

Descargar como (para miembros actualizados) txt (12 Kb)
Leer 4 páginas más »
Disponible sólo en Clubensayos.com