diff --git a/.idea/hotswap_agent.xml b/.idea/hotswap_agent.xml
new file mode 100644
index 00000000..119f6201
--- /dev/null
+++ b/.idea/hotswap_agent.xml
@@ -0,0 +1,6 @@
+
+
+
+
+
+
\ No newline at end of file
diff --git a/.idea/modules/HMCCosmetics.test.iml b/.idea/modules/HMCCosmetics.test.iml
index c4622759..a1e06243 100644
--- a/.idea/modules/HMCCosmetics.test.iml
+++ b/.idea/modules/HMCCosmetics.test.iml
@@ -9,4 +9,7 @@
+
+
+
\ No newline at end of file
diff --git a/build.gradle b/build.gradle
index 95d8d559..700ef245 100644
--- a/build.gradle
+++ b/build.gradle
@@ -12,9 +12,7 @@ repositories {
maven { url = 'https://papermc.io/repo/repository/maven-public/' }
maven { url = 'https://repo.mattstudios.me/artifactory/public/' }
maven { url = 'https://jitpack.io' }
- maven { url = 'https://repo.extendedclip.com/content/repositories/placeholderapi/' }
maven { url = 'https://repo.leonardobishop.com/releases/' }
- maven { url = 'https://jitpack.io' }
maven { url = 'https://repo.dmulloy2.net/repository/public/' }
}
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/HMCCosmetics.java b/src/main/java/io/github/fisher2911/hmccosmetics/HMCCosmetics.java
index a01e93c6..a0fda8ae 100644
--- a/src/main/java/io/github/fisher2911/hmccosmetics/HMCCosmetics.java
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/HMCCosmetics.java
@@ -1,13 +1,14 @@
package io.github.fisher2911.hmccosmetics;
-import com.comphenix.protocol.ProtocolLib;
import com.comphenix.protocol.ProtocolLibrary;
import com.comphenix.protocol.ProtocolManager;
+
import io.github.fisher2911.hmccosmetics.command.CosmeticsCommand;
import io.github.fisher2911.hmccosmetics.gui.ArmorItem;
import io.github.fisher2911.hmccosmetics.gui.CosmeticsMenu;
import io.github.fisher2911.hmccosmetics.listener.ClickListener;
import io.github.fisher2911.hmccosmetics.listener.JoinListener;
+import io.github.fisher2911.hmccosmetics.listener.RespawnListener;
import io.github.fisher2911.hmccosmetics.listener.TeleportListener;
import io.github.fisher2911.hmccosmetics.message.MessageHandler;
import io.github.fisher2911.hmccosmetics.message.Messages;
@@ -51,7 +52,8 @@ public class HMCCosmetics extends JavaPlugin {
private void registerListeners() {
List.of(new JoinListener(this),
new ClickListener(this),
- new TeleportListener(this)).
+ new TeleportListener(this),
+ new RespawnListener(this)).
forEach(listener ->
this.getServer().getPluginManager().registerEvents(listener, this)
);
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/listener/RespawnListener.java b/src/main/java/io/github/fisher2911/hmccosmetics/listener/RespawnListener.java
new file mode 100644
index 00000000..cc6581e4
--- /dev/null
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/listener/RespawnListener.java
@@ -0,0 +1,33 @@
+package io.github.fisher2911.hmccosmetics.listener;
+
+import io.github.fisher2911.hmccosmetics.HMCCosmetics;
+import io.github.fisher2911.hmccosmetics.user.User;
+import io.github.fisher2911.hmccosmetics.user.UserManager;
+import org.bukkit.Bukkit;
+import org.bukkit.entity.Player;
+import org.bukkit.event.EventHandler;
+import org.bukkit.event.Listener;
+import org.bukkit.event.player.PlayerRespawnEvent;
+
+import java.util.Optional;
+
+public class RespawnListener implements Listener {
+
+ private final HMCCosmetics plugin;
+ private final UserManager userManager;
+
+ public RespawnListener(final HMCCosmetics plugin) {
+ this.plugin = plugin;
+ this.userManager = this.plugin.getUserManager();
+ }
+
+ @EventHandler
+ public void onPlayerRespawn(final PlayerRespawnEvent event) {
+ Bukkit.getScheduler().runTaskLater(this.plugin, () -> {
+ final Player player = event.getPlayer();
+ final Optional optionalUser = this.userManager.get(player.getUniqueId());
+
+ optionalUser.ifPresent(user -> user.setHat(user.getPlayerArmor().getHat(), this.userManager));
+ }, 1);
+ }
+}
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/message/Adventure.java b/src/main/java/io/github/fisher2911/hmccosmetics/message/Adventure.java
index df99386e..2c8982fb 100644
--- a/src/main/java/io/github/fisher2911/hmccosmetics/message/Adventure.java
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/message/Adventure.java
@@ -20,5 +20,4 @@ public class Adventure {
TransformationType.COLOR
).build())
.build();
-
}
diff --git a/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java b/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java
index 5249bb1b..b20605e0 100644
--- a/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java
+++ b/src/main/java/io/github/fisher2911/hmccosmetics/user/User.java
@@ -102,12 +102,12 @@ public class User {
if (hat.getId().equals(this.playerArmor.getHat().getId())) {
this.setHat(new ArmorItem(
- new ItemStack(Material.AIR),
- "",
- new ArrayList<>(),
- "",
- ArmorItem.Type.HAT
- ),
+ new ItemStack(Material.AIR),
+ "",
+ new ArrayList<>(),
+ "",
+ ArmorItem.Type.HAT
+ ),
userManager);
messageHandler.sendMessage(
@@ -136,7 +136,7 @@ public class User {
// teleports armor stand to the correct position
public void updateArmorStand() {
final ArmorItem backpackArmorItem = this.playerArmor.getBackpack();
- if (backpackArmorItem == null ) {
+ if (backpackArmorItem == null) {
this.despawnAttached();
return;
}