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

View File

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

View File

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

View File

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

View File

@ -1,7 +1,8 @@
package com.alttd.easter.util; package com.alttd.easter.util;
import com.alttd.easter.egg.EggType; 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.ItemFlag;
import org.bukkit.inventory.ItemStack; import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.ItemMeta; import org.bukkit.inventory.meta.ItemMeta;
@ -38,7 +39,7 @@ public final class ItemUtils {
ItemMeta meta = item.getItemMeta(); ItemMeta meta = item.getItemMeta();
meta.addEnchant(type.getEnchantment(), type.getEnchantLevel(), true); meta.addEnchant(type.getEnchantment(), type.getEnchantLevel(), true);
meta.addItemFlags(ItemFlag.HIDE_ENCHANTS); 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()); meta.getPersistentDataContainer().set(Keys.EGG_ITEM, PersistentDataType.STRING, type.name());
item.setItemMeta(meta); item.setItemMeta(meta);
return item; return item;