Class VeinMinerPlayerManager

java.lang.Object
wtf.choco.veinminer.manager.VeinMinerPlayerManager

public final class VeinMinerPlayerManager extends Object
A manager mapping players to VeinMinerPlayers.
  • Constructor Details

    • VeinMinerPlayerManager

      public VeinMinerPlayerManager()
  • Method Details

    • get

      @Nullable public @Nullable VeinMinerPlayer get(@NotNull @NotNull PlatformPlayer player)
      Get the VeinMinerPlayer associated with the given PlatformPlayer.
      Parameters:
      player - the player
      Returns:
      the vein miner player, or null if not registered
    • getOrRegister

      @NotNull public @NotNull VeinMinerPlayer getOrRegister(@NotNull @NotNull PlatformPlayer player, Supplier<ClientConfig> defaultConfigSupplier)
      Get the VeinMinerPlayer associated with the given PlatformPlayer.
      Parameters:
      player - the player
      defaultConfigSupplier - a supplier to create the default client configuration to use if the player did not exist and needed to be registered
      Returns:
      the vein miner player
    • remove

      @Nullable public @Nullable VeinMinerPlayer remove(@NotNull @NotNull UUID playerUUID)
      Remove the VeinMinerPlayer of the player with the given UUID.
      Parameters:
      playerUUID - the UUID of the player to remove
      Returns:
      the removed VeinMinerPlayer instance, or null if none existed
    • remove

      @Nullable public @Nullable VeinMinerPlayer remove(@NotNull @NotNull PlatformPlayer player)
      Remove the VeinMinerPlayer of the given PlatformPlayer.
      Parameters:
      player - the player to remove
      Returns:
      the removed VeinMinerPlayer instance, or null if none existed
    • remove

      public void remove(@NotNull @NotNull VeinMinerPlayer player)
      Remove the given VeinMinerPlayer.
      Parameters:
      player - the player to remove
    • getAll

      @NotNull public @NotNull @UnmodifiableView Collection<? extends VeinMinerPlayer> getAll()
      Get all VeinMinerPlayers managed by this manager.
      Returns:
      all registered players
    • getAllUsingClientMod

      @NotNull public @NotNull @Unmodifiable Collection<? extends VeinMinerPlayer> getAllUsingClientMod()
      Get all VeinMinerPlayers using the client mod.
      Returns:
      all players using the client mod
    • getPlayerCountUsingClientMod

      public int getPlayerCountUsingClientMod()
      Get the amount of players in this manager using the VeinMiner client mod.
      Returns:
      the amount of players using the client mod
    • clear

      public void clear()
      Clear all players in this manager.