Class AnimatedMask

java.lang.Object
me.hsgamer.hscore.minecraft.gui.mask.BaseMask
me.hsgamer.hscore.minecraft.gui.mask.impl.AnimatedMask
All Implemented Interfaces:
Mask, IdentifiedUpdatable, Initializable

public class AnimatedMask extends BaseMask implements IdentifiedUpdatable
The animated mask with child masks as frames
  • Constructor Details

    • AnimatedMask

      public AnimatedMask(@NotNull @NotNull String name)
      Create a new mask
      Parameters:
      name - the name of the mask
  • Method Details

    • addMask

      @Contract("_ -> this") public <T extends Mask> AnimatedMask addMask(@NotNull @NotNull Collection<@NotNull T> masks)
      Add mask(s)
      Type Parameters:
      T - the type of the mask
      Parameters:
      masks - the mask (or frame)
      Returns:
      this instance
    • addMask

      @Contract("_ -> this") public AnimatedMask addMask(@NotNull @NotNull Mask... mask)
      Add mask(s)
      Parameters:
      mask - the mask (or frame)
      Returns:
      this instance
    • setPeriodMillis

      @Contract("_ -> this") public AnimatedMask setPeriodMillis(long periodMillis)
      Set the period of the animation
      Parameters:
      periodMillis - the period in milliseconds
      Returns:
      this instance
    • setPeriodTicks

      @Contract("_ -> this") public AnimatedMask setPeriodTicks(long periodTicks)
      Set the period of the animation
      Parameters:
      periodTicks - the period in ticks
      Returns:
      this instance
    • getMasks

      @NotNull public @NotNull List<Mask> getMasks()
      Get the list of masks
      Returns:
      the masks
    • generateButtons

      public Optional<Map<Integer,Button>> generateButtons(@NotNull @NotNull UUID uuid, @NotNull @NotNull InventorySize inventorySize)
      Description copied from interface: Mask
      Generate the buttons for the unique id
      Specified by:
      generateButtons in interface Mask
      Parameters:
      uuid - the unique id
      inventorySize - the size of the inventory
      Returns:
      the map contains the slots and the buttons
    • init

      public void init()
      Description copied from interface: Initializable
      Initialize some properties for the object
      Specified by:
      init in interface Initializable
    • stop

      public void stop()
      Description copied from interface: Initializable
      Stop the object
      Specified by:
      stop in interface Initializable
    • update

      public void update(@NotNull @NotNull UUID uuid)
      Description copied from interface: IdentifiedUpdatable
      Update the updatable object
      Specified by:
      update in interface IdentifiedUpdatable
      Parameters:
      uuid - the identifier