Class 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 Detail

      • LootTable

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

      • 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
      • 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
      • hashCode

        public int hashCode()
        Overrides:
        hashCode in class Object