Class Monster

java.lang.Object
  |
  +--CellBasedGame.DynamicObject
        |
        +--JBombDynamic
              |
              +--Monster
Direct Known Subclasses:
MonsterAlien, MonsterEnergy, MonsterFish, MonsterGhost, MonsterMan, MonsterSkull, MonsterSpider, MonsterTooth, MonsterTrash, MonsterWoman

public abstract class Monster
extends JBombDynamic

Classe astratta di base per l'implementazione dei mostri

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

Field Summary
private static int FRAMESKIP
          frame da saltare (costante)
protected  JBombGame m_jbGame
          variabile che contiene il gioco a cui appartiene il giocatore
private  int m_nFrameSkipCount
          contatore dei frame da saltare
protected  int m_nFrameYPos
          riga a cui prendere gli sprite
private  int m_nSpriteDrawn
          ultimo sprite disegnato
private static int SPRITESTEP
          distanza fra i vari sprite (costante)
 
Fields inherited from class CellBasedGame.DynamicObject
DIJKSTRAARRAY, DIJKSTRABORDER, DIJKSTRALIMIT, DIRECTION_DOWN, DIRECTION_LEFT, DIRECTION_NONE, DIRECTION_RIGHT, DIRECTION_UP, INFINITE, m_bAlive, m_bMustChangeDirection, m_cbGame, m_nDeltaX, m_nDeltaY, m_nLastCellX, m_nLastCellY, m_nLastDirection, m_nSpeed, m_nX, m_nY
 
Constructor Summary
Monster(JBombGame Game, int nX, int nY)
          (costruttore) Crea un nuovo Monster
 
Method Summary
 boolean canAvoidFire()
           
 boolean canCrossBombs()
           
 boolean canCrossWalls()
           
protected abstract  int chooseDirection()
           
 void die()
          uccide il mostro e decrementa il contatore di mostri per poter tenere traccia della vittoria
 void paint(java.awt.Graphics gfx)
           
 
Methods inherited from class JBombDynamic
canCrossFire, move
 
Methods inherited from class CellBasedGame.DynamicObject
applyDijkstra, chase, collide, deltasToDirection, getX, getY, isDirectionValid, move, oppositeDirection, random, rangeX, rangeY, setSpeed, stupid
 
Methods inherited from class java.lang.Object
, clone, equals, finalize, getClass, hashCode, notify, notifyAll, registerNatives, toString, wait, wait, wait
 

Field Detail

m_jbGame

protected JBombGame m_jbGame
variabile che contiene il gioco a cui appartiene il giocatore

m_nSpriteDrawn

private int m_nSpriteDrawn
ultimo sprite disegnato

m_nFrameSkipCount

private int m_nFrameSkipCount
contatore dei frame da saltare

FRAMESKIP

private static final int FRAMESKIP
frame da saltare (costante)

SPRITESTEP

private static final int SPRITESTEP
distanza fra i vari sprite (costante)

m_nFrameYPos

protected int m_nFrameYPos
riga a cui prendere gli sprite
Constructor Detail

Monster

public Monster(JBombGame Game,
               int nX,
               int nY)
(costruttore) Crea un nuovo Monster
Parameters:
Game - Il gioco JBombGame in cui l'oggetto è inserito
nX - La coordinata X di partenza [in pixel]
nY - La coordinata Y di partenza [in pixel]
Method Detail

die

public void die()
uccide il mostro e decrementa il contatore di mostri per poter tenere traccia della vittoria
Overrides:
die in class DynamicObject

paint

public void paint(java.awt.Graphics gfx)
Overrides:
paint in class DynamicObject

canCrossWalls

public boolean canCrossWalls()
Overrides:
canCrossWalls in class JBombDynamic

canCrossBombs

public boolean canCrossBombs()
Overrides:
canCrossBombs in class JBombDynamic

canAvoidFire

public boolean canAvoidFire()
Overrides:
canAvoidFire in class JBombDynamic

chooseDirection

protected abstract int chooseDirection()
Overrides:
chooseDirection in class DynamicObject