Replace deprecated methods and optimize imports

This commit is contained in:
akastijn 2026-04-04 04:18:05 +02:00
parent 6ff969f051
commit 8b1b3c4b5a
5 changed files with 38 additions and 56 deletions

View File

@ -1,8 +1,8 @@
package com.alttd.easter.glow;
import com.alttd.easter.egg.EggType;
import net.kyori.adventure.text.format.NamedTextColor;
import org.bukkit.Bukkit;
import org.bukkit.ChatColor;
import org.bukkit.entity.Entity;
import org.bukkit.scoreboard.Scoreboard;
import org.bukkit.scoreboard.Team;
@ -22,7 +22,7 @@ public class GlowManager {
team = scoreboard.registerNewTeam(teamName);
team.setCanSeeFriendlyInvisibles(false);
team.setAllowFriendlyFire(true);
team.setColor(colorFor(type));
team.color(colorFor(type));
}
String entry = entity.getUniqueId().toString();
if (!team.hasEntry(entry)) {
@ -30,42 +30,25 @@ public class GlowManager {
}
}
private ChatColor colorFor(EggType type) {
switch (type) {
case BROWN_HUSK:
return ChatColor.DARK_RED; // closest
case RED_SPIDER:
return ChatColor.RED;
case ORANGE_BLAZE:
return ChatColor.GOLD;
case YELLOW_PIGLIN:
return ChatColor.YELLOW;
case LIME_CREEPER:
return ChatColor.GREEN;
case GREEN_ZOMBIE:
return ChatColor.DARK_GREEN;
case LIGHT_BLUE_STRAY:
return ChatColor.AQUA;
case CYAN_GUARDIAN:
return ChatColor.DARK_AQUA;
case BLUE_WARDEN:
return ChatColor.BLUE;
case PURPLE_ENDER_DRAGON:
return ChatColor.DARK_PURPLE;
case MAGENTA_ENDERMAN:
return ChatColor.LIGHT_PURPLE;
case PINK_HOGLIN:
return ChatColor.LIGHT_PURPLE;
case WHITE_SKELETON:
return ChatColor.WHITE;
case LIGHT_GRAY_SILVERFISH:
return ChatColor.GRAY;
case GRAY_WITHER:
return ChatColor.DARK_GRAY;
case BLACK_WITHER_SKELETON:
return ChatColor.BLACK;
default:
return ChatColor.WHITE;
}
private NamedTextColor colorFor(EggType type) {
return switch (type) {
case BROWN_HUSK -> NamedTextColor.DARK_RED; // closest
case RED_SPIDER -> NamedTextColor.RED;
case ORANGE_BLAZE -> NamedTextColor.GOLD;
case YELLOW_PIGLIN -> NamedTextColor.YELLOW;
case LIME_CREEPER -> NamedTextColor.GREEN;
case GREEN_ZOMBIE -> NamedTextColor.DARK_GREEN;
case LIGHT_BLUE_STRAY -> NamedTextColor.AQUA;
case CYAN_GUARDIAN -> NamedTextColor.DARK_AQUA;
case BLUE_WARDEN -> NamedTextColor.BLUE;
case PURPLE_ENDER_DRAGON -> NamedTextColor.DARK_PURPLE;
case MAGENTA_ENDERMAN -> NamedTextColor.LIGHT_PURPLE;
case PINK_HOGLIN -> NamedTextColor.LIGHT_PURPLE;
case WHITE_SKELETON -> NamedTextColor.WHITE;
case LIGHT_GRAY_SILVERFISH -> NamedTextColor.GRAY;
case GRAY_WITHER -> NamedTextColor.DARK_GRAY;
case BLACK_WITHER_SKELETON -> NamedTextColor.BLACK;
default -> NamedTextColor.WHITE;
};
}
}

View File

@ -4,6 +4,7 @@ import com.alttd.easter.config.Messages;
import com.alttd.easter.data.DataManager;
import com.alttd.easter.egg.EggType;
import com.alttd.easter.util.ItemUtils;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import org.bukkit.Bukkit;
import org.bukkit.entity.Player;
import org.bukkit.event.EventHandler;
@ -97,25 +98,24 @@ public class TurnInGuiManager implements Listener {
player.sendRichMessage(Messages.RABBIT.NO_EGGS);
return;
}
int before = dataManager.getPlayerEggs(player.getUniqueId()).size();
int added = dataManager.addEggs(player.getUniqueId(), submitted);
dataManager.addEggs(player.getUniqueId(), submitted);
dataManager.save();
// Dialog formatting for submission summary
List<String> colors = submitted.stream().map(ItemUtils::colorName).toList();
if (colors.size() == 1) {
player.sendRichMessage(Messages.RABBIT.ONE_EGG,
net.kyori.adventure.text.minimessage.tag.resolver.Placeholder.parsed("player", player.getName()),
net.kyori.adventure.text.minimessage.tag.resolver.Placeholder.parsed("egg1", colors.getFirst())
Placeholder.parsed("player", player.getName()),
Placeholder.parsed("egg1", colors.getFirst())
);
} else {
String c1 = !colors.isEmpty() ? colors.get(0) : "";
String c2 = colors.size() > 1 ? colors.get(1) : "";
String c3 = colors.size() > 2 ? colors.get(2) : "";
player.sendRichMessage(Messages.RABBIT.MULTI_EGGS,
net.kyori.adventure.text.minimessage.tag.resolver.Placeholder.parsed("player", player.getName()),
net.kyori.adventure.text.minimessage.tag.resolver.Placeholder.parsed("egg1", c1),
net.kyori.adventure.text.minimessage.tag.resolver.Placeholder.parsed("egg2", c2),
net.kyori.adventure.text.minimessage.tag.resolver.Placeholder.parsed("egg3", c3)
Placeholder.parsed("player", player.getName()),
Placeholder.parsed("egg1", c1),
Placeholder.parsed("egg2", c2),
Placeholder.parsed("egg3", c3)
);
}
int total = dataManager.getPlayerEggs(player.getUniqueId()).size();

View File

@ -16,6 +16,7 @@ import org.bukkit.persistence.PersistentDataType;
import java.util.concurrent.ThreadLocalRandom;
@SuppressWarnings("ClassCanBeRecord")
public class SpawnListener implements Listener {
private final GlowManager glowManager;

View File

@ -6,6 +6,8 @@ import com.alttd.easter.gui.TurnInGuiManager;
import com.alttd.easter.util.Keys;
import net.kyori.adventure.text.minimessage.tag.resolver.Placeholder;
import org.bukkit.Bukkit;
import org.bukkit.World;
import org.bukkit.entity.Entity;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.entity.Rabbit;
@ -16,8 +18,6 @@ import org.bukkit.event.player.PlayerInteractAtEntityEvent;
import org.bukkit.persistence.PersistentDataType;
import org.bukkit.plugin.Plugin;
import java.util.UUID;
@SuppressWarnings("ClassCanBeRecord")
public class RabbitNpcManager implements Listener {
@ -36,11 +36,9 @@ public class RabbitNpcManager implements Listener {
private void spawnOrFindRabbit() {
// Find existing rabbit with tag, else spawn new at config location
UUID rabbitId;
for (org.bukkit.World world : Bukkit.getWorlds()) {
for (org.bukkit.entity.Entity e : world.getEntitiesByClass(Rabbit.class)) {
for (World world : Bukkit.getWorlds()) {
for (Entity e : world.getEntitiesByClass(Rabbit.class)) {
if (e.getPersistentDataContainer().has(Keys.RABBIT_NPC, PersistentDataType.BYTE)) {
rabbitId = e.getUniqueId();
return;
}
}
@ -53,7 +51,6 @@ public class RabbitNpcManager implements Listener {
rabbit.setCustomNameVisible(true);
rabbit.customName(net.kyori.adventure.text.Component.text("Easter Bunny"));
rabbit.getPersistentDataContainer().set(Keys.RABBIT_NPC, PersistentDataType.BYTE, (byte) 1);
rabbitId = rabbit.getUniqueId();
}
@EventHandler

View File

@ -1,7 +1,8 @@
package com.alttd.easter.util;
import com.alttd.easter.egg.EggType;
import org.bukkit.ChatColor;
import net.kyori.adventure.text.Component;
import net.kyori.adventure.text.format.NamedTextColor;
import org.bukkit.inventory.ItemFlag;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta;
@ -38,7 +39,7 @@ public final class ItemUtils {
ItemMeta meta = item.getItemMeta();
meta.addEnchant(type.getEnchantment(), type.getEnchantLevel(), true);
meta.addItemFlags(ItemFlag.HIDE_ENCHANTS);
meta.setDisplayName(ChatColor.GOLD + "Easter Egg - " + prettify(type.name()));
meta.displayName(Component.text("Easter Egg - " + prettify(type.name()), NamedTextColor.GOLD));
meta.getPersistentDataContainer().set(Keys.EGG_ITEM, PersistentDataType.STRING, type.name());
item.setItemMeta(meta);
return item;