scalatetris.ui

package scalatetris.ui

Members list

Type members

Classlikes

trait Display

Trait que define la interfaz para mostrar el estado del juego.

Trait que define la interfaz para mostrar el estado del juego.

Esta interfaz permite diferentes implementaciones de visualización, como modo texto, modo gráfico, o incluso una versión sin salida visual.

Attributes

See also

SwingDisplay Para una implementación en modo texto

DummyDisplay Para una implementación sin salida visual

TetrisPanel Para la implementación gráfica principal

Supertypes
class Object
trait Matchable
class Any
Known subtypes
class DummyDisplay extends Display

Implementación de Display que no realiza ninguna visualización.

Implementación de Display que no realiza ninguna visualización.

Esta implementación se usa cuando la visualización se maneja externamente, por ejemplo, cuando se usa TetrisPanel para el renderizado gráfico.

Attributes

Note

Esta implementación es utilizada por el sistema de actores cuando la visualización real se maneja a través de TetrisPanel

Supertypes
trait Display
class Object
trait Matchable
class Any
class MainMenuPanel(onStartGame: () => Unit, onQuit: () => Unit) extends Panel

Panel que implementa el menú principal del juego.

Panel que implementa el menú principal del juego.

Este panel maneja:

  • La interfaz del menú principal
  • Los botones interactivos
  • La pantalla de controles
  • El control de volumen
  • Efectos visuales y animaciones

Value parameters

onQuit

Función a ejecutar cuando se sale del juego

onStartGame

Función a ejecutar cuando se inicia el juego

Attributes

Supertypes
class Panel
trait Wrapper
trait Container
class Component
trait UIElement
trait Publisher
trait Reactor
trait Proxy
class Object
trait Matchable
class Any
Show all
case class Statistics(startTime: Date, rowsCompleted: Int, score: Int, pendingScore: Int)

Clase que maneja las estadísticas del juego.

Clase que maneja las estadísticas del juego.

Esta clase inmutable mantiene el registro de:

  • Tiempo de juego
  • Filas completadas
  • Puntuación actual y pendiente
  • Tiempo en pausa

Value parameters

pendingScore

Puntuación pendiente de aplicar

rowsCompleted

Número de filas completadas

score

Puntuación actual

startTime

Momento de inicio del juego

Attributes

Supertypes
trait Serializable
trait Product
trait Equals
class Object
trait Matchable
class Any
Show all
class SwingDisplay(area: TextArea) extends Display

Implementación de Display que muestra el juego en modo texto usando Swing.

Implementación de Display que muestra el juego en modo texto usando Swing.

Esta implementación es útil para depuración o como visualización alternativa cuando no se dispone de modo gráfico.

Value parameters

area

Área de texto de Swing donde se mostrará el juego

Attributes

Constructor

Crea un nuevo SwingDisplay con un área de texto específica

Note

La visualización usa caracteres ASCII: - 'x' para bloques ocupados - ' ' para espacios vacíos - '|' y '-' para los bordes

Supertypes
trait Display
class Object
trait Matchable
class Any
class TetrisPanel(engine: GameEngine, initialBlockSize: Int) extends Panel

AVISO: Debido a cómo funciona ScalaDocs, no podemos excluir los métodos herados de ScalaSwing, por lo que se recomienda activar el filtro "NoInherited" para solo ver los métodos creados.

AVISO: Debido a cómo funciona ScalaDocs, no podemos excluir los métodos herados de ScalaSwing, por lo que se recomienda activar el filtro "NoInherited" para solo ver los métodos creados.

Panel que implementa la interfaz gráfica del juego Tetris.

Este panel maneja:

  • El renderizado del tablero de juego
  • La visualización de piezas y efectos
  • Los paneles de información (estadísticas, siguiente pieza, hold)
  • Los estados especiales (pausa, game over)
  • Efectos visuales y animaciones

Value parameters

engine

Motor del juego que proporciona la lógica

initialBlockSize

Tamaño inicial de cada bloque en píxeles

Attributes

Supertypes
class Panel
trait Wrapper
trait Container
class Component
trait UIElement
trait Publisher
trait Reactor
trait Proxy
class Object
trait Matchable
class Any
Show all