Class Bomb

java.lang.Object
  |
  +--Bomb

public class Bomb
extends java.lang.Object
implements Tickable, Explodable

classe che implementa le bombe all'interno del gioco gestendo automaticamente il BombCount

Author:
Marco Mastropaolo (marco.mastropaolo@libero.it / st971422@educ.di.unito.it)

Field Summary
protected  boolean m_bExploding
          true se sta esplodendo
(package private)  JBombGame m_jbGame
          Gioco JBombGame a cui appartiene la bomba
protected  int m_nDrawnStep
          Ultimo frame disegnato
protected  int m_nFireLenght
          lunghezza della fiamma
protected  int m_nTicks
          il numero di timeTick rimasti
protected  int m_nX
          Coordinata x [in celle] della bomba
protected  int m_nY
          Coordinata y [in celle] della bomba
protected static int STDBOMBSPRITESTEP
          (costante) coordinate dello sprite nel file sprites.gif
protected static int STDBOMBSPRITEX
          (costante) coordinate dello sprite nel file sprites.gif
protected static int STDBOMBSPRITEY
          (costante) coordinate dello sprite nel file sprites.gif
protected static int TICKSTOEXPLOSION
          (costante) il numero di timeTick prima dell'esplosione
 
Constructor Summary
protected Bomb(JBombGame Game, int x, int y, int firelen, JBombGrassCell cell)
          Costruisce una nuova bomba
 
Method Summary
 boolean BlocksFire()
          funzione per sapere se questo oggetto blocca il fuoco o no.
static Bomb dropBomb(JBombGame Game, int x, int y, int firelen)
          Crea se possibile una nuova bomba
 void Explode(Explodable[][] World)
          Funzione per far esplodere la bomba.
 boolean IsExploding()
          funzione che restituisce se l'oggetto è già in fase di esplosione (rimane anche a esplosione finita).
 void paint(java.awt.Graphics g)
          Ridisegna la bomba
 void timeTick()
          Decrementa il contatore di tick della bomba
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

m_nX

protected int m_nX
Coordinata x [in celle] della bomba

m_nY

protected int m_nY
Coordinata y [in celle] della bomba

TICKSTOEXPLOSION

protected static final int TICKSTOEXPLOSION
(costante) il numero di timeTick prima dell'esplosione

m_nTicks

protected int m_nTicks
il numero di timeTick rimasti

m_bExploding

protected boolean m_bExploding
true se sta esplodendo

m_nFireLenght

protected int m_nFireLenght
lunghezza della fiamma

STDBOMBSPRITEX

protected static final int STDBOMBSPRITEX
(costante) coordinate dello sprite nel file sprites.gif

STDBOMBSPRITEY

protected static final int STDBOMBSPRITEY
(costante) coordinate dello sprite nel file sprites.gif

STDBOMBSPRITESTEP

protected static final int STDBOMBSPRITESTEP
(costante) coordinate dello sprite nel file sprites.gif

m_nDrawnStep

protected int m_nDrawnStep
Ultimo frame disegnato

m_jbGame

JBombGame m_jbGame
Gioco JBombGame a cui appartiene la bomba
Constructor Detail

Bomb

protected Bomb(JBombGame Game,
               int x,
               int y,
               int firelen,
               JBombGrassCell cell)
Costruisce una nuova bomba
Parameters:
Game - Il gioco a cui appartiene
x - La coordinata x della bomba
y - La coordinata y della bomba
firelen - La lunghezza della fiammata generata dalla bomba
cell - La JBombGrassCell che contiene questa bomba
Method Detail

dropBomb

public static Bomb dropBomb(JBombGame Game,
                            int x,
                            int y,
                            int firelen)
Crea se possibile una nuova bomba
Parameters:
Game - Il gioco a cui appartiene
x - La coordinata x della bomba
y - La coordinata y della bomba
firelen - La lunghezza della fiammata generata dalla bomba
Returns:
La Bomba creata o null se non viene creata

IsExploding

public boolean IsExploding()
funzione che restituisce se l'oggetto è già in fase di esplosione (rimane anche a esplosione finita).
Specified by:
IsExploding in interface Explodable

BlocksFire

public boolean BlocksFire()
funzione per sapere se questo oggetto blocca il fuoco o no.
Specified by:
BlocksFire in interface Explodable
Returns:
false

Explode

public void Explode(Explodable[][] World)
Funzione per far esplodere la bomba. Automaticamente genera la fiammata per la bomba e esplode ogni oggetto toccato dalla fiamma.
Specified by:
Explode in interface Explodable
Parameters:
World - un array di oggetti Explodable

paint

public void paint(java.awt.Graphics g)
Ridisegna la bomba

timeTick

public void timeTick()
Decrementa il contatore di tick della bomba
Specified by:
timeTick in interface Tickable