This module includes APIs for modifying and creating loot tables.
This class provides two events for modifying loot tables.
LootTableEvents.REPLACE
runs first and lets you replace loot tables completely.
LootTableEvents.MODIFY
runs after and lets you modify loot tables, including the ones created in REPLACE
,
by adding new loot pools or loot functions to them.
Both events have access to a loot table source that you can use to check where a loot table is loaded from.
For example, you can use this to check if a loot table is from a user data pack and not modify the user-provided data in your event.
LootTable.Builder
and LootPool.Builder
implement
injected interfaces (FabricLootTableBuilder
and FabricLootPoolBuilder
)
which have additional methods for dealing with already-built objects and collections of objects.
Those interfaces also have copyOf
methods for creating copies of existing loot tables/pools as builders.