Class RelojExtendido

  • All Implemented Interfaces:
    org.bukkit.event.Listener

    final class RelojExtendido
    extends Object
    implements org.bukkit.event.Listener
    Modela un reloj extendido, que provee de funcionalidades extra al ítem de reloj de Minecraft.
    Author:
    AlexTMjugador
    • Nested Class Summary

      Nested Classes 
      Modifier and Type Class Description
      private class  RelojExtendido.ComprobarReloj
      Tarea que decide, en última instancia, si un jugador debe de poder ver la hora de su reloj o no.
      private class  RelojExtendido.MostrarHora
      Tarea periódica que se encarga de mostrar y mantener actualizado el display de la hora en las pantallas de los jugadores.
    • Field Summary

      Fields 
      Modifier and Type Field Description
      private static byte CICLOS_TAREA_MOSTRAR_HORA
      El número de ciclos (ejecuciones) de la tarea de mostrar el display de la hora durante los que se mostrará al jugador como mínimo, independientemente de si el jugador deja de empuñar el reloj o no.
      private PluginTiempoReal estePlugin
      Guarda una referencia al plugin que contiene esta clase; es decir, este plugin.
      private Set<org.bukkit.entity.Player> JUGADORES_RELOJ
      Los jugadores que están viendo un reloj en el instante de tiempo presente.
      private static RelojExtendido re
      Guarda una referencia al primer (y único) objeto creado de esta clase.
      private org.bukkit.scheduler.BukkitTask tareaMostrarHora
      Tarea que se encarga de mostrar el display de la hora a los jugadores interesados.
      private static short TICKS_TAREA_MOSTRAR_HORA
      El número de ticks que han de pasar entre ejecuciones consecutivas de la tarea que se encarga de mostrar el display de la hora a los jugadores interesados.
      private static int TIEMPO_DISPLAY
      El tiempo mínimo que permanecerá un display de la hora en la pantalla de un jugador, independientemente de cuándo se lo quite de la mano.
    • Constructor Summary

      Constructors 
      Modifier Constructor Description
      private RelojExtendido()
      Crea un nuevo reloj extendido.
    • Method Summary

      All Methods Static Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      static RelojExtendido get()
      Crea y pone en marcha un reloj extendido, que se encarga de la muestra de la hora actual y de la sincronización entre la hora del servidor y las horas de los mundos deseados.
      private void mostrarDisplayHora​(org.bukkit.entity.Player p)
      Añade un jugador a la lista de jugadores a los que mostrar la hora en pantalla.
      private void ocultarDisplayHora​(org.bukkit.entity.Player p)
      Elimina un jugador de la lista de jugadores a los que mostrar la hora en pantalla.
      void onInventoryInteractEvent​(org.bukkit.event.entity.EntityPickupItemEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
      void onInventoryInteractEvent​(org.bukkit.event.inventory.InventoryClickEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
      void onInventoryInteractEvent​(org.bukkit.event.inventory.InventoryDragEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
      void onInventoryInteractEvent​(org.bukkit.event.player.PlayerDropItemEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
      void onPlayerEvent​(org.bukkit.event.player.PlayerItemHeldEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
      void onPlayerEvent​(org.bukkit.event.player.PlayerJoinEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
      void onPlayerEvent​(org.bukkit.event.player.PlayerKickEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
      void onPlayerEvent​(org.bukkit.event.player.PlayerQuitEvent event)
      Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
    • Field Detail

      • JUGADORES_RELOJ

        private final Set<org.bukkit.entity.Player> JUGADORES_RELOJ
        Los jugadores que están viendo un reloj en el instante de tiempo presente.
      • estePlugin

        private final PluginTiempoReal estePlugin
        Guarda una referencia al plugin que contiene esta clase; es decir, este plugin.
      • tareaMostrarHora

        private org.bukkit.scheduler.BukkitTask tareaMostrarHora
        Tarea que se encarga de mostrar el display de la hora a los jugadores interesados.
      • TICKS_TAREA_MOSTRAR_HORA

        private static final short TICKS_TAREA_MOSTRAR_HORA
        El número de ticks que han de pasar entre ejecuciones consecutivas de la tarea que se encarga de mostrar el display de la hora a los jugadores interesados. Este valor está pensado para que sea el mayor que, aunque no se sincronice la hora en el mundo en el que está el jugador, siempre se muestre un display de hora actualizado, teniendo en cuenta que 1 minuto en Minecraft = 16,6 ticks = 0,83 s.
        See Also:
        Constant Field Values
      • CICLOS_TAREA_MOSTRAR_HORA

        private static final byte CICLOS_TAREA_MOSTRAR_HORA
        El número de ciclos (ejecuciones) de la tarea de mostrar el display de la hora durante los que se mostrará al jugador como mínimo, independientemente de si el jugador deja de empuñar el reloj o no.
        See Also:
        Constant Field Values
      • TIEMPO_DISPLAY

        private static final int TIEMPO_DISPLAY
        El tiempo mínimo que permanecerá un display de la hora en la pantalla de un jugador, independientemente de cuándo se lo quite de la mano. Se calcula automáticamente a partir de atributos anteriores, así que no se debe de editar manualmente.
        See Also:
        Constant Field Values
      • re

        private static RelojExtendido re
        Guarda una referencia al primer (y único) objeto creado de esta clase.
    • Constructor Detail

      • RelojExtendido

        private RelojExtendido()
        Crea un nuevo reloj extendido.
    • Method Detail

      • get

        public static RelojExtendido get()
        Crea y pone en marcha un reloj extendido, que se encarga de la muestra de la hora actual y de la sincronización entre la hora del servidor y las horas de los mundos deseados. Para ello, registra los eventos manejados por esta clase con el plugin, y hace que los jugadores que empuñen un reloj inicialmente vean la hora.
        Returns:
        El reloj extendido descrito.
      • onPlayerEvent

        public void onPlayerEvent​(org.bukkit.event.player.PlayerItemHeldEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
        Parameters:
        event - El evento realizado por el jugador.
      • onPlayerEvent

        public void onPlayerEvent​(org.bukkit.event.player.PlayerJoinEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
        Parameters:
        event - El evento realizado por el jugador.
      • onPlayerEvent

        public void onPlayerEvent​(org.bukkit.event.player.PlayerQuitEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
        Parameters:
        event - El evento realizado por el jugador.
      • onPlayerEvent

        public void onPlayerEvent​(org.bukkit.event.player.PlayerKickEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con empuñar o guardar un reloj.
        Parameters:
        event - El evento realizado por el jugador.
      • onInventoryInteractEvent

        public void onInventoryInteractEvent​(org.bukkit.event.inventory.InventoryClickEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
        Parameters:
        event - El evento realizado por el jugador.
      • onInventoryInteractEvent

        public void onInventoryInteractEvent​(org.bukkit.event.inventory.InventoryDragEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
        Parameters:
        event - El evento realizado por el jugador.
      • onInventoryInteractEvent

        public void onInventoryInteractEvent​(org.bukkit.event.entity.EntityPickupItemEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
        Parameters:
        event - El evento realizado por el jugador.
      • onInventoryInteractEvent

        public void onInventoryInteractEvent​(org.bukkit.event.player.PlayerDropItemEvent event)
        Decide si mostrar u ocultar la hora a jugadores que realicen algún evento relacionado con su inventario.
        Parameters:
        event - El evento realizado por el jugador.
      • mostrarDisplayHora

        private void mostrarDisplayHora​(org.bukkit.entity.Player p)
        Añade un jugador a la lista de jugadores a los que mostrar la hora en pantalla.
        Parameters:
        p - El jugador a añadir.
      • ocultarDisplayHora

        private void ocultarDisplayHora​(org.bukkit.entity.Player p)
        Elimina un jugador de la lista de jugadores a los que mostrar la hora en pantalla.
        Parameters:
        p - El jugador a eliminar de la lista.