Package j2d

Class Juego

java.lang.Object
j2d.Juego

public class Juego extends Object
Clase no instanciable que representa el juego. Define un conjunto de atributos y metodos estaticos globales al juego que pueden ser utilizados por los objetos y escenas del juego.

Permite configurar los parametros basicos del juego: nombre, dimensiones de la ventana y ciclos por segundo.

Es la encargada de registrar las escenas que componen el juego llamando a anhadeEscena(JEscena) y de cambiar entre ellas llamando a cambiaEscena(String).

Define el metodo jugar() que es el encargado de ejecutar los ciclos del juego con la periodicidad deseada.

Esta clase es parte de j2d.

  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
    Lanzada cuando se proporciona el nombre de una escena no existente.
    static class 
    Lanzada si se trata de anhadir una escena con el mismo nombre que otra ya existente.
    static class 
    Lanzada si se tratan de cambiar los parametros (nombre, dimensiones de la pantalla o ciclos por segundo) de un juego ya comenzado.
  • Method Summary

    Modifier and Type
    Method
    Description
    static int
    Retorna el alto en pixels de la ventana del juego.
    static int
    Retorna el ancho en pixels de la ventana del juego.
    static void
    Anhade una escena al juego.
    static void
    asignaCiclosPorSegundo(int ciclosPorSegundo)
    Asigna los ciclos por segundo a los que se desarrollara el juego.
    static void
    asignaDimensiones(int anchoX, int altoY)
    Asigna la dimensiones de la pantalla del juego.
    static void
    Asigna el nombre del juego (que, a su vez, es el titulo de la ventana principal).
    static void
    cambiaEscena(String nombreEscena)
    Anota la escena a la que se cambiara en el siguiente ciclo.
    static int
    ciclosAms(int ciclos)
    Retorna los milisegundos correspondientes a los ciclos indicados.
    static int
    Retorna los ciclos por segundo a los que se desarrollara el juego.
    static void
    Deshabilita las colisiones entre objetos.
    static void
    Habilita las colisiones entre objetos.
    static int
    Retorna el numero de los ciclos transcurridos desde el comienzo del juego.
    static JEscena
    escena(String nombreEscena)
    Retorna la escena con el nombre indicado.
    static JEscena
    Retorna la escena actual.
    static void
    Finaliza el juego y cierra la ventana.
    static void
    Interrumpe la ejecucion del juego parando el movimiento de los objetos y la cuenta de ciclos.
    static void
    Comienza el juego entrando en la escena inicial e iniciando el lazo principal del juego ejecutado en cicloJuego().
    static int
    msAciclos(int ms)
    Retorna los ciclos correspondientes a los milisegundos indicados.
    static void
    Reanuda el movimiento de los objetos y la cuenta de ciclos.
    static JFrame
    Retorna la ventana del juego.
    static void
    ventanaRedimensionable(boolean redimensionable)
    Configura si la ventana del juego será redimensinable por el usuario.

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
  • Method Details

    • asignaNombre

      public static void asignaNombre(String nombre) throws Juego.JuegoComenzado
      Asigna el nombre del juego (que, a su vez, es el titulo de la ventana principal).
      Parameters:
      nombre - nombre del juego.
      Throws:
      Juego.JuegoComenzado - si el juego ya esta comenzado (se ha ejecutado el metodo jugar()).
    • asignaDimensiones

      public static void asignaDimensiones(int anchoX, int altoY) throws Juego.JuegoComenzado
      Asigna la dimensiones de la pantalla del juego. Si no se invoca este metodo, se utilizaran los valores por defecto definidos en X_ANCHO_VENTANA_POR_DEFECTO y Y_ALT_VENTANA_POR_DEFECTO.
      Parameters:
      anchoX - ancho de la pantalla.
      altoY - alto de la pantalla.
      Throws:
      Juego.JuegoComenzado - si el juego ya esta comenzado (se ha ejecutado el metodo jugar()).
    • asignaCiclosPorSegundo

      public static void asignaCiclosPorSegundo(int ciclosPorSegundo) throws Juego.JuegoComenzado
      Asigna los ciclos por segundo a los que se desarrollara el juego. Si no se invoca este metodo, se utilizara el valor por defecto definido en CICLOS_POR_SEGUNDO_POR_DEFECTO.
      Parameters:
      ciclosPorSegundo - ciclos por segundo a los que se desarrollara el juego.
      Throws:
      Juego.JuegoComenzado - si el juego ya esta comenzado (se ha ejecutado el metodo jugar()).
    • ventanaRedimensionable

      public static void ventanaRedimensionable(boolean redimensionable)
      Configura si la ventana del juego será redimensinable por el usuario.
      Parameters:
      redimensionable - si la ventana del juego será redimensinable por el usuario.
      Throws:
      Juego.JuegoComenzado - si el juego ya esta comenzado (se ha ejecutado el metodo jugar()).
    • anchoPixelsX

      public static int anchoPixelsX()
      Retorna el ancho en pixels de la ventana del juego.
      Returns:
      el ancho en pixels de la ventana del juego.
    • altoPixelsY

      public static int altoPixelsY()
      Retorna el alto en pixels de la ventana del juego.
      Returns:
      el alto en pixels de la ventana del juego.
    • ciclosPorSegundo

      public static int ciclosPorSegundo()
      Retorna los ciclos por segundo a los que se desarrollara el juego.
      Returns:
      los ciclos por segundo a los que se desarrollara el juego.
    • ventana

      public static JFrame ventana()
      Retorna la ventana del juego.
      Returns:
      la ventana del juego.
    • ciclosAms

      public static int ciclosAms(int ciclos)
      Retorna los milisegundos correspondientes a los ciclos indicados.
      Parameters:
      ciclos - ciclos a convertir.
      Returns:
      milisegundos correspondientes a los ciclos indicados.
    • msAciclos

      public static int msAciclos(int ms)
      Retorna los ciclos correspondientes a los milisegundos indicados.
      Parameters:
      ms - milisegundos a convertir.
      Returns:
      ciclos correspondientes a los milisegundos indicados.
    • anhadeEscena

      public static void anhadeEscena(JEscena escena) throws Juego.EscenaRepetida
      Anhade una escena al juego. La primera escena que se anhade sera la escena inicial del juego.
      Parameters:
      escena - escena a anhadir.
      Throws:
      Juego.EscenaRepetida - si ya existe otra escena con el mismo nombre.
    • cambiaEscena

      public static void cambiaEscena(String nombreEscena) throws Juego.EscenaNoExistente
      Anota la escena a la que se cambiara en el siguiente ciclo.
      Parameters:
      nombreEscena - nombre de la escena a que cambiar.
      Throws:
      Juego.EscenaNoExistente - sin no existe ninguna escena con ese nombre.
    • escena

      public static JEscena escena(String nombreEscena)
      Retorna la escena con el nombre indicado.
      Parameters:
      nombreEscena - nombre de la escena buscada.
      Returns:
      la escena con el nombre indicado.
    • escenaActual

      public static JEscena escenaActual()
      Retorna la escena actual.
      Returns:
      la escena actual.
    • colisionesHabilitadas

      public static void colisionesHabilitadas()
      Habilita las colisiones entre objetos.
    • colisionesDeshabilitadas

      public static void colisionesDeshabilitadas()
      Deshabilita las colisiones entre objetos.
    • jugar

      public static void jugar()
      Comienza el juego entrando en la escena inicial e iniciando el lazo principal del juego ejecutado en cicloJuego().
    • contadorCiclos

      public static int contadorCiclos()
      Retorna el numero de los ciclos transcurridos desde el comienzo del juego.
      Returns:
      numero de los ciclos transcurridos desde el comienzo del juego.
    • finalizarJuego

      public static void finalizarJuego()
      Finaliza el juego y cierra la ventana.
    • interrumpeEjecucionJuego

      public static void interrumpeEjecucionJuego()
      Interrumpe la ejecucion del juego parando el movimiento de los objetos y la cuenta de ciclos.
    • reanudaEjecucionJuego

      public static void reanudaEjecucionJuego()
      Reanuda el movimiento de los objetos y la cuenta de ciclos.