mirror of
https://github.com/StarWishsama/Slimefun4.git
synced 2024-09-19 19:25:48 +00:00
Fixes #1833
This commit is contained in:
parent
2b9d109d16
commit
8cb5579a12
@ -24,6 +24,7 @@
|
||||
|
||||
#### Fixes
|
||||
* Fixed #1824
|
||||
* Fixed #1833
|
||||
|
||||
## Release Candidate 11 (25 Apr 2020)
|
||||
|
||||
|
@ -29,9 +29,9 @@ public class MagicianTalisman extends Talisman {
|
||||
addItemSetting(enchantments.toArray(new ItemSetting[0]));
|
||||
}
|
||||
|
||||
public TalismanEnchantment getRandomEnchantment() {
|
||||
List<TalismanEnchantment> enabled = enchantments.stream().filter(TalismanEnchantment::getValue).collect(Collectors.toList());
|
||||
return enabled.get(ThreadLocalRandom.current().nextInt(enabled.size()));
|
||||
public TalismanEnchantment getRandomEnchantment(ItemStack item) {
|
||||
List<TalismanEnchantment> enabled = enchantments.stream().filter(e -> e.getEnchantment().canEnchantItem(item)).filter(TalismanEnchantment::getValue).collect(Collectors.toList());
|
||||
return enabled.isEmpty() ? null : enabled.get(ThreadLocalRandom.current().nextInt(enabled.size()));
|
||||
}
|
||||
|
||||
/**
|
||||
|
@ -185,8 +185,10 @@ public class TalismanListener implements Listener {
|
||||
|
||||
if (Talisman.checkFor(e, SlimefunItems.TALISMAN_MAGICIAN)) {
|
||||
MagicianTalisman talisman = (MagicianTalisman) SlimefunItems.TALISMAN_MAGICIAN.getItem();
|
||||
TalismanEnchantment enchantment = talisman.getRandomEnchantment();
|
||||
e.getEnchantsToAdd().put(enchantment.getEnchantment(), enchantment.getLevel());
|
||||
TalismanEnchantment enchantment = talisman.getRandomEnchantment(e.getItem());
|
||||
if (enchantment != null) {
|
||||
e.getEnchantsToAdd().put(enchantment.getEnchantment(), enchantment.getLevel());
|
||||
}
|
||||
}
|
||||
|
||||
if (!e.getEnchantsToAdd().containsKey(Enchantment.SILK_TOUCH) && Enchantment.LOOT_BONUS_BLOCKS.canEnchantItem(e.getItem()) && Talisman.checkFor(e, SlimefunItems.TALISMAN_WIZARD)) {
|
||||
|
@ -641,6 +641,10 @@ public class BlockStorage {
|
||||
}
|
||||
|
||||
public BlockMenu loadInventory(Location l, BlockMenuPreset preset) {
|
||||
if (preset == null) {
|
||||
return null;
|
||||
}
|
||||
|
||||
BlockMenu menu = new BlockMenu(preset, l);
|
||||
inventories.put(l, menu);
|
||||
return menu;
|
||||
|
Loading…
Reference in New Issue
Block a user