|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||
java.lang.Object | +--CellBasedGame.CellBasedGame
Classe astratta che si occupa delle operazioni di base di un gioco basato su celle quadrate
| Field Summary | |
protected java.awt.Image |
m_BackGnd
L'immagine contenente il background |
protected boolean |
m_bGameOver
indica lo stato di gameover dell'applicazione |
protected boolean |
m_bPaused
indica lo stato della pausa dell'applicazione |
protected Cell[][] |
m_CellWorld
array di celle contenente la mappa del livello |
protected java.awt.Container |
m_Container
il container in cui viene visualizzato il gioco |
protected float |
m_fParallaxFactor
quantità di effetto parallasse tra il background e gli sprites (1=nessun parallasse) |
protected java.awt.Image |
m_imgBackBuffer
immagine di supporto per il double-buffering |
protected KeybController |
m_keybCtrl
gestore degli eventi di tastiera |
protected int |
m_nCellHeight
dimensioni della finestra di gioco e delle singole celle |
protected int |
m_nCellWidth
dimensioni della finestra di gioco e delle singole celle |
protected int |
m_nMaxWorldHeight
dimensioni della finestra di gioco e delle singole celle |
protected int |
m_nMaxWorldWidth
dimensioni della finestra di gioco e delle singole celle |
protected int |
m_nOriginX
punto di origine nel container (per container con bordi) |
protected int |
m_nOriginY
punto di origine nel container (per container con bordi) |
protected int |
m_nPixelHeight
dimensioni della finestra di gioco e delle singole celle |
protected int |
m_nPixelWidth
dimensioni della finestra di gioco e delle singole celle |
protected int |
m_nWorldHeight
altezza attuale del livello in celle |
protected int |
m_nWorldOriginX
origine attuale del mondo nella finestra in pixel |
protected int |
m_nWorldOriginY
origine attuale del mondo nella finestra in pixel |
protected int |
m_nWorldWidth
larghezza attuale del livello in celle |
protected java.awt.Image |
m_Sprites
L'immagine contenente gli sprites |
protected java.lang.String |
m_strPauseString
stringa contenente il messaggio da visualizzare in pausa |
protected TimeController |
m_timeCtrl
gestore degli eventi temporali |
| Constructor Summary | |
CellBasedGame(java.awt.Container p_Container,
java.awt.Image p_Sprites,
java.awt.Image p_BackGnd,
int p_nWidth,
int p_nHeight,
int p_nCellWidth,
int p_nCellHeight,
int p_nMaxWWidth,
int p_nMaxWHeight,
int p_nStatusBarHeight)
Costruisce un nuovo oggetto CellBasedGame |
|
| Method Summary | |
protected abstract void |
allocCellArray()
Funzione (astratta) richiamata per l'allocazione dell'array delle celle |
(package private) void |
changeCell(int nX,
int nY,
Cell newCell)
Cambia una cella nel mondo. |
void |
dispose()
Funzione da richiamare prima della distruzione di un oggetto JBombGame : provvede a terminare il TimeController associato. |
void |
drawSprite(java.awt.Graphics gfx,
int dx,
int dy,
int sx,
int sy)
Disegna uno sprite alla coordinate mondiali definite, effettuandone le opportune traslazioni e l'eventuale clipping |
protected abstract void |
eachFrame()
Funzione (astratta) richiamata a ogni frame con gioco attivo |
protected abstract void |
eachPausedFrame()
Funzione (astratta) richiamata a ogni frame con gioco in pausa |
void |
gameOver()
Setta il gioco in uno stato di game over (non piu giocabile) |
Cell |
getCell(int nX,
int nY)
Ottiene la cella corrispondente a una data coordinata in celle. |
int |
getCellHeight()
Restituisce la altezza delle celle |
int |
getCellWidth()
Restituisce la larghezza delle celle |
int |
getWorldHeight()
Restituisce la altezza del mondo |
int |
getWorldWidth()
Restituisce la larghezza del mondo |
void |
paint(java.awt.Graphics gfxFrontBuffer)
Effettua il painting della finestra di gioco. |
protected void |
paintBackGnd(java.awt.Graphics gfx)
Effettua il painting del background. |
protected abstract void |
paintCustom(java.awt.Graphics gfx)
Funzione (astratta) richiamata a ogni repaint |
protected abstract void |
paintStatus(java.awt.Graphics gfx)
Funzione (astratta) richiamata per il repaint della status bar |
void |
pause(java.lang.String str)
Mette in pausa il gioco, mostrando una stringa |
Cell |
pixelToCell(int nX,
int nY)
Ottiene la cella corrispondente a una data coordinata in pixel. |
void |
setOrigin(int p_nOx,
int p_nOy)
Setta il punto di origine del Container |
protected void |
setWorldOrigin(int nX,
int nY)
Setta l'origine del viewport per il disegno |
protected void |
stopTimeCtrl()
Ferma il time controller. |
void |
timeTick()
Il fulcro del gioco : esegue a intervalli regolari le operazioni di gestione del gioco Richiama eachFrame o eachPausedFrame e schedula un repaint. |
abstract void |
updateKeyState(java.awt.event.KeyEvent e,
boolean pressed)
Aggiorna lo stato dei tasti |
| Methods inherited from class java.lang.Object |
|
| Field Detail |
protected float m_fParallaxFactor
protected int m_nPixelWidth
protected int m_nPixelHeight
protected int m_nCellWidth
protected int m_nCellHeight
protected int m_nMaxWorldWidth
protected int m_nMaxWorldHeight
protected int m_nWorldWidth
protected int m_nWorldHeight
protected int m_nWorldOriginX
protected int m_nWorldOriginY
protected java.awt.Container m_Container
protected java.awt.Image m_Sprites
protected java.awt.Image m_BackGnd
protected int m_nOriginX
protected int m_nOriginY
protected Cell[][] m_CellWorld
protected java.awt.Image m_imgBackBuffer
protected KeybController m_keybCtrl
protected TimeController m_timeCtrl
protected boolean m_bPaused
protected java.lang.String m_strPauseString
protected boolean m_bGameOver
| Constructor Detail |
public CellBasedGame(java.awt.Container p_Container,
java.awt.Image p_Sprites,
java.awt.Image p_BackGnd,
int p_nWidth,
int p_nHeight,
int p_nCellWidth,
int p_nCellHeight,
int p_nMaxWWidth,
int p_nMaxWHeight,
int p_nStatusBarHeight)
p_Container - Il Container su cui disegnare il giocop_Sprites - L'immagine contenente gli spritesp_BackGnd - L'immagine contenente il backgroundp_nWidth - Larghezza in pixel della finestrap_nHeight - Altezza in pixel della finestrap_nCellWidth - Pixel per cella in larghezzap_nCellHeight - Pixel per cella in altezzap_nMaxWWidth - Massima larghezza del mondo [in celle]p_nMaxWHeight - Massima larghezza del mondo [in celle]p_nStatusBarHeight - Altezza della status bar [in pixel]| Method Detail |
public void drawSprite(java.awt.Graphics gfx,
int dx,
int dy,
int sx,
int sy)
g - L'oggetto Graphics su cui disegnaredx - la coordinata x di destinazione (coordinata mondiale in pixel)dy - la coordinata y di destinazione (coordinata mondiale in pixel)sx - la coordinata x dello sprite nel file sprites.gifsy - la coordinata y dello sprite nel file sprites.gif
public void setOrigin(int p_nOx,
int p_nOy)
p_nOx - Un intero contenente la coordinata x del punto in alto a sinistrap_nOy - Un intero contenente la coordinata y del punto in alto a sinistrapublic void dispose()
protected void paintBackGnd(java.awt.Graphics gfx)
public abstract void updateKeyState(java.awt.event.KeyEvent e,
boolean pressed)
public void pause(java.lang.String str)
public Cell pixelToCell(int nX,
int nY)
nX - Coordinata X in pixel della cella volutanY - Coordinata X in pixel della cella voluta
public Cell getCell(int nX,
int nY)
nX - Coordinata X in celle della cella volutanY - Coordinata X in celle della cella volutaprotected void stopTimeCtrl()
public void timeTick()
protected void setWorldOrigin(int nX,
int nY)
nX - Coordinata X dell'origine del ViewPortnY - Coordinata Y dell'origine del ViewPortpublic void paint(java.awt.Graphics gfxFrontBuffer)
public int getCellWidth()
public int getCellHeight()
public int getWorldWidth()
public int getWorldHeight()
void changeCell(int nX,
int nY,
Cell newCell)
nX - Coordinata X della cella da sostituirenY - Coordinata Y della cella da sostituirenewCell - la nuova Cellpublic void gameOver()
protected abstract void eachFrame()
protected abstract void eachPausedFrame()
protected abstract void allocCellArray()
protected abstract void paintCustom(java.awt.Graphics gfx)
protected abstract void paintStatus(java.awt.Graphics gfx)
|
|||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | ||||||
| SUMMARY: INNER | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | ||||||