Class LootTable<T>

java.lang.Object
org.spongepowered.api.util.weighted.LootTable<T>
Type Parameters:
T - The entry type

public class LootTable<T> extends Object
Represents a pool of tables which are rolled sequentially when retrieving entries.
  • Constructor Details

    • LootTable

      public LootTable()
      Creates a new LootTable.
  • Method Details

    • addTable

      public void addTable(RandomObjectTable<T> table)
      Adds a table to the pool.
      Parameters:
      table - The new table
    • addAll

      public void addAll(LootTable<T> other)
      Adds all tables from the given LootTable to this LootTable's pool.
      Parameters:
      other - The other loot table
    • removeTable

      public boolean removeTable(RandomObjectTable<T> table)
      Removes a table from the pool.
      Parameters:
      table - The table to remove
      Returns:
      If the pool contained the table
    • tables

      public List<RandomObjectTable<T>> tables()
      Gets all tables in the pool.
      Returns:
      The tables
    • clearPool

      public void clearPool()
      Clears all tables from the pool.
    • get

      public List<T> get(Random rand)
      Gets a List of objects as retrieved from all pools.
      Parameters:
      rand - The random object to use
      Returns:
      The retrieved entries
    • equals

      public boolean equals(Object o)
      Overrides:
      equals in class Object
    • hashCode

      public int hashCode()
      Overrides:
      hashCode in class Object
    • toString

      public String toString()
      Overrides:
      toString in class Object