类 VillagerTradesEvent
java.lang.Object
net.neoforged.bus.api.Event
net.neoforged.neoforge.event.village.VillagerTradesEvent
public class VillagerTradesEvent
extends net.neoforged.bus.api.Event
VillagerTradesEvent is fired during reload by
TagsUpdatedEvent
. It is used to gather the trade lists for each profession.
It is fired on the NeoForge.EVENT_BUS
.
It is fired once for each registered villager profession.
Villagers pick two trades from their trade map, based on their level.
Villager level is increased by successful trades.
The map is populated for levels 1-5 (inclusive), so Map#get will never return null for those keys.
Levels outside of this range do nothing, as specified by VillagerData.canLevelUp(int)
which is called before attempting to level up.
To add trades to the merchant, simply add new trades to the list. BasicItemListing
provides a default implementation.-
字段概要
字段修饰符和类型字段说明private final HolderLookup.Provider
protected it.unimi.dsi.fastutil.ints.Int2ObjectMap
<List<VillagerTrades.ItemListing>> protected ResourceKey
<VillagerProfession> -
构造器概要
构造器构造器说明VillagerTradesEvent
(it.unimi.dsi.fastutil.ints.Int2ObjectMap<List<VillagerTrades.ItemListing>> trades, ResourceKey<VillagerProfession> type, HolderLookup.Provider registries) -
方法概要
-
字段详细资料
-
trades
-
type
-
registries
-
-
构造器详细资料
-
VillagerTradesEvent
@Internal public VillagerTradesEvent(it.unimi.dsi.fastutil.ints.Int2ObjectMap<List<VillagerTrades.ItemListing>> trades, ResourceKey<VillagerProfession> type, HolderLookup.Provider registries)
-
-
方法详细资料
-
getTrades
-
getType
-
getRegistries
-