Package view.ui
Class NextLevelScreenView
java.lang.Object
view.ui.NextLevelScreenView
La classe
NextLevelScreenView
gestisce la transizione tra i livelli del gioco,
includendo la visualizzazione del passaggio da un livello all'altro e il movimento
del personaggio durante la transizione.-
Field Summary
FieldsModifier and TypeFieldDescriptionprivate int
Indice e tick dell'animazione per il personaggio Bub nella transizione.private int
Indice e tick dell'animazione per il personaggio Bub nella transizione.private BufferedImage[][]
private Point
Posizione corrente del giocatore durante la transizione.private static NextLevelScreenView
Istanza singleton diNextLevelScreenView
.private LevelManagerModel
private BufferedImage[]
Array di immagini per le sprite del livello.private int[][]
Dati dei blocchi del livello successivoprivate Point
Posizione di spawn del giocatore nel nuovo livello.private int
Posizione verticale del livello successivo durante la transizione.private PlayerView
private int[][]
Dati dei blocchi del livello precedente.private int
Posizione verticale del livello precedente durante la transizione.private int
Timer per tenere traccia del tempo trascorso nella transizione di livello. -
Constructor Summary
ConstructorsModifierConstructorDescriptionprivate
Costruttore privato che inizializza i dati necessari per la transizione del livello. -
Method Summary
Modifier and TypeMethodDescriptionprivate void
getData()
Recupera i dati necessari per la transizione tra i livelli, inclusi i dati del livello precedente e successivo, e le posizioni del giocatore.static NextLevelScreenView
Restituisce l'istanza singleton diNextLevelScreenView
.void
Renderizza lo stato corrente della transizione di livello, compreso il livello precedente e successivo, e l'animazione del personaggio Bub.private void
Renderizza il personaggio Bub durante la transizione di livello.private void
renderData
(Graphics g, int[][] lvlData, int lvlY) Renderizza i blocchi per la transizione.void
Reimposta le variabili della schermata di transizione alla fine della transizione.void
update()
Aggiorna lo stato della transizione, inclusi i movimenti del livello e del personaggio.private void
Aggiorna il tick dell'animazione di transizione di Bub.private void
Aggiorna la posizione del personaggio Bub durante la transizione tra i livelli.private void
Aggiorna le posizioni verticali del livello precedente e successivo durante la transizione.
-
Field Details
-
instance
Istanza singleton diNextLevelScreenView
. -
levelManager
-
lvlSprites
Array di immagini per le sprite del livello. -
time
private int timeTimer per tenere traccia del tempo trascorso nella transizione di livello. -
aniIndex
private int aniIndexIndice e tick dell'animazione per il personaggio Bub nella transizione. -
aniTick
private int aniTickIndice e tick dell'animazione per il personaggio Bub nella transizione. -
prevLevelData
private int[][] prevLevelDataDati dei blocchi del livello precedente. -
nextLevelData
private int[][] nextLevelDataDati dei blocchi del livello successivo -
prevY
private int prevYPosizione verticale del livello precedente durante la transizione. -
nextY
private int nextYPosizione verticale del livello successivo durante la transizione. -
playerView
-
bubTransitionImages
-
nextPlayerSpawn
Posizione di spawn del giocatore nel nuovo livello. -
curPlayerPos
Posizione corrente del giocatore durante la transizione.
-
-
Constructor Details
-
NextLevelScreenView
private NextLevelScreenView()Costruttore privato che inizializza i dati necessari per la transizione del livello.
-
-
Method Details
-
getInstance
Restituisce l'istanza singleton diNextLevelScreenView
. Se non esiste ancora, la crea.- Returns:
- l'istanza di
NextLevelScreenView
.
-
update
public void update()Aggiorna lo stato della transizione, inclusi i movimenti del livello e del personaggio. -
getData
private void getData()Recupera i dati necessari per la transizione tra i livelli, inclusi i dati del livello precedente e successivo, e le posizioni del giocatore. -
updateLvlPos
private void updateLvlPos()Aggiorna le posizioni verticali del livello precedente e successivo durante la transizione. -
updateBubPosition
private void updateBubPosition()Aggiorna la posizione del personaggio Bub durante la transizione tra i livelli. -
resetNextScreenView
public void resetNextScreenView()Reimposta le variabili della schermata di transizione alla fine della transizione. -
render
Renderizza lo stato corrente della transizione di livello, compreso il livello precedente e successivo, e l'animazione del personaggio Bub.- Parameters:
g
- il contesto su cui disegnare.
-
updateAni
private void updateAni()Aggiorna il tick dell'animazione di transizione di Bub. -
renderData
Renderizza i blocchi per la transizione.- Parameters:
g
- l'oggetto su cui disegnare.lvlData
- i dati del livello da renderizzare.lvlY
- la posizione verticale del livello.
-
renderBub
Renderizza il personaggio Bub durante la transizione di livello.- Parameters:
g
- l'oggetto Graphics su cui disegnare.stateIndex
- l'indice dello stato dell'animazione (iniziale o in movimento).aniIndex
- l'indice del frame dell'animazione corrente.
-