Loot Modification Event
该事件用于创建战利品修饰器,这些修饰器用于修改滚动战利品表后直接生成的物品。也就是说他不直接修改战利品表,而是修改战利品表最后生成的物品。
getGlobalModifiers
返回所有由模组注册的全局战利品修饰器列表。
语法:
.getGlobalModifiers()
removeGlobalModifiers
删除所有由指定过滤器指定的模组注册的全局战利品修饰器。
语法:
.removeGlobalModifiers(filter: string | regex)
addTableModifier
为所有与给指定过滤器匹配的战利品表创建战利品修饰器。
语法:
.addTableModifier(filter: string | string[] | regex)
,返回一个LootModifier
js
LootJS.modifiers(event => {
event
.addTableModifier("minecraft:chests/simple_dungeon")
.randomChance(0.5)
.addLoot("minecraft:gunpowder")
})
js
LootJS.modifiers(event => {
event
.addTableModifier(/minecraft:chests:.*/)
.randomChance(0.5)
.addLoot("minecraft:gunpowder")
})
addTypeModifier
为给定的战利品类型添加新的类型修饰器。有效的战利品表类型有 chest
、 block
、 entity
、 fishing
、 archaeology
、 gift
、 vault
、 shearing
、 piglin_barter
语法:
.addTypeModifier(type: LootType)
,返回一个LootModifier
js
LootJS.modifiers(event => {
event.addTypeModifier("chest")
.randomChance(0.5)
.addLoot("minecraft:gunpowder")
})
js
LootJS.modifiers(event => {
event.addTypeModifier("block", "entity")
.randomChance(0.5)
.addLoot("minecraft:gunpowder")
})
addEntityModifier
为与指定过滤器匹配的所有实体添加新的战利品修饰器。
语法:
.addEntityModifier(filter: string | string[] | tag)
,返回一个LootModifier
js
LootJS.modifiers(event => {
event.addEntityModifier("minecraft:creeper")
.randomChance(0.5)
.addLoot("minecraft:gunpowder")
})
js
LootJS.modifiers(event => {
event
.addEntityModifier(["minecraft:cow", "minecraft:pig"])
.randomChance(0.5)
.addLoot("minecraft:gold_nugget")
})
js
LootJS.modifiers(event => {
event.addEntityModifier("#minecraft:skeletons")
.randomChance(0.5)
.addLoot("minecraft:stick")
})
addBlockModifier
为与指定过滤器匹配的所有方块添加新的战利品修饰器。
语法:
.addBlockModifier(filter: string | string[] | regex | tag)
,返回一个LootModifier
js
LootJS.modifiers(event => {
event.addBlockModifier("minecraft:iron_ore")
.randomChance(0.5)
.addLoot("minecraft:iron_nugget")
})
js
LootJS.modifiers(event => {
event
.addBlockModifier(["minecraft:gravel", "minecraft:dirt"])
.randomChance(0.5)
.addLoot("minecraft:gold_nugget")
})
js
LootJS.modifiers(event => {
event.addBlockModifier("#c:ores")
.randomChance(0.5)
.addLoot("minecraft:flint")
})