El paso que daremos a continuación es prácticamente trivial. Cuando matamos a un monstruo, queremos que
nuestra puntuación aumente en - por ejemplo - 20 puntos. Este cambio lo haremos en el método de la clase
Monster que se llama cuando ocurre una colisión. Sin embargo hay un pequeño problema
y es que la puntuación es un atributo del jugador, y la clase Monster no tiene acceso a esta variable. Dado que
podemos necesitar acceder a la instancia del jugador desde multitud de sitios distintos, por ejemplo para
aumentar el número de bombas, para disminuir los escudos, etc., lo que haremos es añadir un método a la clase
Stage para obtener a la instancia del jugador desde cualquier punto del programa
Stage.java
1 /**
2 * Curso Básico de desarrollo de Juegos en Java - Invaders
3 *
4 * (c) 2004 Planetalia S.L. - Todos los derechos reservados. Prohibida su reproducción
5 *
6 * http://www.planetalia.com
7 *
8 */
9 package version22;
10
11 import java.awt.image.ImageObserver;
12
13 public interface Stage extends ImageObserver {
14 public static final int WIDTH=640;
15 public static final int HEIGHT=480;
16 public static final int PLAY_HEIGHT = 400;
17 public static final int SPEED=10;
18 public SpriteCache getSpriteCache();
19 public void addActor(Actor a);