Package view.entities
Class PlayerView
java.lang.Object
view.entities.PlayerView
La classe
PlayerView gestisce la rappresentazione grafica del personaggio giocante (Player)
nel gioco. È responsabile del rendering delle animazioni del giocatore e dell'aggiornamento del suo stato visivo
in base ai cambiamenti nel modello PlayerModel.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate intIndice dell'animazione corrente per scegliere il frame giusto dallo sprite.private BufferedImage[][]Animazioni del giocatore, suddivise per azioni.private intTick dell'animazione corrente per gestire la frequenza di aggiornamento.private static final intL'indice della quantità di colonne nella sprite sheetprivate PointPosizione attuale del giocatore utilizzata per il rendering.private intIndica la larghezza del flip per invertire l'immagine del giocatore in base alla direzione.private intIndica l'offset orizzontale per il flip dell'immagine del giocatore.private static PlayerViewIstanza singleton della classePlayerView.private PlayerModelModello del giocatore che contiene lo stato logico del giocatore.private static final intL'indice della quantità di righe nello sprite sheetprivate floatOffset di disegno sull'asse X.private floatOffset di disegno sull'asse Y. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivateCostruttore privato che inizializza il modello del giocatore e carica le animazioni. -
Method Summary
Modifier and TypeMethodDescriptionprivate voidControlla se il tick dell'animazione deve essere resettato in base al modello.static PlayerViewRestituisce l'istanza singleton diPlayerView.intgetSpriteAmount(int player_action) Restituisce la quantità di frame da utilizzare per una determinata azione del giocatore.voidRenderizza le animazioni del giocatore.voidupdate()Aggiorna lo stato visivo del giocatore, compreso il tick dell'animazione e le direzioni in cui si muove.voidAggiorna il tick dell'animazione e gestisce il cambio degli indici dello sprite delle animazioni.private voidAggiorna le direzioni del giocatore in base ai movimenti nel modello.
-
Field Details
-
ROW_INDEX
private static final int ROW_INDEXL'indice della quantità di righe nello sprite sheet- See Also:
-
COL_INDEX
private static final int COL_INDEXL'indice della quantità di colonne nella sprite sheet- See Also:
-
instance
Istanza singleton della classePlayerView. -
aniTick
private int aniTickTick dell'animazione corrente per gestire la frequenza di aggiornamento. -
aniIndex
private int aniIndexIndice dell'animazione corrente per scegliere il frame giusto dallo sprite. -
playerModel
Modello del giocatore che contiene lo stato logico del giocatore. -
animations
Animazioni del giocatore, suddivise per azioni. -
xDrawOffset
private float xDrawOffsetOffset di disegno sull'asse X. -
yDrawOffset
private float yDrawOffsetOffset di disegno sull'asse Y. -
flipW
private int flipWIndica la larghezza del flip per invertire l'immagine del giocatore in base alla direzione. -
flipX
private int flipXIndica l'offset orizzontale per il flip dell'immagine del giocatore. -
curPlayerPos
Posizione attuale del giocatore utilizzata per il rendering.
-
-
Constructor Details
-
PlayerView
private PlayerView()Costruttore privato che inizializza il modello del giocatore e carica le animazioni.
-
-
Method Details
-
getInstance
Restituisce l'istanza singleton diPlayerView. Se non esiste ancora, la crea.- Returns:
- l'istanza di
PlayerView.
-
update
public void update()Aggiorna lo stato visivo del giocatore, compreso il tick dell'animazione e le direzioni in cui si muove. -
checkAniTick
private void checkAniTick()Controlla se il tick dell'animazione deve essere resettato in base al modello. -
updateDirections
private void updateDirections()Aggiorna le direzioni del giocatore in base ai movimenti nel modello. -
render
Renderizza le animazioni del giocatore.- Parameters:
g- il contesto su cui disegnare.
-
updateAnimationTick
public void updateAnimationTick()Aggiorna il tick dell'animazione e gestisce il cambio degli indici dello sprite delle animazioni. -
getSpriteAmount
public int getSpriteAmount(int player_action) Restituisce la quantità di frame da utilizzare per una determinata azione del giocatore.- Parameters:
player_action- l'azione corrente del giocatore.- Returns:
- il numero di sprite per l'azione.
-
getPlayerModel
-
getCurPlayerPos
-