Commit 7f7fab29 authored by Ashijin's avatar Ashijin
Browse files

Fixed accessories not coming back after exiting spectator mode

parent f4ada349
......@@ -13,9 +13,12 @@ import io.lumine.cosmetics.managers.MCCosmeticsManager;
import io.lumine.cosmetics.players.wardrobe.WardrobeMegDummy;
import io.lumine.utils.Events;
import io.lumine.utils.Schedulers;
import org.bukkit.GameMode;
import org.bukkit.entity.Player;
import org.bukkit.event.entity.PlayerDeathEvent;
import org.bukkit.event.player.PlayerChangedWorldEvent;
import org.bukkit.event.player.PlayerGameModeChangeEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerRespawnEvent;
import org.bukkit.event.player.PlayerTeleportEvent;
......@@ -73,6 +76,26 @@ public class MEGManager extends MCCosmeticsManager<MEGAccessory> {
})
.bindWith(this);
Events.subscribe(PlayerGameModeChangeEvent.class)
.handler(event -> {
if(event.getNewGameMode() == GameMode.SPECTATOR) {
final var player = event.getPlayer();
final var profile = plugin.getProfiles().getProfile(player);
unequip(profile);
} else if(event.getPlayer().getPlayer().getGameMode() == GameMode.SPECTATOR) {
final var player = event.getPlayer();
final var profile = plugin.getProfiles().getProfile(player);
Schedulers.sync().runLater(() -> {
if(player.getGameMode() != GameMode.SPECTATOR) {
equip(profile);
}
}, 5);
}
})
.bindWith(this);
Events.subscribe(PlayerTeleportEvent.class)
.handler(event -> {
final var player = event.getPlayer();
......
Markdown is supported
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment