Merge branch 'development'

This commit is contained in:
Brianna 2021-01-19 16:45:26 -06:00
commit dc2ea41b3d
4 changed files with 23 additions and 6 deletions

View File

@ -2,7 +2,7 @@
<groupId>com.songoda</groupId>
<artifactId>EpicEnchants</artifactId>
<modelVersion>4.0.0</modelVersion>
<version>1.1.9b</version>
<version>1.1.10</version>
<build>
<defaultGoal>clean install</defaultGoal>
<finalName>EpicEnchants-${project.version}</finalName>

View File

@ -44,8 +44,9 @@ public class BookListener extends ItemListener {
}
// get total amount of enchantments on item
int currentEnchantmentTotal = instance.getEnchantUtils().getEnchants(toApply).size();
//int maxAllowedApply = instance.getEnchantUtils().getMaximumEnchantsCanApply((Player) event.getWhoClicked());
int maxAllowedOverride = instance.getEnchantUtils().getMaximumEnchantsCanApply((Player) event.getWhoClicked());
int maxAllowedApply = instance.getEnchantUtils().getMaximumEnchantsCanApplyItem(toApply, (Player) event.getWhoClicked());
maxAllowedApply = Math.min(maxAllowedApply, maxAllowedOverride);
// item is at max enchantments
if (currentEnchantmentTotal >= maxAllowedApply) {
instance.getLocale().getMessage("enchants.maxallowed").processPlaceholder("max_enchants", maxAllowedApply).sendPrefixedMessage(event.getWhoClicked());
@ -105,11 +106,11 @@ public class BookListener extends ItemListener {
useItem(event);
event.getPlayer().getInventory().addItem(enchant.get().getBook().get(enchant.get(), level));
instance.getLocale().getMessage("book.discover")
event.getPlayer().sendMessage(instance.getLocale().getMessage("book.discover")
.processPlaceholder("group_name", group.getName())
.processPlaceholder("group_color", group.getColor())
.processPlaceholder("enchant_format", enchant.get().getFormat())
.processPlaceholder("level", level)
.sendPrefixedMessage(event.getPlayer());
.getPrefixedMessage());
}
}

View File

@ -1,5 +1,7 @@
package com.songoda.epicenchants.listeners.item;
import com.songoda.core.compatibility.CompatibleMaterial;
import com.songoda.core.nms.nbt.NBTCompound;
import com.songoda.core.nms.nbt.NBTItem;
import com.songoda.epicenchants.EpicEnchants;
import com.songoda.epicenchants.utils.objects.ItemBuilder;
@ -26,6 +28,9 @@ public class WhiteScrollListener extends ItemListener {
return;
}
if (!instance.getItemGroup().isValid(CompatibleMaterial.getMaterial(event.getCurrentItem())))
return;
current.set("protected", true);
instance.getLocale().getMessage("whitescrollapplied").sendPrefixedMessage(event.getWhoClicked());

View File

@ -4,9 +4,13 @@ import com.google.common.collect.HashMultimap;
import com.google.common.collect.Multimap;
import com.songoda.core.compatibility.CompatibleMaterial;
import org.apache.commons.lang.StringUtils;
import org.bukkit.Material;
import java.util.*;
import java.util.Arrays;
import java.util.Collection;
import java.util.HashSet;
import java.util.Map;
import java.util.Optional;
import java.util.Set;
import java.util.stream.Collectors;
import static com.songoda.core.compatibility.CompatibleMaterial.*;
@ -55,6 +59,13 @@ public class ItemGroup {
return output;
}
public boolean isValid(CompatibleMaterial material) {
for (Group group : groupMap.keys())
if (getMaterials(group).contains(material))
return true;
return false;
}
public Set<String> getGroups(Set<CompatibleMaterial> materials) {
Set<String> groups = new HashSet<>();