Skip to content

Commit 8e3737e

Browse files
committed
Пофикшены устаревшие методы и дюп бутылочек.
1 parent ed8ed09 commit 8e3737e

File tree

6 files changed

+57
-13
lines changed

6 files changed

+57
-13
lines changed

pom.xml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@
55

66
<groupId>com.trassert</groupId>
77
<artifactId>RecallPotion</artifactId>
8-
<version>1.6.1</version>
8+
<version>1.7.0</version>
99
<packaging>jar</packaging>
1010

1111
<name>Return Potion</name>

src/main/java/com/trassert/recallpotion/commands/RecallPotionCommand.java

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -20,7 +20,7 @@ public boolean onCommand(CommandSender sender, Command command, String label, St
2020
return true;
2121
}
2222

23-
String version = plugin.getDescription().getVersion();
23+
String version = plugin.getPluginMeta().getVersion();
2424

2525
if (args.length == 0) {
2626
sender.sendMessage("§6RecallPotion Plugin v" + version);

src/main/java/com/trassert/recallpotion/listeners/PlayerInteractListener.java

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -54,7 +54,13 @@ public void onPlayerInteract(PlayerInteractEvent event) {
5454
player.setLevel(player.getLevel() - xpCost);
5555

5656
ItemStack recallPotion = plugin.getRecipeManager().createRecallPotion();
57-
player.getInventory().addItem(recallPotion);
57+
if (itemInHand.getAmount() > 1) {
58+
itemInHand.setAmount(itemInHand.getAmount() - 1);
59+
player.getInventory().setItemInMainHand(itemInHand);
60+
player.getInventory().addItem(recallPotion);
61+
} else {
62+
player.getInventory().setItemInMainHand(recallPotion);
63+
}
5864

5965
player.sendMessage(plugin.getConfigManager().getMessage("portal-extract-success"));
6066
player.playSound(player.getLocation(), plugin.getConfigManager().getSound("portal-extract"), 1.0f, 1.0f);
@@ -69,7 +75,7 @@ public void performRecallTeleport(Player player) {
6975
return;
7076
}
7177

72-
Location home = player.getBedSpawnLocation();
78+
Location home = player.getRespawnLocation();
7379
if (home == null) {
7480
home = player.getLocation();
7581
player.sendMessage(plugin.getConfigManager().getMessage("no-home-set"));

src/main/java/com/trassert/recallpotion/managers/AdvancementManager.java

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -42,7 +42,7 @@ private void registerAdvancement(NamespacedKey key, String configPath) {
4242
cfg.getAdvancementParent(configPath));
4343

4444
try {
45-
Bukkit.getUnsafe().loadAdvancement(key, json);
45+
unsafeLoadAdvancement(key, json);
4646
plugin.getLogger().info("Registered advancement: " + key.getKey());
4747
} catch (IllegalArgumentException e) {
4848
plugin.getLogger().log(Level.WARNING,
@@ -56,11 +56,21 @@ public void unregisterAdvancements() {
5656
revokeAdvancement(player, portalExtractKey);
5757
}
5858

59-
Bukkit.getUnsafe().removeAdvancement(homeReturnKey);
60-
Bukkit.getUnsafe().removeAdvancement(portalExtractKey);
59+
unsafeRemoveAdvancement(homeReturnKey);
60+
unsafeRemoveAdvancement(portalExtractKey);
6161
plugin.getLogger().info("Unregistered custom advancements.");
6262
}
6363

64+
@SuppressWarnings("deprecation")
65+
private void unsafeLoadAdvancement(NamespacedKey key, String json) {
66+
plugin.getServer().getUnsafe().loadAdvancement(key, json);
67+
}
68+
69+
@SuppressWarnings("deprecation")
70+
private void unsafeRemoveAdvancement(NamespacedKey key) {
71+
plugin.getServer().getUnsafe().removeAdvancement(key);
72+
}
73+
6474
private String createAdvancementJson(String title, String description, Material icon, String frame, String parent) {
6575
JsonObject root = new JsonObject();
6676

src/main/java/com/trassert/recallpotion/managers/ConfigManager.java

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
package com.trassert.recallpotion.managers;
22

33
import com.trassert.recallpotion.RecallPotionPlugin;
4-
import org.bukkit.ChatColor;
4+
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
55
import org.bukkit.Material;
66
import org.bukkit.NamespacedKey;
77
import org.bukkit.Registry;
@@ -109,6 +109,8 @@ public List<String> getPotionLore() {
109109
}
110110

111111
private String translate(String input) {
112-
return ChatColor.translateAlternateColorCodes('&', input);
112+
if (input == null) return "";
113+
var component = LegacyComponentSerializer.legacyAmpersand().deserialize(input);
114+
return LegacyComponentSerializer.legacySection().serialize(component);
113115
}
114116
}

src/main/java/com/trassert/recallpotion/managers/RecipeManager.java

Lines changed: 30 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,10 @@
77
import org.bukkit.inventory.ShapedRecipe;
88
import org.bukkit.inventory.meta.PotionMeta;
99
import org.bukkit.potion.PotionType;
10+
import net.kyori.adventure.text.Component;
11+
import net.kyori.adventure.text.serializer.legacy.LegacyComponentSerializer;
12+
import java.util.List;
13+
import java.util.stream.Collectors;
1014

1115
public class RecipeManager {
1216

@@ -37,9 +41,16 @@ public void unregisterRecipes() {
3741
public ItemStack createRecallPotion() {
3842
PotionMeta meta = (PotionMeta) new ItemStack(Material.POTION).getItemMeta();
3943
meta.setBasePotionType(PotionType.WATER);
40-
meta.setDisplayName(plugin.getConfigManager().getPotionName());
41-
meta.setLore(plugin.getConfigManager().getPotionLore());
42-
meta.setCustomModelData(CUSTOM_MODEL_DATA);
44+
Component nameComp = LegacyComponentSerializer.legacyAmpersand()
45+
.deserialize(plugin.getConfigManager().getPotionName());
46+
meta.displayName(nameComp);
47+
48+
List<Component> loreComp = plugin.getConfigManager().getPotionLore().stream()
49+
.map(s -> LegacyComponentSerializer.legacyAmpersand().deserialize(s))
50+
.collect(Collectors.toList());
51+
meta.lore(loreComp);
52+
53+
unsafeSetCustomModelData(meta, CUSTOM_MODEL_DATA);
4354
ItemStack potion = new ItemStack(Material.POTION);
4455
potion.setItemMeta(meta);
4556
return potion;
@@ -51,6 +62,21 @@ public boolean isRecallPotion(ItemStack item) {
5162
}
5263

5364
var meta = item.getItemMeta();
54-
return meta != null && meta.hasCustomModelData() && meta.getCustomModelData() == CUSTOM_MODEL_DATA;
65+
return meta != null && unsafeHasCustomModelData(meta) && unsafeGetCustomModelData(meta) == CUSTOM_MODEL_DATA;
66+
}
67+
68+
@SuppressWarnings("deprecation")
69+
private void unsafeSetCustomModelData(PotionMeta meta, int value) {
70+
meta.setCustomModelData(value);
71+
}
72+
73+
@SuppressWarnings("deprecation")
74+
private boolean unsafeHasCustomModelData(org.bukkit.inventory.meta.ItemMeta meta) {
75+
return meta.hasCustomModelData();
76+
}
77+
78+
@SuppressWarnings("deprecation")
79+
private int unsafeGetCustomModelData(org.bukkit.inventory.meta.ItemMeta meta) {
80+
return meta.getCustomModelData();
5581
}
5682
}

0 commit comments

Comments
 (0)