Update gradle standard to 8.14.2

This commit is contained in:
NotAlexNoyle committed 2025-06-18 20:04:01 -04:00
1 parent bf8e5737fa
commit 133318635f
31 files changed
+300 -280

No files matched your search

+24 -26
View File
@@ -1,8 +1,9 @@
plugins {
id("java") // Tell gradle this is a java project.
id("java-library") // Import helper for source-based libraries.
id("com.diffplug.spotless") version "7.0.4" // Import auto-formatter.
id("com.gradleup.shadow") version "8.3.6" // Import shadow API.
java // Tell gradle this is a java project.
eclipse // Import eclipse plugin for IDE integration.
kotlin("jvm") version "2.1.21" // Import kotlin jvm plugin for kotlin/java integration.
}
java {
@@ -11,20 +12,17 @@ java {
}
group = "com.hm.petmaster" // Declare bundle identifier.
version = "1.0" // Declare plugin version (will be in .jar).
val apiVersion = "1.19" // Declare minecraft server target version.
tasks.named<ProcessResources>("processResources") {
val props = mapOf(
"version" to version,
"apiVersion" to apiVersion
)
val props = mapOf("version" to version, "apiVersion" to apiVersion)
inputs.properties(props) // Indicates to rerun if version changes.
filesMatching("plugin.yml") {
expand(props)
}
filesMatching("plugin.yml") { expand(props) }
from("LICENSE") { // Bundle license into .jars.
into("/")
}
@@ -33,15 +31,9 @@ tasks.named<ProcessResources>("processResources") {
repositories {
mavenCentral()
gradlePluginPortal()
maven {
url = uri("https://jitpack.io")
}
maven {
url = uri("https://repo.purpurmc.org/snapshots")
}
maven {
url = uri("https://repo.codemc.io/repository/maven-public/")
}
maven { url = uri("https://jitpack.io") }
maven { url = uri("https://repo.purpurmc.org/snapshots") }
maven { url = uri("https://repo.codemc.io/repository/maven-public/") }
}
dependencies {
@@ -52,7 +44,7 @@ dependencies {
implementation("net.kyori:adventure-text-minimessage:4.17.0") // Adventure Minimessage API.
implementation("net.kyori:adventure-platform-bukkit:4.3.2") // Adventure Minimessage API.
compileOnly(project(":libs:MCShared-OG")) // Import source-based TrueOG Network MCShared-OG API.
compileOnly(project(":libs:Utilities-OG")) // Import source-based TrueOG Network Utilities-OG API.
compileOnlyApi(project(":libs:Utilities-OG")) // Import source-based TrueOG Network Utilities-OG API.
}
tasks.withType<AbstractArchiveTask>().configureEach { // Ensure reproducible .jars
@@ -67,12 +59,11 @@ tasks.shadowJar {
}
tasks.build {
dependsOn(tasks.spotlessApply)
dependsOn(tasks.shadowJar)
}
tasks.jar {
archiveClassifier.set("part")
}
tasks.jar { archiveClassifier.set("part") }
tasks.withType<JavaCompile>().configureEach {
options.compilerArgs.add("-parameters")
@@ -81,13 +72,20 @@ tasks.withType<JavaCompile>().configureEach {
options.isFork = true
}
kotlin {
jvmToolchain(17)
}
java {
toolchain {
languageVersion = JavaLanguageVersion.of(17)
vendor = JvmVendorSpec.GRAAL_VM
}
}
spotless {
java {
removeUnusedImports()
palantirJavaFormat()
}
kotlinGradle {
ktfmt().kotlinlangStyle().configure { it.setMaxWidth(120) }
target("build.gradle.kts", "settings.gradle.kts")
}
}
Binary file not shown.
+1 -1
View File
@@ -1,6 +1,6 @@
distributionBase=GRADLE_USER_HOME
distributionPath=wrapper/dists
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.1-bin.zip
distributionUrl=https\://services.gradle.org/distributions/gradle-8.14.2-bin.zip
networkTimeout=10000
validateDistributionUrl=true
zipStoreBase=GRADLE_USER_HOME
Vendored
+6 -4
View File
@@ -15,6 +15,8 @@
# See the License for the specific language governing permissions and
# limitations under the License.
#
# SPDX-License-Identifier: Apache-2.0
#
##############################################################################
#
@@ -84,7 +86,7 @@ done
# shellcheck disable=SC2034
APP_BASE_NAME=${0##*/}
# Discard cd standard output in case $CDPATH is set (https://github.com/gradle/gradle/issues/25036)
APP_HOME=$( cd "${APP_HOME:-./}" > /dev/null && pwd -P ) || exit
APP_HOME=$( cd -P "${APP_HOME:-./}" > /dev/null && printf '%s\n' "$PWD" ) || exit
# Use the maximum available, or set MAX_FD != -1 to use that value.
MAX_FD=maximum
@@ -112,7 +114,7 @@ case "$( uname )" in #(
NONSTOP* ) nonstop=true ;;
esac
CLASSPATH=$APP_HOME/gradle/wrapper/gradle-wrapper.jar
CLASSPATH="\\\"\\\""
# Determine the Java command to use to start the JVM.
@@ -203,7 +205,7 @@ fi
DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
# Collect all arguments for the java command:
# * DEFAULT_JVM_OPTS, JAVA_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# * DEFAULT_JVM_OPTS, JAVA_OPTS, and optsEnvironmentVar are not allowed to contain shell fragments,
# and any embedded shellness will be escaped.
# * For example: A user cannot expect ${Hostname} to be expanded, as it is an environment variable and will be
# treated as '${Hostname}' itself on the command line.
@@ -211,7 +213,7 @@ DEFAULT_JVM_OPTS='"-Xmx64m" "-Xms64m"'
set -- \
"-Dorg.gradle.appname=$APP_BASE_NAME" \
-classpath "$CLASSPATH" \
org.gradle.wrapper.GradleWrapperMain \
-jar "$APP_HOME/gradle/wrapper/gradle-wrapper.jar" \
"$@"
# Stop when "xargs" is not available.
Vendored
+4 -2
View File
@@ -13,6 +13,8 @@
@rem See the License for the specific language governing permissions and
@rem limitations under the License.
@rem
@rem SPDX-License-Identifier: Apache-2.0
@rem
@if "%DEBUG%"=="" @echo off
@rem ##########################################################################
@@ -68,11 +70,11 @@ goto fail
:execute
@rem Setup the command line
set CLASSPATH=%APP_HOME%\gradle\wrapper\gradle-wrapper.jar
set CLASSPATH=
@rem Execute Gradle
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" org.gradle.wrapper.GradleWrapperMain %*
"%JAVA_EXE%" %DEFAULT_JVM_OPTS% %JAVA_OPTS% %GRADLE_OPTS% "-Dorg.gradle.appname=%APP_BASE_NAME%" -classpath "%CLASSPATH%" -jar "%APP_HOME%\gradle\wrapper\gradle-wrapper.jar" %*
:end
@rem End local scope for the variables with windows NT shell
+3 -3
View File
@@ -1,14 +1,14 @@
rootProject.name = "PetMaster-OG"
// Run the bootstrap at configuration time.
val process = ProcessBuilder("sh", "bootstrap.sh")
.directory(rootDir)
.start()
val process = ProcessBuilder("sh", "bootstrap.sh").directory(rootDir).start()
val exitValue = process.waitFor()
if (exitValue != 0) {
throw GradleException("bootstrap.sh failed with exit code $exitValue")
}
include("libs:MCShared-OG")
include("libs:Utilities-OG")
+35 -23
View File
@@ -1,19 +1,5 @@
package com.hm.petmaster;
import java.io.File;
import java.io.IOException;
import java.util.logging.Level;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.entity.Player;
import org.bukkit.event.HandlerList;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import org.jetbrains.annotations.NotNull;
import com.hm.mcshared.file.CommentedYamlConfiguration;
import com.hm.petmaster.command.EnableDisableCommand;
import com.hm.petmaster.command.FreeCommand;
@@ -33,10 +19,21 @@ import com.hm.petmaster.listener.PlayerLeashListener;
import com.hm.petmaster.listener.PlayerQuitListener;
import com.hm.petmaster.listener.PlayerTameListener;
import com.hm.petmaster.utils.MessageSender;
import java.io.File;
import java.io.IOException;
import java.util.logging.Level;
import net.kyori.adventure.platform.bukkit.BukkitAudiences;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.TextComponent;
import org.bukkit.Bukkit;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.configuration.InvalidConfigurationException;
import org.bukkit.entity.Player;
import org.bukkit.event.HandlerList;
import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin;
import org.jetbrains.annotations.NotNull;
/**
* Manage pets and display useful information via holograms, action bar or chat messages!
@@ -108,11 +105,20 @@ public class PetMaster extends JavaPlugin {
this.messageSender = new MessageSender(this);
getLogger().info("Server version..." + Bukkit.getServer().getBukkitVersion());
getLogger().info("Registered subVersion..." + Bukkit.getServer().getBukkitVersion().replace(".", ",").split(",")[1].split("-")[0]);
getLogger()
.info("Registered subVersion..."
+ Bukkit.getServer()
.getBukkitVersion()
.replace(".", ",")
.split(",")[1]
.split("-")[0]);
getLogger().info("Registering listeners...");
serverVersion = Integer.parseInt(
Bukkit.getServer().getBukkitVersion().replace(".", ",").split(",")[1].split("-")[0]);
serverVersion = Integer.parseInt(Bukkit.getServer()
.getBukkitVersion()
.replace(".", ",")
.split(",")[1]
.split("-")[0]);
playerInteractListener = new PlayerInteractListener(this);
playerLeashListener = new PlayerLeashListener(this);
@@ -153,11 +159,15 @@ public class PetMaster extends JavaPlugin {
// Warn if an outdated entry is contained in the language file
if (lang.contains("petmaster-command-info-hover")) {
getLogger().log(Level.WARNING, "Your language file contains outdated entrys! It is highly reccomended to delete it and let it regenerate so that all messages appear correctly.");
getLogger()
.log(
Level.WARNING,
"Your language file contains outdated entrys! It is highly reccomended to delete it and let it regenerate so that all messages appear correctly.");
}
if (getServer().getPluginManager().isPluginEnabled(this)) {
getLogger().info("Plugin enabled and ready to run! Took " + (System.currentTimeMillis() - startTime) + "ms.");
getLogger()
.info("Plugin enabled and ready to run! Took " + (System.currentTimeMillis() - startTime) + "ms.");
}
}
@@ -206,8 +216,11 @@ public class PetMaster extends JavaPlugin {
yamlConfiguration.loadConfiguration();
} catch (IOException | InvalidConfigurationException e) {
getLogger().severe("Error while loading " + fileName + " file, disabling plugin.");
getLogger().log(Level.SEVERE,
"Verify your syntax by visiting yaml-online-parser.appspot.com and using the following logs: ", e);
getLogger()
.log(
Level.SEVERE,
"Verify your syntax by visiting yaml-online-parser.appspot.com and using the following logs: ",
e);
getServer().getPluginManager().disablePlugin(this);
}
@@ -304,5 +317,4 @@ public class PetMaster extends JavaPlugin {
public MessageSender getMessageSender() {
return messageSender;
}
}
@@ -1,10 +1,9 @@
package com.hm.petmaster.abilities;
import com.hm.petmaster.PetMaster;
import org.bukkit.entity.Player;
import org.bukkit.entity.Tameable;
import com.hm.petmaster.PetMaster;
public class PetAbilities {
PetMaster plugin = PetMaster.getPlugin(PetMaster.class);
@@ -18,15 +17,11 @@ public class PetAbilities {
int healthBonusAmount = plugin.getConfig().getInt("Health-Bonus-Amount");
boolean isHealthBonusEnabled = plugin.getConfig().getBoolean("Health-Bonus-Enabled");
public PetAbilities(PetMaster petmaster) {
this.plugin = petmaster;
}
public void petHealthBonus() {
if(isHealthBonusEnabled == true) {
if (isHealthBonusEnabled == true) {}
}
}
}
@@ -1,8 +1,7 @@
package com.hm.petmaster.command;
import org.bukkit.command.CommandSender;
import com.hm.petmaster.PetMaster;
import org.bukkit.command.CommandSender;
/**
* Class in charge of enabling or disabling the plugin on the fly (/petm enable or /petm disable).
@@ -36,5 +35,4 @@ public class EnableDisableCommand {
public boolean isDisabled() {
return disabled;
}
}
@@ -1,13 +1,11 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import java.util.HashSet;
import java.util.Set;
import java.util.UUID;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
/**
* Class in charge of handling player requests to free a pet (/petm free).
*
@@ -45,5 +43,4 @@ public class FreeCommand {
public boolean collectPendingFreeRequest(Player player) {
return freePetSet.remove(player.getUniqueId());
}
}
@@ -1,8 +1,7 @@
package com.hm.petmaster.command;
import org.bukkit.command.CommandSender;
import com.hm.petmaster.PetMaster;
import org.bukkit.command.CommandSender;
/**
* Class in charge of displaying the plugin's help (/petm help).
@@ -24,7 +23,6 @@ public class HelpCommand {
plugin.getMessageSender().sendMessage(sender, "petmaster-command-info");
if (sender.hasPermission("petmaster.free")) {
plugin.getMessageSender().sendMessage(sender, "petmaster-command-free");
}
@@ -51,5 +49,4 @@ public class HelpCommand {
// Tip message.
plugin.getMessageSender().sendMessage(sender, "petmaster-tip");
}
}
@@ -1,15 +1,12 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import java.util.ArrayList;
import java.util.List;
import org.bukkit.command.CommandSender;
import com.hm.petmaster.PetMaster;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import org.bukkit.command.CommandSender;
/**
* Class in charge of displaying the plugin's extra information (/petm info).
@@ -32,27 +29,38 @@ public class InfoCommand {
*/
public void getInfo(CommandSender sender) {
List<TagResolver> templates = new ArrayList<>();
templates.add(Placeholder.component("name", Component.text(plugin.getPluginMeta().getName())));
templates.add(Placeholder.component("version", Component.text(plugin.getPluginMeta().getVersion())));
templates.add(Placeholder.component("website", Component.text(
plugin.getPluginMeta().getWebsite() != null ? plugin.getPluginMeta().getWebsite() : ""
)));
templates.add(Placeholder.component("author", Component.text(plugin.getPluginMeta().getAuthors().get(0))));
templates.add(Placeholder.component("description-details", Component.text(
plugin.getPluginLang().getString(
templates.add(Placeholder.component(
"name", Component.text(plugin.getPluginMeta().getName())));
templates.add(Placeholder.component(
"version", Component.text(plugin.getPluginMeta().getVersion())));
templates.add(Placeholder.component(
"website",
Component.text(
plugin.getPluginMeta().getWebsite() != null
? plugin.getPluginMeta().getWebsite()
: "")));
templates.add(Placeholder.component(
"author", Component.text(plugin.getPluginMeta().getAuthors().get(0))));
templates.add(
Placeholder.component(
"description-details",
Component.text(
plugin.getPluginLang()
.getString(
"version-command-description-details",
"Manage pets and display useful information via holograms, action bar or chat messages!"
)
)));
templates.add(Placeholder.component("state", Component.text(
plugin.getEnableDisableCommand().isDisabled() ? "NO" : "YES")
));
"Manage pets and display useful information via holograms, action bar or chat messages!"))));
templates.add(Placeholder.component(
"state", Component.text(plugin.getEnableDisableCommand().isDisabled() ? "NO" : "YES")));
plugin.getMessageSender().sendMessage(sender, "version-command-name", templates.toArray(new TagResolver[] {}));
plugin.getMessageSender().sendMessage(sender, "version-command-version", templates.toArray(new TagResolver[]{}));
plugin.getMessageSender().sendMessage(sender, "version-command-website", templates.toArray(new TagResolver[]{}));
plugin.getMessageSender().sendMessage(sender, "version-command-author", templates.toArray(new TagResolver[]{}));
plugin.getMessageSender().sendMessage(sender, "version-command-description", templates.toArray(new TagResolver[]{}));
plugin.getMessageSender().sendMessage(sender, "version-command-enabled", templates.toArray(new TagResolver[]{}));
plugin.getMessageSender()
.sendMessage(sender, "version-command-version", templates.toArray(new TagResolver[] {}));
plugin.getMessageSender()
.sendMessage(sender, "version-command-website", templates.toArray(new TagResolver[] {}));
plugin.getMessageSender()
.sendMessage(sender, "version-command-author", templates.toArray(new TagResolver[] {}));
plugin.getMessageSender()
.sendMessage(sender, "version-command-description", templates.toArray(new TagResolver[] {}));
plugin.getMessageSender()
.sendMessage(sender, "version-command-enabled", templates.toArray(new TagResolver[] {}));
}
}
@@ -1,12 +1,10 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import net.trueog.utilitiesog.UtilitiesOG;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
import net.trueog.utilitiesog.UtilitiesOG;
public class PetInvincibleCommand {
PetMaster plugin = PetMaster.getPlugin(PetMaster.class);
@@ -14,7 +12,6 @@ public class PetInvincibleCommand {
public PetInvincibleCommand(PetMaster petMaster) {
this.plugin = petMaster;
}
public void godPetCommand(CommandSender sender) {
@@ -30,7 +27,5 @@ public class PetInvincibleCommand {
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
return;
}
}
@@ -1,13 +1,10 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import net.trueog.utilitiesog.UtilitiesOG;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
import net.md_5.bungee.api.ChatColor;
import net.trueog.utilitiesog.UtilitiesOG;
public class PetSkillCommand {
PetMaster plugin = PetMaster.getPlugin(PetMaster.class);
@@ -15,7 +12,6 @@ public class PetSkillCommand {
public PetSkillCommand(PetMaster petMaster) {
this.plugin = petMaster;
}
public void petSkillCommand(CommandSender sender) {
@@ -35,25 +31,49 @@ public class PetSkillCommand {
UtilitiesOG.trueogMessage(player, "Pet Boosts Info");
UtilitiesOG.trueogMessage(player, "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" Pet Boost(Enabled): " + "&2" +plugin.getConfig().getBoolean("Pet-Boost-Enabled"));
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" Health Boost(Enabled): " + "&2" + plugin.getConfig().getBoolean("Health-Boost-Enabled"));
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" Damage Boost(Enabled): " + "&2" + plugin.getConfig().getBoolean("Damage-Boost-Enabled"));
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" Speed Boost(Enabled): " + "&2" + plugin.getConfig().getBoolean("Speed-Boost-Enabled"));
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" Defense Boost(Enabled): " + "&2" + plugin.getConfig().getBoolean("Defense-Boost-Enabled"));
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Pet Boost(Enabled): " + "&2"
+ plugin.getConfig().getBoolean("Pet-Boost-Enabled"));
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Health Boost(Enabled): " + "&2"
+ plugin.getConfig().getBoolean("Health-Boost-Enabled"));
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Damage Boost(Enabled): " + "&2"
+ plugin.getConfig().getBoolean("Damage-Boost-Enabled"));
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Speed Boost(Enabled): " + "&2"
+ plugin.getConfig().getBoolean("Speed-Boost-Enabled"));
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Defense Boost(Enabled): " + "&2"
+ plugin.getConfig().getBoolean("Defense-Boost-Enabled"));
UtilitiesOG.trueogMessage(player, " ");
}
// Stats of boosts current pet is giving them.
UtilitiesOG.trueogMessage(player, "Pet Boosts");
UtilitiesOG.trueogMessage(player, "#---------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader()+ "&d" +" Health Boost: "+ "&2" + plugin.getConfig().getDouble("Health-Boost-Amount")+ "&d"+ " %");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader()+ "&d" +" Damage Boost: "+ "&2" + plugin.getConfig().getDouble("Damage-Boost-Amount")+ "&d"+ " %");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader()+ "&d" +" Speed Boost: "+ "&2" + plugin.getConfig().getDouble("Speed-Boost-Amount")+ "&d"+ " %");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader()+ "&d" +" Defense Boost: "+ "&2" + plugin.getConfig().getDouble("Defense-Boost-Amount")+ "&d"+ " %");
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Health Boost: " + "&2"
+ plugin.getConfig().getDouble("Health-Boost-Amount") + "&d" + " %");
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Damage Boost: " + "&2"
+ plugin.getConfig().getDouble("Damage-Boost-Amount") + "&d" + " %");
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Speed Boost: " + "&2"
+ plugin.getConfig().getDouble("Speed-Boost-Amount") + "&d" + " %");
UtilitiesOG.trueogMessage(
player,
plugin.getChatHeader() + "&d" + " Defense Boost: " + "&2"
+ plugin.getConfig().getDouble("Defense-Boost-Amount") + "&d" + " %");
return;
}
}
@@ -1,10 +1,9 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
/**
* Class in charge of reloading the plugin's configuration files (/petm reload).
*
@@ -40,5 +39,4 @@ public class ReloadCommand {
plugin.getMessageSender().sendMessage(sender, "no-permissions");
}
}
}
@@ -1,21 +1,18 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import java.io.File;
import java.io.IOException;
import java.util.UUID;
import java.util.logging.Level;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import org.bukkit.DyeColor;
import org.bukkit.configuration.ConfigurationSection;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
/**
* Class in charge of handling player requests to change default color of a pets
* collar. (/petm setcolor).
@@ -49,7 +46,8 @@ public class SetColorCommand {
playerColorConfig.createNewFile();
}
FileConfiguration config = YamlConfiguration.loadConfiguration(playerColorConfig);
ConfigurationSection playerConfig = config.getConfigurationSection(player.getUniqueId().toString());
ConfigurationSection playerConfig =
config.getConfigurationSection(player.getUniqueId().toString());
if (playerConfig == null) {
playerConfig = config.createSection(player.getUniqueId().toString());
}
@@ -59,7 +57,11 @@ public class SetColorCommand {
plugin.getMessageSender().sendMessage(player, "color-successfully-set");
} catch (IOException e) {
plugin.getLogger().severe("Error while loading " + playerColorConfig.getName());
plugin.getLogger().log(Level.SEVERE, "Verify your syntax by visiting yaml-online-parser.appspot.com and using the following logs: ", e);
plugin.getLogger()
.log(
Level.SEVERE,
"Verify your syntax by visiting yaml-online-parser.appspot.com and using the following logs: ",
e);
}
}
} catch (IllegalArgumentException ex) {
@@ -72,11 +74,11 @@ public class SetColorCommand {
colors.append(' ');
}
}
plugin.getMessageSender().sendMessage(
plugin.getMessageSender()
.sendMessage(
player,
"available-colors",
Placeholder.component("colors", Component.text(colors.toString()))
);
Placeholder.component("colors", Component.text(colors.toString())));
}
}
@@ -91,5 +93,4 @@ public class SetColorCommand {
}
return DyeColor.RED;
}
}
@@ -1,11 +1,9 @@
package com.hm.petmaster.command;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
import com.hm.petmaster.files.PetAbilityFile;
import net.trueog.utilitiesog.UtilitiesOG;
import org.bukkit.entity.Player;
public class SetConfigCommand {
@@ -14,7 +12,6 @@ public class SetConfigCommand {
public SetConfigCommand(PetMaster plugin) {
this.plugin = plugin;
}
public void setConfigCommand(Player player, String[] args) {
@@ -32,11 +29,10 @@ public class SetConfigCommand {
UtilitiesOG.trueogMessage(player, "&d" + "# PetMaster Dev Note #");
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " This is a test feature!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
}
}
if (args[1].equalsIgnoreCase("pet-abilities")) {
@@ -48,13 +44,14 @@ public class SetConfigCommand {
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, "&d" + "# PetMaster Dev Note #");
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" This is a test feature!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " This is a test feature!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
UtilitiesOG.trueogMessage(player, "You have enabled Pet Abilities!");
PetAbilityFile.getPetAbilities().set("Is-Pet-Abilities-Enabled", true);
}
if (args[3].equalsIgnoreCase("false")) {
@@ -63,15 +60,15 @@ public class SetConfigCommand {
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, "&d" + "# PetMaster Dev Note #");
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" This is a test feature!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " This is a test feature!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
UtilitiesOG.trueogMessage(player, "You have disabled Pet Abilities!");
PetAbilityFile.getPetAbilities().set("Is-Pet-Abilities-Enabled", false);
}
}
if (args[2].equalsIgnoreCase("set")) {
@@ -81,11 +78,12 @@ public class SetConfigCommand {
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, "&d" + "# PetMaster Dev Note #");
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" This is a test feature!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " This is a test feature!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
UtilitiesOG.trueogMessage(player, "You have enabled Pet Abilities!");
}
if (args[3].equalsIgnoreCase("damage")) {
@@ -94,11 +92,12 @@ public class SetConfigCommand {
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, "&d" + "# PetMaster Dev Note #");
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" This is a test feature!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " This is a test feature!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
UtilitiesOG.trueogMessage(player, "You have enabled Pet Abilities!");
}
if (args[3].equalsIgnoreCase("speed")) {
@@ -107,11 +106,12 @@ public class SetConfigCommand {
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, "&d" + "# PetMaster Dev Note #");
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" This is a test feature!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " This is a test feature!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
UtilitiesOG.trueogMessage(player, "You have enabled Pet Abilities!");
}
if (args[3].equalsIgnoreCase("protection")) {
@@ -120,21 +120,16 @@ public class SetConfigCommand {
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, "&d" + "# PetMaster Dev Note #");
UtilitiesOG.trueogMessage(player, "&d" + "#-------------------------#");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" +" This is a test feature!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " This is a test feature!");
UtilitiesOG.trueogMessage(
player, plugin.getChatHeader() + "&d" + " It will be available soon!");
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
UtilitiesOG.trueogMessage(player, "You have enabled Pet Abilities!");
}
}
}
}
}
}
}
@@ -1,14 +1,12 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import java.util.HashMap;
import java.util.Map;
import java.util.UUID;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
/**
* Class in charge of handling player requests to change ownership of a pet (/petm setowner).
*
@@ -41,7 +39,8 @@ public class SetOwnerCommand {
plugin.getMessageSender().sendMessage(player, "no-permissions");
} else if (plugin.getEnableDisableCommand().isDisabled()) {
plugin.getMessageSender().sendMessage(player, "currently-disabled");
} else if (! player.hasPermission("petmaster.admin") && newOwner.getUniqueId().equals(player.getUniqueId())) {
} else if (!player.hasPermission("petmaster.admin")
&& newOwner.getUniqueId().equals(player.getUniqueId())) {
plugin.getMessageSender().sendMessage(player, "cannot-change-to-yourself");
} else {
changeOwnershipMap.put(player.getUniqueId(), newOwner);
@@ -57,5 +56,4 @@ public class SetOwnerCommand {
public Player collectPendingSetOwnershipRequest(Player player) {
return changeOwnershipMap.remove(player.getUniqueId());
}
}
@@ -1,12 +1,10 @@
package com.hm.petmaster.command;
import com.hm.petmaster.PetMaster;
import net.trueog.utilitiesog.UtilitiesOG;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
import net.trueog.utilitiesog.UtilitiesOG;
public class ShareCommand {
PetMaster plugin = PetMaster.getPlugin(PetMaster.class);
@@ -14,7 +12,6 @@ public class ShareCommand {
public ShareCommand(PetMaster petMaster) {
this.plugin = petMaster;
}
public void sharePetCommand(CommandSender sender) {
@@ -30,7 +27,5 @@ public class ShareCommand {
UtilitiesOG.trueogMessage(player, plugin.getChatHeader() + "&d" + " Enjoy!");
return;
}
}
@@ -2,7 +2,6 @@ package com.hm.petmaster.files;
import java.io.File;
import java.io.IOException;
import org.bukkit.Bukkit;
import org.bukkit.configuration.file.FileConfiguration;
import org.bukkit.configuration.file.YamlConfiguration;
@@ -38,7 +37,8 @@ public class PetAbilityFile {
private static int parrotProtection = 0;
public static void petAbilitySetup() {
petAbilityFile = new File(Bukkit.getServer().getPluginManager().getPlugin("PetMaster").getDataFolder(),"petability.yml" );
petAbilityFile = new File(
Bukkit.getServer().getPluginManager().getPlugin("PetMaster").getDataFolder(), "petability.yml");
if (!petAbilityFile.exists()) {
try {
@@ -48,7 +48,6 @@ public class PetAbilityFile {
}
}
petAbility = YamlConfiguration.loadConfiguration(petAbilityFile);
}
public static FileConfiguration getPetAbilities() {
@@ -60,7 +59,6 @@ public class PetAbilityFile {
petAbility.save(petAbilityFile);
} catch (IOException e) {
e.printStackTrace();
}
}
@@ -96,5 +94,4 @@ public class PetAbilityFile {
petAbility.set("Parrot-Speed", parrotSpeed);
petAbility.set("Parrot-Protection", parrotProtection);
}
}
@@ -1,8 +1,7 @@
package com.hm.petmaster.listener;
import org.bukkit.event.Listener;
import com.hm.petmaster.PetMaster;
import org.bukkit.event.Listener;
public class PetDeathListener implements Listener {
PetMaster plugin;
@@ -1,5 +1,6 @@
package com.hm.petmaster.listener;
import com.hm.petmaster.PetMaster;
import org.bukkit.entity.Creature;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
@@ -9,8 +10,6 @@ import org.bukkit.event.EventHandler;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityDamageByEntityEvent;
import com.hm.petmaster.PetMaster;
/**
* Class used to prevent player damage to pets who have an owner.
*
@@ -59,15 +58,16 @@ public class PlayerAttackListener implements Listener {
}
private boolean isDamagerPlayerDifferentFromDamagedOwner(Entity damager, Entity damaged) {
return damager instanceof Player && ! ((Tameable) damaged).getOwner().getUniqueId().equals(damager.getUniqueId());
return damager instanceof Player
&& !((Tameable) damaged).getOwner().getUniqueId().equals(damager.getUniqueId());
}
private boolean isDamagedTargettingDamager(Entity damager, Entity damaged) {
if (damaged instanceof Creature) {
Creature creature = (Creature) damaged;
return creature.getTarget() != null && creature.getTarget().getUniqueId().equals(damager.getUniqueId());
return creature.getTarget() != null
&& creature.getTarget().getUniqueId().equals(damager.getUniqueId());
}
return false;
}
}
@@ -1,5 +1,6 @@
package com.hm.petmaster.listener;
import com.hm.petmaster.PetMaster;
import org.bukkit.DyeColor;
import org.bukkit.entity.Cat;
import org.bukkit.entity.EntityType;
@@ -9,8 +10,6 @@ import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityBreedEvent;
import com.hm.petmaster.PetMaster;
public class PlayerBreedListener implements Listener {
private final PetMaster plugin;
@@ -27,9 +26,9 @@ public class PlayerBreedListener implements Listener {
cat.setCollarColor(color);
} else if (event.getEntity().getType().equals(EntityType.WOLF)) {
Wolf wolf = ((Wolf) event.getEntity());
DyeColor color = plugin.getSetColorCommand().getColor(wolf.getOwner().getUniqueId());
DyeColor color =
plugin.getSetColorCommand().getColor(wolf.getOwner().getUniqueId());
wolf.setCollarColor(color);
}
}
}
@@ -1,9 +1,14 @@
package com.hm.petmaster.listener;
import com.hm.mcshared.event.PlayerChangeAnimalOwnershipEvent;
import com.hm.petmaster.PetMaster;
import eu.decentsoftware.holograms.api.DHAPI;
import java.lang.reflect.Method;
import java.util.Collections;
import java.util.List;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.milkbowl.vault.economy.Economy;
import org.bukkit.Bukkit;
import org.bukkit.Location;
import org.bukkit.attribute.Attribute;
@@ -26,14 +31,6 @@ import org.bukkit.inventory.EquipmentSlot;
import org.bukkit.plugin.RegisteredServiceProvider;
import org.bukkit.scheduler.BukkitRunnable;
import com.hm.mcshared.event.PlayerChangeAnimalOwnershipEvent;
import com.hm.petmaster.PetMaster;
import eu.decentsoftware.holograms.api.DHAPI;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.milkbowl.vault.economy.Economy;
/**
* Class used to display holograms, change the owner of a pet or free a pet.
*
@@ -72,8 +69,8 @@ public class PlayerInteractListener implements Listener {
this.plugin = petMaster;
// Try to retrieve an Economy instance from Vault.
if (Bukkit.getServer().getPluginManager().getPlugin("Vault") != null) {
RegisteredServiceProvider<Economy> rsp = Bukkit.getServer().getServicesManager()
.getRegistration(Economy.class);
RegisteredServiceProvider<Economy> rsp =
Bukkit.getServer().getServicesManager().getRegistration(Economy.class);
if (rsp != null) {
economy = rsp.getProvider();
}
@@ -101,7 +98,8 @@ public class PlayerInteractListener implements Listener {
if (hologramMessage && !decentHologramsAvailable) {
hologramMessage = false;
actionBarMessage = true;
plugin.getLogger().warning(
plugin.getLogger()
.warning(
"DecentHolograms was not found; disabling usage of holograms and enabling action bar messages.");
}
}
@@ -151,7 +149,8 @@ public class PlayerInteractListener implements Listener {
* @return true if the event should be handled, false otherwise
*/
private boolean shouldHandleEvent(PlayerInteractEntityEvent event) {
return !plugin.getEnableDisableCommand().isDisabled() && event.getRightClicked() instanceof Tameable
return !plugin.getEnableDisableCommand().isDisabled()
&& event.getRightClicked() instanceof Tameable
// On Minecraft 1.9+, the event is fired once per hand (HAND and OFF_HAND).
&& (plugin.getServerVersion() < 9 || event.getHand() == EquipmentSlot.HAND);
}
@@ -171,12 +170,13 @@ public class PlayerInteractListener implements Listener {
player.sendMessage(plugin.getChatHeader()
+ plugin.getPluginLang().getString("owner-changed", "This pet was given to a new owner!"));
newOwner.sendMessage(plugin.getChatHeader()
+ plugin.getPluginLang().getString("new-owner", "Player PLAYER gave you ownership of a pet!")
+ plugin.getPluginLang()
.getString("new-owner", "Player PLAYER gave you ownership of a pet!")
.replace("PLAYER", oldOwner.getName()));
// Create new event to allow other plugins to be aware of the ownership change.
PlayerChangeAnimalOwnershipEvent playerChangeAnimalOwnershipEvent = new PlayerChangeAnimalOwnershipEvent(
oldOwner, newOwner, tameable);
PlayerChangeAnimalOwnershipEvent playerChangeAnimalOwnershipEvent =
new PlayerChangeAnimalOwnershipEvent(oldOwner, newOwner, tameable);
Bukkit.getServer().getPluginManager().callEvent(playerChangeAnimalOwnershipEvent);
}
}
@@ -210,8 +210,8 @@ public class PlayerInteractListener implements Listener {
plugin.getMessageSender().sendMessage(player, "pet-freed");
// Create new event to allow other plugins to be aware of the freeing.
PlayerChangeAnimalOwnershipEvent playerChangeAnimalOwnershipEvent = new PlayerChangeAnimalOwnershipEvent(
oldOwner, null, tameable);
PlayerChangeAnimalOwnershipEvent playerChangeAnimalOwnershipEvent =
new PlayerChangeAnimalOwnershipEvent(oldOwner, null, tameable);
Bukkit.getServer().getPluginManager().callEvent(playerChangeAnimalOwnershipEvent);
}
}
@@ -256,16 +256,19 @@ public class PlayerInteractListener implements Listener {
Location eventLocation = ((Animals) tameable).getLocation();
// Create location with offset.
Location hologramLocation = new Location(eventLocation.getWorld(), eventLocation.getX(),
eventLocation.getY() + offset, eventLocation.getZ());
Location hologramLocation = new Location(
eventLocation.getWorld(),
eventLocation.getX(),
eventLocation.getY() + offset,
eventLocation.getZ());
String hologramname = player.getUniqueId() + "_pm";
List<String> lines = Collections.singletonList(plugin.getMessageSender().parseMessageToString(
List<String> lines = Collections.singletonList(plugin.getMessageSender()
.parseMessageToString(
"petmaster-hologram",
Placeholder.component("owner", Component.text(owner.getName() != null ? owner.getName() : "null"))
));
Placeholder.component(
"owner", Component.text(owner.getName() != null ? owner.getName() : "null"))));
if (DHAPI.getHologram(hologramname) == null) {
DHAPI.createHologram(hologramname, hologramLocation, lines);
@@ -273,7 +276,6 @@ public class PlayerInteractListener implements Listener {
return;
}
// Runnable to delete hologram.
new BukkitRunnable() {
@@ -289,18 +291,28 @@ public class PlayerInteractListener implements Listener {
Component healthInfo = null;
if (showHealth) {
Animals animal = (Animals) tameable;
healthInfo = plugin.getMessageSender().parseMessage(
healthInfo = plugin.getMessageSender()
.parseMessage(
plugin.getPluginLang().getString("petmaster-health"),
Placeholder.component("current-health", Component.text(String.format("%.1f", animal.getHealth()))),
Placeholder.component("max-health", Component.text(
plugin.getServerVersion() < 9 ? String.format("%.1f", animal.getMaxHealth())
: String.format("%.1f", animal.getAttribute(Attribute.GENERIC_MAX_HEALTH).getValue()))));
Placeholder.component(
"current-health", Component.text(String.format("%.1f", animal.getHealth()))),
Placeholder.component(
"max-health",
Component.text(
plugin.getServerVersion() < 9
? String.format("%.1f", animal.getMaxHealth())
: String.format(
"%.1f",
animal.getAttribute(Attribute.GENERIC_MAX_HEALTH)
.getValue()))));
}
if (chatMessage) {
Component parsedComponent = plugin.getMessageSender().parseMessage(
Component parsedComponent = plugin.getMessageSender()
.parseMessage(
plugin.getPluginLang().getString("petmaster-chat"),
Placeholder.component("owner", Component.text(owner.getName() != null ? owner.getName() : "null")));
Placeholder.component(
"owner", Component.text(owner.getName() != null ? owner.getName() : "null")));
if (healthInfo != null) {
parsedComponent = parsedComponent.append(healthInfo);
}
@@ -308,9 +320,11 @@ public class PlayerInteractListener implements Listener {
}
if (actionBarMessage) {
Component parsedComponent = plugin.getMessageSender().parseMessage(
Component parsedComponent = plugin.getMessageSender()
.parseMessage(
plugin.getPluginLang().getString("petmaster-action-bar"),
Placeholder.component("owner", Component.text(owner.getName() != null ? owner.getName() : "null")));
Placeholder.component(
"owner", Component.text(owner.getName() != null ? owner.getName() : "null")));
if (healthInfo != null) {
parsedComponent = parsedComponent.append(healthInfo);
}
@@ -329,24 +343,23 @@ public class PlayerInteractListener implements Listener {
// Charge player for changing ownership.
if (price > 0 && !player.hasPermission("petmaster.admin") && economy != null) {
// If server has set different currency names depending on amount, adapt message accordingly.
String priceWithCurrency = price + " "
+ (price > 1 ? economy.currencyNamePlural() : economy.currencyNameSingular());
String priceWithCurrency =
price + " " + (price > 1 ? economy.currencyNamePlural() : economy.currencyNameSingular());
if (economy.getBalance(player) < price) {
plugin.getMessageSender().sendMessage(
plugin.getMessageSender()
.sendMessage(
player,
"not-enough-money",
Placeholder.component("amount", Component.text(priceWithCurrency))
);
Placeholder.component("amount", Component.text(priceWithCurrency)));
return false;
}
economy.withdrawPlayer(player, price);
plugin.getMessageSender().sendMessage(
plugin.getMessageSender()
.sendMessage(
player,
"change-owner-price",
Placeholder.component("amount", Component.text(priceWithCurrency))
);
Placeholder.component("amount", Component.text(priceWithCurrency)));
}
return true;
}
}
@@ -1,5 +1,6 @@
package com.hm.petmaster.listener;
import com.hm.petmaster.PetMaster;
import org.bukkit.entity.AnimalTamer;
import org.bukkit.entity.Entity;
import org.bukkit.entity.Player;
@@ -9,8 +10,6 @@ import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.PlayerLeashEntityEvent;
import com.hm.petmaster.PetMaster;
public class PlayerLeashListener implements Listener {
private final PetMaster plugin;
@@ -28,20 +27,18 @@ public class PlayerLeashListener implements Listener {
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onPlayerLeashEntityEvent(PlayerLeashEntityEvent event) {
if (plugin.getEnableDisableCommand().isDisabled() || ! disableLeash)
return;
if (plugin.getEnableDisableCommand().isDisabled() || !disableLeash) return;
Entity entity = event.getEntity();
if (! (entity instanceof Tameable))
return;
if (!(entity instanceof Tameable)) return;
Player player = event.getPlayer();
Tameable tameable = (Tameable) entity;
AnimalTamer currentOwner = tameable.getOwner();
if (currentOwner == null || currentOwner.getUniqueId().equals(player.getUniqueId()) || player.hasPermission("petmaster.admin"))
return;
if (currentOwner == null
|| currentOwner.getUniqueId().equals(player.getUniqueId())
|| player.hasPermission("petmaster.admin")) return;
plugin.getMessageSender().sendMessage(player, "not-owner");
event.setCancelled(true);
}
}
@@ -1,12 +1,11 @@
package com.hm.petmaster.listener;
import com.hm.petmaster.PetMaster;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.player.PlayerQuitEvent;
import com.hm.petmaster.PetMaster;
/**
* Class used to empty the change ownership map when a player quits the server, to avoid memory leaks.
*
@@ -27,5 +26,4 @@ public class PlayerQuitListener implements Listener {
plugin.getSetOwnerCommand().collectPendingSetOwnershipRequest(event.getPlayer());
plugin.getFreeCommand().collectPendingFreeRequest(event.getPlayer());
}
}
@@ -1,5 +1,6 @@
package com.hm.petmaster.listener;
import com.hm.petmaster.PetMaster;
import org.bukkit.DyeColor;
import org.bukkit.entity.Cat;
import org.bukkit.entity.EntityType;
@@ -9,8 +10,6 @@ import org.bukkit.event.EventPriority;
import org.bukkit.event.Listener;
import org.bukkit.event.entity.EntityTameEvent;
import com.hm.petmaster.PetMaster;
public class PlayerTameListener implements Listener {
private final PetMaster plugin;
@@ -22,12 +21,13 @@ public class PlayerTameListener implements Listener {
@EventHandler(priority = EventPriority.NORMAL, ignoreCancelled = true)
public void onPlayerTamePet(EntityTameEvent event) {
if (plugin.getServerVersion() >= 14 && event.getEntity().getType().equals(EntityType.CAT)) {
DyeColor color = plugin.getSetColorCommand().getColor(event.getOwner().getUniqueId());
DyeColor color =
plugin.getSetColorCommand().getColor(event.getOwner().getUniqueId());
((Cat) event.getEntity()).setCollarColor(color);
} else if (event.getEntity().getType().equals(EntityType.WOLF)) {
DyeColor color = plugin.getSetColorCommand().getColor(event.getOwner().getUniqueId());
DyeColor color =
plugin.getSetColorCommand().getColor(event.getOwner().getUniqueId());
((Wolf) event.getEntity()).setCollarColor(color);
}
}
}
@@ -1,20 +1,17 @@
package com.hm.petmaster.utils;
import com.hm.petmaster.PetMaster;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import com.hm.petmaster.PetMaster;
import net.kyori.adventure.audience.Audience;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.minimessage.MiniMessage;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import net.kyori.adventure.text.minimessage.tag.resolver.TagResolver;
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class MessageSender {
@@ -26,17 +23,18 @@ public class MessageSender {
miniMessage = MiniMessage.miniMessage();
}
public String parseMessageToString(String key, TagResolver... tagResolvers) {
return LegacyComponentSerializer.builder().useUnusualXRepeatedCharacterHexFormat().build().serialize(
parseMessage(plugin.getPluginLang().getString(key), tagResolvers));
return LegacyComponentSerializer.builder()
.useUnusualXRepeatedCharacterHexFormat()
.build()
.serialize(parseMessage(plugin.getPluginLang().getString(key), tagResolvers));
}
public Component parseMessage(String message, TagResolver... tagResolvers) {
List<TagResolver> allTagResolvers = new ArrayList<>(Arrays.stream(tagResolvers).toList());
List<TagResolver> allTagResolvers =
new ArrayList<>(Arrays.stream(tagResolvers).toList());
allTagResolvers.add(Placeholder.parsed(
"prefix",
plugin.getPluginLang().getString("petmaster-prefix", "<gray>[<gold>♞<gray>] ")));
"prefix", plugin.getPluginLang().getString("petmaster-prefix", "<gray>[<gold>♞<gray>] ")));
return miniMessage.deserialize(message, allTagResolvers.toArray(new TagResolver[] {}));
}
@@ -82,5 +80,4 @@ public class MessageSender {
audience.sendMessage(Component.newline());
}
}
}
@@ -4,7 +4,6 @@ import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
import org.bukkit.command.Command;
import org.bukkit.command.CommandSender;
import org.bukkit.command.TabCompleter;
@@ -13,7 +12,18 @@ public class TabCompleterPetm implements TabCompleter{
@Override
public List<String> onTabComplete(CommandSender sender, Command command, String alias, String[] args) {
List<String> list = Arrays.asList("help", "info" ,"reload", "disable", "enable", " setowner", "free", "setcolor", "sharepet", "godpet", "petskill");
List<String> list = Arrays.asList(
"help",
"info",
"reload",
"disable",
"enable",
" setowner",
"free",
"setcolor",
"sharepet",
"godpet",
"petskill");
String input = args[0].toLowerCase();
List<String> completions = null;
@@ -31,5 +41,4 @@ public class TabCompleterPetm implements TabCompleter{
}
return completions;
}
}