diff --git a/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/RelationalPlaceholderEvent.java b/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/RelationalPlaceholderEvent.java index 0588fea..81ea3a4 100644 --- a/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/RelationalPlaceholderEvent.java +++ b/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/RelationalPlaceholderEvent.java @@ -1,6 +1,7 @@ package io.github.apickledwalrus.skriptplaceholders.skript; import org.bukkit.entity.Player; +import org.jetbrains.annotations.NotNull; /** * An event to be used by Skript for passing context regarding relational placeholders during execution. @@ -15,7 +16,7 @@ public RelationalPlaceholderEvent(String placeholder, Player player, Player othe } @Override - public Player getPlayer() { + public @NotNull Player getPlayer() { //noinspection ConstantConditions - player is passed up as NotNull return super.getPlayer().getPlayer(); } diff --git a/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/ExprPlaceholderValue.java b/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/ExprPlaceholderValue.java index 6d76329..4e4477c 100644 --- a/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/ExprPlaceholderValue.java +++ b/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/ExprPlaceholderValue.java @@ -84,11 +84,12 @@ private static String[] parsePlaceholders(String[] placeholders, @Nullable Offli List values = new ArrayList<>(); for (OfflinePlayer player : players) { for (String placeholder : placeholders) { + // try to find a plugin this placeholder works for for (PlaceholderPlugin plugin : PlaceholderPlugin.getInstalledPlugins()) { String value = plugin.parsePlaceholder(placeholder, player); if (value != null) { values.add(value); - break; + break; // worked with this plugin, move onto next placeholder } } } @@ -99,6 +100,7 @@ private static String[] parsePlaceholders(String[] placeholders, @Nullable Offli private static String[] parseRelationalPlaceholders(String[] placeholders, Player one, Player two) { List values = new ArrayList<>(); for (String placeholder : placeholders) { + // try to find a plugin this placeholder works for for (PlaceholderPlugin plugin : PlaceholderPlugin.getInstalledPlugins()) { if (!plugin.supportsRelationalPlaceholders()) { continue; @@ -106,7 +108,7 @@ private static String[] parseRelationalPlaceholders(String[] placeholders, Playe String value = plugin.parseRelationalPlaceholder(placeholder, one, two); if (value != null) { values.add(value); - break; + break; // worked with this plugin, move onto next placeholder } } } diff --git a/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/StructCustomPlaceholder.java b/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/StructCustomPlaceholder.java index 12ca97b..5100287 100644 --- a/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/StructCustomPlaceholder.java +++ b/src/main/java/io/github/apickledwalrus/skriptplaceholders/skript/elements/StructCustomPlaceholder.java @@ -155,8 +155,7 @@ public void unload() { } @Override - @Nullable - public String evaluate(String placeholder, @Nullable OfflinePlayer player) { + public @Nullable String evaluate(String placeholder, @Nullable OfflinePlayer player) { if (isRelational) { // a relational placeholder structure cannot evaluate non-relational placeholders return null; }