Loots
Loots can be used to specify when to drop a particular item.
You can decide to create different loot types:
Blocks.
Mobs.
Fishing.
For example this is the loots category of a .yml
file I created.
info:
namespace: my_loots
loots:
blocks:
ruby_ore:
type: iasurvival:ruby_ore
items:
ruby:
item: iasurvival:ruby
min_amount: 1
max_amount: 2
chance: 100
nether_quartz_ore:
type: NETHER_QUARTZ_ORE
drop_only_first: true
items:
crystal:
item: iasurvival:crystal
min_amount: 1
max_amount: 2
chance: 10
knowledge_fragment:
item: iasurvival:knowledge_fragment
min_amount: 1
max_amount: 2
chance: 15
This example has two loots in blocks category.
First one is called ruby_ore
(you can call them as you prefer), this will drop a itemsadder:ruby
item when you break a custom block of type iasurvival:ruby_ore
with a minimum amount of 1 and maximum amount of 2 with 100% chance.
The second one is a loot from a vanilla block. As you imagine it will drop a crystal
or a knowledge_fragment
when the player breaks a NETHER_QUARTZ_ORE
.
These drops are decided by ItemsAdder based on chance you set.
Loots Types
Fishing
loots:
fishing:
loot_blue_parrotfish:
biomes:
- WARM_OCEAN
items:
item_1:
item: iasurvival:blue_parrotfish
min_amount: 1
max_amount: 1
chance: 5
loot_green_sunfish:
items:
item_1:
item: iasurvival:green_sunfish
min_amount: 1
max_amount: 1
chance: 5
loot_goldfish:
items:
item_1:
item: iasurvival:goldfish
min_amount: 1
max_amount: 1
chance: 5
Mobs
loots:
mobs:
villager:
type: ZOMBIE
items:
item_1:
item: iawearables:straw_hat
min_amount: 1
max_amount: 1
chance: 100
ender_dragon:
type: ENDER_DRAGON
items:
item_1:
item: iawearables:ender_dragon_wings
min_amount: 1
max_amount: 1
chance: 100
Custom entities loots
In order to let ItemsAdder drop an item based on when you kill a custom entity you just have to set type
to the custom entity namespaced-id.
loots:
mobs:
soul:
type: custom:ninja_skeleton
items:
ruby:
item: ruby
min_amount: 1
max_amount: 1
chance: 100
Loots Rules
(Blocks) drop_only_first
drop_only_first
This special properties allows you to stop drops chance calculation when the first item is successfully dropped. WARNING: this makes your items harder to be dropped.
loots:
blocks:
nether_quartz_ore:
type: NETHER_QUARTZ_ORE
drop_only_first: true
items:
crystal:
item: iasurvival:crystal
min_amount: 1
max_amount: 2
chance: 10
knowledge_fragment:
item: iasurvival:knowledge_fragment
min_amount: 1
max_amount: 2
chance: 15
Biomes
loots:
blocks:
ruby_ore:
type: iasurvival:ruby_ore
biomes:
- PLAINS
- SUNFLOWER_PLAINS
- MOUNTAINS
items:
ruby:
item: iasurvival:ruby
min_amount: 1
max_amount: 2
chance: 100
Ignore fortune enchant
You can make a loot ignore fortune enchant by adding the ignore_fortune
property.
loots:
blocks:
ruby_ore:
type: iasurvival:ruby_ore
items:
ruby:
item: iasurvival:ruby
ignore_fortune: true # <----- here
min_amount: 1
max_amount: 2
chance: 100
Ignore mobs spawned from spawners
You can make a loot ignore fortune enchant by adding the ignore_fortune
property.
loots:
mobs:
villager:
type: ZOMBIE
ignore_spawner: true # <----- here
items:
item_1:
item: iawearables:straw_hat
min_amount: 1
max_amount: 1
chance: 100
Worlds
loots:
blocks:
change_me:
enabled: true
type: SAND
biomes:
- BEACH
worlds: # <----- here
- "world_*"
- "!private_*"
- "example1"
- "!example2"
items:
change_me:
item: STONE
min_amount: 1
max_amount: 1
chance: 100
Loots will drop in all worlds if you don't specify any world.
The special *
character allows any world starting with a particular text.
In this example every world starting with world_
will match and will drop loots.
The special !
character denies the loot to be dropped in any world starting with a particular text.
In this example every world starting with private_
will match and won't allow dropping loots.
You can also specify precise world names, in this example example2
won't allow loots to be dropped.
You can also specify precise world names, in this example example1
will allow loots to be dropped.
Tile entity NBT data
In this example I will check the NBT data of a spawner.
loots:
blocks:
change_me:
enabled: true
type: SPAWNER
nbt:
spawner_type:
path: SpawnData.entity.id
value: minecraft:zombie
type: string
items:
change_me:
item: ACACIA_BOAT
min_amount: 1
max_amount: 1
chance: 100
ignore_fortune: false
You have to enable this setting if you want to be able to get items from spawners by using an enchanted item with silktouch.
loots:
allow-loots-drop-from-spawners-using-silk-touch: true
NBT
In this example I will check the NBT data of a Villager (profession).
As you can see I set profession attribute and specified the NBT attribute path, which in this case is VillagerData.profession
.
Then I set value to minecraft:farmer
, this tells ItemsAdder to match only villagers with attribute VillagerData.profession
set to minecraft:farmer
.
loots:
mobs:
villager:
type: VILLAGER
nbt:
profession:
path: VillagerData.profession
value: minecraft:farmer
type: string
items:
item_1:
item: itemsadder:straw_hat
min_amount: 1
max_amount: 1
chance: 100
Metadata
You can even match metadata, in case some plugin is setting that temporary information.
loots:
mobs:
soul:
type: HUSK
metadata:
my_rule_1:
name: "YourCustomKey"
value: "ExampleValue"
type: "string"
items:
ruby:
item: ruby
min_amount: 1
max_amount: 1
chance: 100
The type attribute of nbt and metadata are really important, don't forget them or matches could not occur.
Last updated
Was this helpful?