diff --git a/api/src/main/java/net/islandearth/rpgregions/effects/RegionEffect.java b/api/src/main/java/net/islandearth/rpgregions/effects/RegionEffect.java index 315101d..5a5b583 100644 --- a/api/src/main/java/net/islandearth/rpgregions/effects/RegionEffect.java +++ b/api/src/main/java/net/islandearth/rpgregions/effects/RegionEffect.java @@ -15,19 +15,39 @@ public abstract class RegionEffect { this.ignoreItems = ignoreItems; } + /** + * Effects the specified player + * @param player + */ public abstract void effect(Player player); + /** + * Whether the items are required to be worn in armour slots + * @return whether items should be worn in armour slots + */ public boolean isWearingRequired() { return wearingRequired; } + /** + * The items that a player should have to not be effected + * @return ignored items + */ public List getIgnoreItems() { return ignoreItems; } + /** + * Whether the ItemStack is within #getIgnoreItems() + * @param item + * @return true if item is ignored + */ public boolean shouldIgnore(ItemStack item) { return ignoreItems.contains(item); } - + /** + * User friendly name of this effect. + * @return name of effect + */ public abstract String getName(); } diff --git a/build.gradle b/build.gradle index 5a4e04e..113b46d 100644 --- a/build.gradle +++ b/build.gradle @@ -58,14 +58,6 @@ shadowJar { relocate 'io.papermc.lib', 'net.islandearth.rpgregions.paperlib' } -javadoc { - exclude 'net/islandearth/rpgregions/translation/**' - exclude 'net/islandearth/rpgregions/listener/**' - exclude 'net/islandearth/rpgregions/gson/**' - exclude 'net/islandearth/rpgregions/commands/**' - exclude 'net/islandearth/rpgregions/utils/**' -} - build.dependsOn shadowJar import org.apache.tools.ant.filters.ReplaceTokens diff --git a/rpgregions/build.gradle b/rpgregions/build.gradle index 16d29e2..0b99618 100644 --- a/rpgregions/build.gradle +++ b/rpgregions/build.gradle @@ -60,6 +60,14 @@ dependencies { compileOnly project(':api') } +javadoc { + exclude 'net/islandearth/rpgregions/translation/**' + exclude 'net/islandearth/rpgregions/listener/**' + exclude 'net/islandearth/rpgregions/gson/**' + exclude 'net/islandearth/rpgregions/commands/**' + exclude 'net/islandearth/rpgregions/utils/**' +} + import org.apache.tools.ant.filters.ReplaceTokens processResources { diff --git a/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java b/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java index 5489d71..5e188c2 100644 --- a/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java +++ b/rpgregions/src/main/java/net/islandearth/rpgregions/gui/DiscoveryGUI.java @@ -198,7 +198,7 @@ public class DiscoveryGUI extends RPGRegionsGUI { && hasDiscovered ? Translations.TELEPORT.get(player) : null; - items.add(new GuiItem(new ItemStackBuilder(configuredRegion.getIcon()) + items.add(new GuiItem(new ItemStackBuilder(hasDiscovered ? configuredRegion.getIcon() : configuredRegion.getUndiscoveredIcon()) .withName(colour + configuredRegion.getCustomName()) .withLore(lore) .withLore(lore2) diff --git a/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java b/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java index 11eaa8b..d3b6294 100644 --- a/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java +++ b/rpgregions/src/main/java/net/islandearth/rpgregions/managers/data/region/ConfiguredRegion.java @@ -27,6 +27,7 @@ public class ConfiguredRegion { private final List rewards; private final Sound sound; private final Material icon; + private final Material undiscoveredIcon; private final boolean showCoords; private final int x; private final int y; @@ -46,6 +47,7 @@ public class ConfiguredRegion { this.rewards = rewards; this.sound = XSound.UI_TOAST_CHALLENGE_COMPLETE.parseSound(); this.icon = XMaterial.TOTEM_OF_UNDYING.parseMaterial(); + this.undiscoveredIcon = XMaterial.TOTEM_OF_UNDYING.parseMaterial(); this.showCoords = false; this.x = x; this.y = y; @@ -67,6 +69,7 @@ public class ConfiguredRegion { this.rewards = rewards; this.sound = sound; this.icon = icon; + this.undiscoveredIcon = icon; this.showCoords = false; this.x = x; this.y = y; @@ -99,6 +102,10 @@ public class ConfiguredRegion { return icon; } + public Material getUndiscoveredIcon() { + return undiscoveredIcon; + } + public int getX() { return x; } diff --git a/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XMaterial.java b/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XMaterial.java index 0c6c8f6..95c28fd 100644 --- a/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XMaterial.java +++ b/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XMaterial.java @@ -15,7 +15,13 @@ import org.bukkit.inventory.ItemStack; import org.jetbrains.annotations.NotNull; import org.jetbrains.annotations.Nullable; -import java.util.*; +import java.util.ArrayList; +import java.util.EnumSet; +import java.util.List; +import java.util.Locale; +import java.util.Map; +import java.util.Objects; +import java.util.Optional; import java.util.concurrent.TimeUnit; import java.util.regex.Pattern; @@ -60,7 +66,6 @@ public enum XMaterial { ACTIVATOR_RAIL, /** * https://minecraft.gamepedia.com/Air - * {@link Material#isAir()} * * @see #VOID_AIR * @see #CAVE_AIR diff --git a/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XSound.java b/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XSound.java index 2c8700c..d9839e2 100644 --- a/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XSound.java +++ b/rpgregions/src/main/java/net/islandearth/rpgregions/utils/XSound.java @@ -4,7 +4,6 @@ import com.google.common.base.Enums; import com.google.common.base.Strings; import com.google.common.cache.Cache; import com.google.common.cache.CacheBuilder; -import jdk.internal.jline.internal.Nullable; import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.Validate; import org.apache.commons.lang.WordUtils; @@ -17,8 +16,13 @@ import org.bukkit.entity.Player; import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.scheduler.BukkitRunnable; import org.jetbrains.annotations.NotNull; +import org.jetbrains.annotations.Nullable; -import java.util.*; +import java.util.Arrays; +import java.util.EnumSet; +import java.util.Locale; +import java.util.Objects; +import java.util.Optional; import java.util.concurrent.CompletableFuture; import java.util.concurrent.TimeUnit; import java.util.regex.Pattern;