Você está na página 1de 34

1

Manual del programador








Programacin Orientada a Objetos






Guadalupe Martnez Rangel



30 de mayo de 2012











2
ndice de clases
Jerarqua de la clase
Esta lista de herencias esta ordenada aproximadamente por orden alfabtico:
Comida ..................................................................................................................................................... 5
Fi ..................................................................................................................................................... 17
FishGreen ........................................................................................................................................ 19
FishYellow ...................................................................................................................................... 21

Contador ................................................................................................................................................... 7
Cronometro .............................................................................................................................................. 8
Escenario ................................................................................................................................................ 10
Hoja ........................................................................................................................................................ 23
Hoyo ....................................................................................................................................................... 24
Menu ...................................................................................................................................................... 25
Mountain ................................................................................................................................................ 27
Obstaculo................................................................................................................................................ 28
Penguin ................................................................................................................................................... 29
Texto ...................................................................................................................................................... 32
3
ndice de clases
Lista de clases
Lista de las clases, estructuras, uniones e interfaces con una breve descripcin:
Comida ................................................................................................................................................. 5
Contador .............................................................................................................................................. 7
Cronometro ......................................................................................................................................... 8
Escenario ............................................................................................................................................ 10
Fish ..................................................................................................................................................... 17
FishGreen .......................................................................................................................................... 19
FishYellow ......................................................................................................................................... 21
Hoja .................................................................................................................................................... 23
Hoyo ................................................................................................................................................... 24
Menu .................................................................................................................................................. 25
Mountain ............................................................................................................................................ 27
Obstaculo ........................................................................................................................................... 28
Penguin .............................................................................................................................................. 29
Texto ................................................................................................................................................... 32

4
Indice de archivos
Lista de archivos
Lista de todos los archivos con descripciones breves:
Comida.java ....................................................................................................................................... 33
Contador.java .................................................................................................................................... 33
Cronometro.java ............................................................................................................................... 33
Escenario.java ................................................................................................................................... 33
Fish.java ............................................................................................................................................. 33
FishGreen.java .................................................................................................................................. 33
FishYellow.java ................................................................................................................................. 34
Hoja.java ............................................................................................................................................ 33
Hoyo.java ........................................................................................................................................... 34
Menu.java .......................................................................................................................................... 34
Mountain.java ................................................................................................................................... 34
Obstaculo.java ................................................................................................................................... 34
Penguin.java ...................................................................................................................................... 34
Texto.java .......................................................................................................................................... 34

5
Documentacin de las clases
Referencia de la Clase Comida
Diagrama de herencias de Comida

Mtodos pblicos
Comida ()
int regresaP ()
abstract void mover ()
Atributos protegidos
int puntos
int dx
int dy = 6
int linea
int numeroLineas = 6

Descripcin detallada
Write a description of class Comida here.
Autor:
(your name)
Versin:
(a version number or a date)

Documentacin del constructor y destructor
Comida.Comida ()
Constructor para la clase abstracta Comida
{
int tamX;
int tamY;
tamY=300;
tamX=((600/numeroLineas)*linea)-((300/numeroLineas)*linea+150);
if(tamX!=0)
dx=dy/(tamY/tamX);
else
dx=0;

}

6
Documentacin de las funciones miembro
abstract void Comida.mover ()[pure virtual]
Metodo abstracto mover, para que se implemnentado por las demas subclases
Implementado en Fish, FishYellow y FishGreen.
int Comida.regresaP ()
Regresa los puntos que da el pez
Devuelve:
puntos que tiene cada pez
{
return puntos;
}

Documentacin de los datos miembro
int Comida.dx[protected]
int Comida.dy = 6[protected]
int Comida.linea[protected]
int Comida.numeroLineas = 6[protected]
int Comida.puntos[protected]

La documentacin para esta clase fue generada a partir del siguiente fichero:
Comida.java

7
Referencia de la Clase Contador
Mtodos pblicos
Contador ()
void actualiza (int valorN)
void actualizaV (int valorV)

Descripcin detallada
Clase Contador representa un conatdor
Autor:
Guadalupe Mtz. Rangel
Versin:
06 de mayo de 2012

Documentacin del constructor y destructor
Contador.Contador ()
Constructor para inicializar el valor del contador
{
valor=0;
super.setImage(new GreenfootImage(String.valueOf(valor),25,
java.awt.Color.WHITE,java.awt.Color.BLACK));
}

Documentacin de las funciones miembro
void Contador.actualiza (int valorN)
Actualiza el valor del contador de puntos valorN numero de puntos
{
valor=valorN;
super.setImage(new GreenfootImage(String.valueOf(valor),25,java.awt.Color.WHITE,
java.awt.Color.BLACK));
}
void Contador.actualizaV (int valorV)
Actualiza el valor del contador de vidas valorV numero de vidas
{
valor=valorV;
super.setImage(new GreenfootImage(String.valueOf(valor),25,java.awt.Color.WHITE,
java.awt.Color.BLACK));
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Contador.java

8
Referencia de la Clase Cronometro
Mtodos pblicos
Cronometro ()
void act ()
void inicializa ()
void actualizaCrono ()
void modifCont ()

Descripcin detallada
Clase que representa un cronometro
Autor:
(Programacion Orientada A Objetos - Gonzalez Donat - Neri Andriano)
Versin:
(9/05/12)

Documentacin del constructor y destructor
Cronometro.Cronometro ()
Constructor para la clase Cronometro
{
cont = null;
this.setImage(new GreenfootImage(
" Tiempo ",
30,java.awt.Color.WHITE,
java.awt.Color.BLACK));
}

Documentacin de las funciones miembro
void Cronometro.act ()
Metodo que se encarga de mandar llamar a las actualizaciones de los valores de los contadores
{
Escenario mundo;
mundo=(Escenario)getWorld();
if(mundo.nivel()==0)
valor=130;
if(mundo.nivel()==1||mundo.nivel()==2)
valor=230;
if(cont == null)
this.inicializa();
this.actualizaCrono();
}
void Cronometro.actualizaCrono ()
Actualiza el cronometro cada segundo
{

cont2 = new Date();
9
this.setImage(new GreenfootImage(" Tiempo "+
String.valueOf(valor-(cont2.getTime() -
cont.getTime())/1000)+" "
,30,java.awt.Color.WHITE ,java.awt.Color.BLACK));
}
void Cronometro.inicializa ()
Se encarga de inicializar el contador para tener una referencia de tiempo inicial
{
cont = new Date();
}
void Cronometro.modifCont ()
Hace el contador nulo para que vuelva a ser inicializado.
{
cont=null;
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Cronometro.java

10
Referencia de la Clase Escenario
Mtodos pblicos
Escenario ()
void act ()
void actualizaPuntos (int p)
void disminuyeVida ()
void menu (int b)
void jugar (int b)
void scroll ()
void nivel3 ()
void remove ()
void ayuda (int b)
void creditos (int b)
void cambiaOpcion (int opc)
void apareceMontaa ()
void aparecePeces ()
void apareceCubos ()
void apareceHoyo ()
boolean dimeNivel ()
int nivel ()
void moverPeces ()
int vidas ()
Atributos pblicos estticos
static final int lineas = 6
static final int tamy = 300
static final int dy = 6

Descripcin detallada
Clase Escenario representa el escenario del juego
Autor:
Poul Henriksen Guadalupe Mtz. Rangel
Versin:
29 de abril de 2012

Documentacin del constructor y destructor
Escenario.Escenario ()
Constructor para el escenario del juego
{
super(600, 400, 1);
puntos=0;
vidas=3;
nivel=0;
opcion=0;
activo=1;
act();
11
}

Documentacin de las funciones miembro
void Escenario.act ()
Programa principal del escenario
{
switch(opcion)
{
case 0:
menu(activo);
break;
case 1:
jugar(activo);
break;
case 2:
ayuda(activo);
break;
case 3:
creditos(activo);
break;
}
}
void Escenario.actualizaPuntos (int p)

*Actualiza el contador de los puntos
puntos es el valor que le sera sumado a los puntos
{
puntos=puntos+p;
cuentaP.actualiza(puntos);
}
void Escenario.apareceCubos ()
Agrega al mundo los cubos alearoriamente
{

int lineaCubos;
int a;
int yp;
int xp;
if(cont%50==0)
{
lineaCubos=Greenfoot.getRandomNumber(5)+1;
yp=100;
xp=50*lineaCubos+150;
a= Greenfoot.getRandomNumber(3);
Obstaculo cubo=new Obstaculo(lineaCubos);
addObject(cubo,xp,yp);
}
}
void Escenario.apareceHoyo ()
Agrega hoyos
{
int a;
int y;
int x;
if(cont%50==0)
{
x= Greenfoot.getRandomNumber(550)+25;
12
y= Greenfoot.getRandomNumber(250)+150;
Hoyo hoyo=new Hoyo();
addObject(hoyo,x,y);

}
}
void Escenario.apareceMontaa ()
Agrega montaas en el mundo
{
int xi1;
int xi2;
int yi=100;
xi1=150;
xi2=450;
if(cont%5==0)
{
addObject(new Mountain(0),xi1,yi);
addObject(new Mountain(6),xi2,yi);
}
}
void Escenario.aparecePeces ()
Agrega al mundo peces aleatoriamente
{

int lineaPeces;
int a;
int yp;
int xp;
if(cont%50==0)
{
lineaPeces=Greenfoot.getRandomNumber(5)+1;
yp=100;
xp=50*lineaPeces+150;
a= Greenfoot.getRandomNumber(3);
switch(a)
{
case 0:
{
FishGreen fishGreen = new FishGreen(lineaPeces);
addObject(fishGreen,xp, yp);
}
break;
case 1:
{
FishYellow fishyellow = new FishYellow(lineaPeces);
addObject(fishyellow,xp, yp);
}
break;
case 2:
{
Fish fish = new Fish(lineaPeces);
addObject(fish, xp,yp);
}
break;
}
}
}
void Escenario.ayuda (int b)
Crea la ayuda del juego
{
if(b==1)
{
GreenfootImage creditos=new GreenfootImage("ayuda.png");
13
creditos.scale(600,400);
setBackground(creditos);
regresar=new Menu(0);
addObject(regresar,220,370);
activo=0;
}
}
void Escenario.cambiaOpcion (int opc)
Cambia la opcion del actua opcion a realizar
{
opcion=opc;
activo=1;
}
void Escenario.creditos (int b)
Crea los creditos
{
if(b==1)
{
GreenfootImage creditos=new GreenfootImage("creditos.png");
creditos.scale(600,400);
setBackground(creditos);
regresar= new Menu(0);
addObject(regresar, 518, 370);
activo=0;
}
}
boolean Escenario.dimeNivel ()
Regresa el estado del nivel
Devuelve:
terminaNivel indica si el nivel termino
{
return terminaNivel;
}
void Escenario.disminuyeVida ()
Actualiza el contador de vidas y muestra mensaje si las vidas son igual a cero
{
vidas=vidas-1;
contador.actualizaV(vidas);
if(vidas==0&&nivel==0||nivel==1)
{
mensaje=new Texto("PERDISTE!!!");
addObject(mensaje,250,200);
Greenfoot.playSound("lose.WAV");
terminaNivel=false;
Greenfoot.delay(100);
removeObject(mensaje);
remove();
cambiaOpcion(0);
}
}
void Escenario.jugar (int b)
Agrega al mundo los objetos que se repiten en cada nivel y cambia de nivel
{
cont++;
if( b == 1)
{
14
terminaNivel=false;
GreenfootImage background = new GreenfootImage(800, 400);
scrollingImage = getScrollingImage(800, 400);
background.drawImage(scrollingImage, 0, 0);
setBackground(background);
Penguin penguin = new Penguin();
addObject(penguin, 300, 350);
Hoja hoja1 = new Hoja();
addObject(hoja1, 299,51);

vidas=3;
contador=new Contador(); //se crea un nuevo contador
addObject(contador,100,50); //se agrega un contador al mundo
contador.actualizaV(vidas); //se actualiza el valor del contador

cuentaP=new Contador();
addObject(cuentaP,500,50);
cuentaP.actualiza(puntos);

cronometro=new Cronometro(); //se crea un nuevo contador
addObject(cronometro ,300,23);
Texto texto2 = new Texto("PUNTOS");
addObject(texto2, 462, 25);
texto2.setLocation(498, 23);
Texto texto3 = new Texto("VIDAS");
addObject(texto3, 330, 259);
texto3.setLocation(95, 22);
regresar= new Menu(0);
addObject(regresar, 530, 120);
setPaintOrder(Penguin.class,Hoyo.class);
nivel=0;
activo=0;
}


switch(nivel)
{
case 0:
nivel1();
break;
case 1:
nivel2();
break;
case 2:
nivel3();
break;
}
}
void Escenario.menu (int b)
Dibuja la portada principal del juego
{
if(b==1)
{
GreenfootImage fondo= new GreenfootImage("nieve1.png");
fondo.scale(600,400);
setBackground(fondo);
menu = new Menu(1);
addObject(menu, 100, 336);
ayuda = new Menu(2);
addObject(ayuda, 310, 254);
creditos= new Menu(3);
addObject(creditos, 518, 331);
activo=0;
}
}
void Escenario.moverPeces ()
{
15
java.util.List comida; //Lista de comida
comida=getObjects(Comida.class);
if(!comida.isEmpty())
{
java.util.Iterator it; //iterador para acceder al objeto boton
it=comida.iterator(); //inicializa iterador

while(it.hasNext())
{
Comida pez=(Comida)it.next(); //accede al objeto del iterador
pez.mover();
}
}
}
int Escenario.nivel ()
Regresa el nivel del juego
Devuelve:
nivel, indica el nivel del juego
{
return nivel;
}
void Escenario.nivel3 ()
Prepara el mundo y agrega los objetos para inicializar el tercer nivel
{

if(terminaNivel == false)
{
aparecePeces();
apareceCubos();
aparecePeces();
apareceCubos();
apareceHoyo();
scroll();
if(puntos>=800)
{
mensaje=new Texto("Felicidades, Llegaste a la meta");
addObject(mensaje,250,250);
terminaNivel=true;
remove();
cambiaOpcion(0);
nivel=0;
}
}
}
void Escenario.remove ()
Elimina todos los actores del mundo
{
int aux;
aux=getObjects(null).size();
Actor a;
for(int f=0;f<aux;f++)
{
a = (Actor) getObjects(null).get(0);
removeObject(a);
}
}
void Escenario.scroll ()
Desplaza la imagen, realiza el scroll
{
16
if(nivel==0||nivel==1)
{
scrollSpeed=-6;
}
else
scrollSpeed=4;
if(scrollSpeed > 0 && scrollPosition <= 0)
{
scrollPosition = getHeight();
}
if(scrollSpeed < 0 && scrollPosition >= getHeight())
{
scrollPosition = 0;
}
scrollPosition -= scrollSpeed;
paint(scrollPosition);
}
int Escenario.vidas ()
{
return vidas;
}

Documentacin de los datos miembro
final int Escenario.dy = 6[static]
final int Escenario.lineas = 6[static]
final int Escenario.tamy = 300[static]

La documentacin para esta clase fue generada a partir del siguiente fichero:
Escenario.java

17
Referencia de la Clase Fish
Diagrama de herencias de Fish

Mtodos pblicos
Fish (int l)
void act ()
void mover ()
Otros miembros heredados

Descripcin detallada
Clase Fish representa otro tipo de comida
Autor:
Guadalupe Mtz. Rangel
Versin:
mayo 2012

Documentacin del constructor y destructor
Fish.Fish (int l)
Constructor que asiga la imagen a la clase Fish l, linea en la que aparecera la imagen
{
linea=l;
puntos=20;
GreenfootImage fish= new GreenfootImage("fish.png");
fish.scale(50,50);
setImage(fish);
}

Documentacin de las funciones miembro
void Fish.act ()
Act - Hace lo que Fish quiere hacer.
{
mover();
}
void Fish.mover ()[virtual]
Metodo abstracto de la clase Comida, que hace los movimientos del pez
Implementa Comida.
18
{
Escenario mundo;
mundo=(Escenario)getWorld();
if(mundo.dimeNivel()==false)
{
int numero;
numero=Greenfoot.getRandomNumber(3);
switch(numero)
{
case 0:
{
setLocation(getX()+ (dx)+10, getY() + dy+10);
if(getY()==399)
mundo.removeObject(this);
}
break;
case 1:
{
setLocation(getX()+(dx), getY() + dy);
setLocation((getX()+(dx)-10),getY()+dy);
if(getY()==399)
mundo.removeObject(this);
}
break;
case 2:
{
setLocation(getX()+ (dx-10), getY() + (dy+5));
if(getY()==399)
mundo.removeObject(this);
}
break;
}
}
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Fish.java

19
Referencia de la Clase FishGreen
Diagrama de herencias de FishGreen

Mtodos pblicos
FishGreen (int l)
void act ()
void mover ()
Otros miembros heredados

Descripcin detallada
Claae FishGreen es una subclase de Comida, que le da 10 puntos al jugador
Autor:
Guadalupe Mtz. Rangel
Versin:
06 de mayo de 2012

Documentacin del constructor y destructor
FishGreen.FishGreen (int l)
Constructor para asignacion de puntos
{
linea=l;
puntos=10;
}

Documentacin de las funciones miembro
void FishGreen.act ()
*Act- Es lo que quiere hacer el FishGreen
{
mover();
}
void FishGreen.mover ()[virtual]
Metodo abstracto de la clase Comida, que hace los movimientos del pez
Implementa Comida.
{
Escenario mundo;
mundo=(Escenario)getWorld();
20
if(mundo.dimeNivel()==false)
{
setLocation(getX()+ (dx), getY() + dy+10);
if(getY()==399)
mundo.removeObject(this);
}
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
FishGreen.java

21
Referencia de la Clase FishYellow
Diagrama de herencias de FishYellow

Mtodos pblicos
FishYellow (int l)
void act ()
void mover ()
Otros miembros heredados

Descripcin detallada
*Claae FishYellow es una subclase de Comida, que le da 15 puntos al jugador
Autor:
Guadalupe Mtz. Rangel
Versin:
29 de abril de 2012

Documentacin del constructor y destructor
FishYellow.FishYellow (int l)
Constructor para la clase FishYellow que inicializa los puntos l linea en la que aparecera la
imagen
{
linea=l;
puntos=15;
}

Documentacin de las funciones miembro
void FishYellow.act ()
Act- hace lo que FishYellow quiere hacer.
{
mover();
}
void FishYellow.mover ()[virtual]
Metodo abstracto de la clase Comida, que hace los movimientos del pez
Implementa Comida.
{
Escenario mundo;
22
mundo=(Escenario)getWorld();
setLocation(getX()+(dx), getY() + dy);
setLocation((getX()+(dx)-5),getY()+dy);
if(getY()==399)
mundo.removeObject(this);
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
FishYellow.java

23
Referencia de la Clase Hoja
Mtodos pblicos
void act ()

Descripcin detallada
Clase Hoja representa el fondo de el escenario
Autor:
Guadalupe Mtz. Rangel
Versin:
19 de mayo de 2012

Documentacin de las funciones miembro
void Hoja.act ()
Actua del la clase hoja
{
Escenario mundo;
mundo=(Escenario)getWorld();
if(mundo.nivel()==0||mundo.nivel()==1)
{
fondo=new GreenfootImage("cielo.png");
fondo.scale(600,100);
}
else
{
fondo=new GreenfootImage("lago.jpg");
fondo.scale(600,150);
}
super.setImage(fondo);
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Hoja.java

24
Referencia de la Clase Hoyo
Mtodos pblicos
Hoyo ()
void act ()

Descripcin detallada
Clase que representa los hoyos en el juego
Autor:
Guadalupe Mtz. rangel
Versin:
30 de mayo 2012

Documentacin del constructor y destructor
Hoyo.Hoyo ()
Constructorpara agregar la imagen
{
contador=0;
GreenfootImage hoyo=new GreenfootImage("agujero.png");
hoyo.scale(50,50);
setImage(hoyo);
}

Documentacin de las funciones miembro
void Hoyo.act ()
Incrementa el contador cada vez que entra y cuando cumple cierto tiempo elimina el hoyo
{
contador++;
if(contador==50)
{
Escenario mundo=(Escenario)getWorld();
mundo.removeObject(this);
}

}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Hoyo.java

25
Referencia de la Clase Menu
Mtodos pblicos
Menu (int op)
void act ()

Descripcin detallada
Clase Menu crea un menu con varias opciones
Autor:
Guadalupe Martinez Rangwl
Versin:
(a version number or a date)

Documentacin del constructor y destructor
Menu.Menu (int op)
Constructor de la clase Menu, que agrega los botones @ op opcion del menu
{
opc=op;
GreenfootImage boton4;
switch(op)
{
case 0:
{
boton=new GreenfootImage("regresar.png");
setImage(boton);
}
break;
case 1:
{
boton1=new GreenfootImage("play8.png");
boton1.scale(120,100);
setImage(boton1);
}
break;
case 2:
{
boton2=new GreenfootImage("help.png");
boton2.scale(120,100);
setImage(boton2);
}
break;
case 3:
{
boton3=new GreenfootImage("credits.png");
boton3.scale(120,100);
setImage(boton3);
}
}
}

26
Documentacin de las funciones miembro
void Menu.act ()
Checa que boton fue presionado y cambia el escenario
{
java.util.List objetos;
Escenario mundo;

if(Greenfoot.mouseClicked(this))
{
mundo=(Escenario)getWorld();
mundo.cambiaOpcion(opc);
objetos = mundo.getObjects( null );
mundo.removeObjects(objetos);
Greenfoot.playSound("ice_click.wav");
}
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Menu.java

27
Referencia de la Clase Mountain
Mtodos pblicos
Mountain (int l)
void act ()

Descripcin detallada
Clase Montaa
Autor:
Guadalupe Mtz. Rangel
Versin:
18 de mayo de 2012

Documentacin del constructor y destructor
Mountain.Mountain (int l)
Constructor para la clase Mountain l numero de lineas
{
int tamX;
int tamY;
imagen1=getImage();
imagen1.scale(40,40);
contador=0;
tamY=300;
linea=l;
tamX=((600/numeroLineas)*linea)-((300/numeroLineas)*linea+150);
dx=dy/(tamY/tamX);
}

Documentacin de las funciones miembro
void Mountain.act ()
Accione que realiza la clase Mountain
{
Escenario mundo;
mundo=(Escenario)getWorld();
if(mundo.dimeNivel()==false)
{
setLocation(getX()+ (dx), getY() + dy);
contador++;
if((getX())==599||getX()==0)
mundo.removeObject(this);
}

}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Mountain.java
28
Referencia de la Clase Obstaculo
Mtodos pblicos
Obstaculo (int l)
void act ()

Descripcin detallada
Clase obstaculo representa los obstaculos que apareceran en el juego
Autor:
Guadalupe Mtz. Rangel
Versin:
06 de mayo de 2012

Documentacin del constructor y destructor
Obstaculo.Obstaculo (int l)
Constructor para Obstaculo
{
int tamX;
int tamY;
GreenfootImage cubo= new GreenfootImage("ice_cube.png");
cubo.scale(50,50);
setImage(cubo);
linea=l;
tamY=300;
tamX=((600/numeroLineas)*linea)-((300/numeroLineas)*linea+150);
if(tamX!=0)
dx=dy/(tamY/tamX);
else
dx=0;
}

Documentacin de las funciones miembro
void Obstaculo.act ()
Actividades que realiza la clase
{
Escenario mundo;
mundo=(Escenario)getWorld();
if(mundo.dimeNivel()==false)
{
setLocation(getX()+ (dx), getY() + dy);
if(getY()==399)
mundo.removeObject(this);
}
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Obstaculo.java
29
Referencia de la Clase Penguin
Mtodos pblicos
Penguin ()
void act ()
void mover ()
void comer ()
void chocar ()
void desplazar ()
void caer ()

Descripcin detallada
Clase Pinguino representa el personaje principal del juego
Autor:
Guadalupe Mtz. Rangel
Versin:
29 de abril de 2012

Documentacin del constructor y destructor
Penguin.Penguin ()
Constructor para la clase pinguino
{
GreenfootImage penguin= new GreenfootImage("p.png");
penguin.scale(70,50);
setImage(penguin);
x=300;
y=350;
}

Documentacin de las funciones miembro
void Penguin.act ()
Act - do whatever the Penguin wants to do. This method is called whenever the 'Act' or 'Run'
button gets pressed in the environment.
{
Escenario mundo;
mundo=(Escenario)getWorld();
if(mundo.nivel()==0||mundo.nivel()==1)
{
mover();
comer();
chocar();
}
if(mundo.nivel()==2)
{
mover();
desplazar();
comer();
chocar();
30
caer();
}
}
void Penguin.caer ()
Identifica el momento en que el pinguino cae a un hoyo y disminuye dos vidas
{
Hoyo hoyo;
hoyo=(Hoyo)getOneObjectAtOffset(20,20,Hoyo.class);
if(hoyo!=null)
{
Escenario mundo;
mundo=(Escenario)super.getWorld();
mundo.disminuyeVida();
mundo.disminuyeVida();
mundo.removeObject(hoyo);
}
}
void Penguin.chocar ()
Identifica el momento en que el actor choca con un pinguino
{
Obstaculo cubo;
cubo=(Obstaculo)getOneObjectAtOffset(20,20,Obstaculo.class);
if(cubo!=null)
{
Escenario mundo;
mundo=(Escenario)super.getWorld();
Greenfoot.playSound("golpe.mp3");
mundo.disminuyeVida();
mundo.removeObject(cubo);
}
}
void Penguin.comer ()
Identifica el momento en que el pinguino intersecta con un pescado
{
Comida fish;
fish=(Comida)getOneObjectAtOffset(20,20,Comida.class);

if(fish!=null)
{
Escenario mundo;
mundo=(Escenario)getWorld();
mundo.actualizaPuntos(fish.regresaP());
Greenfoot.playSound("eating.wav");
mundo.removeObject(fish);
}


}
void Penguin.desplazar ()
Desplaza al pinguino hacia arriba
{
Escenario mundo=(Escenario)getWorld();
GreenfootImage img;
img=getImage();

int ancho; //ancho de la imagen
int alto; //alto de la imagen
int xa; //x del actor
int ya; //y del actor

31
xa=img.getWidth()/2;
ya=img.getHeight()/2;


if(getY()>150+ya)
{
if(Greenfoot.isKeyDown("up"))
setLocation(x,y=y-5);
}

if(getY()>150+ya&&getY()<400+ya+30)
{
if(Greenfoot.isKeyDown("down"))
setLocation(x,y=y+5);
}

}
void Penguin.mover ()
Mueve al pinguino hacia la izquierda o hacia la derecha
{
Escenario mundo=(Escenario)getWorld();
GreenfootImage img;
img=getImage();

int ancho; //ancho de la imagen
int alto; //alto de la imagen
int xa; //x del actor
int ya; //y del actor
ancho=mundo.getWidth();
alto=mundo.getHeight();
xa=img.getWidth()/2;
ya=img.getHeight()/2;

if(getX()>=xa+50)
{
if(Greenfoot.isKeyDown("left"))
setLocation(x=x-5,y);
}
if(getX()+xa+50<=ancho)
{
if(Greenfoot.isKeyDown("right"))
setLocation(x=x+5,y);
}
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Penguin.java

32
Referencia de la Clase Texto
Mtodos pblicos
Texto (String cad)

Descripcin detallada
Clase Texto sirve para creau un mensaje
Autor:
Guadalupe Mtz. Rangel
Versin:
29 de abril de 2012

Documentacin del constructor y destructor
Texto.Texto (String cad)
Constructor para la clase Texto cad cadena que se mostrara en pantalla
{
cadena=cad;
setImage(new
GreenfootImage(cadena,25,java.awt.Color.YELLOW,java.awt.Color.GRAY));
}

La documentacin para esta clase fue generada a partir del siguiente fichero:
Texto.java
33
Documentacin de archivos
Referencia del Archivo Comida.java
Clases
class Comida

Referencia del Archivo Contador.java
Clases
class Contador

Referencia del Archivo Cronometro.java
Clases
class Cronometro

Referencia del Archivo Escenario.java
Clases
class Escenario
Referencia del Archivo Fish.java
Clases
class Fish

Referencia del Archivo FishGreen.java
Clases
class FishGreen

Referencia del Archivo Hoja.java
Clases
class Hoja

34
Referencia del Archivo Hoyo.java
Clases
class Hoyo

Referencia del Archivo Menu.java
Clases
class Menu


Referencia del Archivo Mountain.java
Clases
class Mountain

Referencia del Archivo Obstaculo.java
Clases
class Obstaculo
Referencia del Archivo Penguin.java
Clases
class Penguin


Referencia del Archivo Texto.java
Clases
class Texto

Referencia del Archivo FishYellow.java
Clases
class FishYellow

Você também pode gostar