Added more information to upgrade items and notify players of what they upgraded and their remaining points after they purchase an upgrade
This commit is contained in:
parent
c42886b15a
commit
7baf9a7f97
|
|
@ -109,11 +109,15 @@ public class Messages extends AbstractConfig {
|
||||||
public static List<String> ROD_LORE = List.of(
|
public static List<String> ROD_LORE = List.of(
|
||||||
"<green>A Fishing Rod specifically crafted for:</green>",
|
"<green>A Fishing Rod specifically crafted for:</green>",
|
||||||
"<player>");
|
"<player>");
|
||||||
|
public static String PRIZE_NAME = "<green>Upgrade track: <track></green>";
|
||||||
|
public static List<String> PRIZE_LORE = List.of("<green>price: <gold><price></gold></green>");
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private static void load() {
|
private static void load() {
|
||||||
ROD_NAME = config.getString(prefix, "rod-name", ROD_NAME);
|
ROD_NAME = config.getString(prefix, "rod-name", ROD_NAME);
|
||||||
ROD_LORE = config.getStringList(prefix, "rod-lore", ROD_LORE);
|
ROD_LORE = config.getStringList(prefix, "rod-lore", ROD_LORE);
|
||||||
|
PRIZE_NAME = config.getString(prefix, "prize-name", PRIZE_NAME);
|
||||||
|
PRIZE_LORE = config.getStringList(prefix, "prize-lore", PRIZE_LORE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -152,10 +156,12 @@ public class Messages extends AbstractConfig {
|
||||||
private static final String prefix = "other-messages.";
|
private static final String prefix = "other-messages.";
|
||||||
|
|
||||||
public static String NEW_LEADER = "<green><gold><player></gold> just caught a new longest fish! They caught a <rarity> <fish> <gold><length> cm</gold></green>";
|
public static String NEW_LEADER = "<green><gold><player></gold> just caught a new longest fish! They caught a <rarity> <fish> <gold><length> cm</gold></green>";
|
||||||
|
public static String PURCHASED_UPGRADE = "<green>You upgraded <track> to level <level> and have <remaining_points> remaining.</green>";
|
||||||
|
|
||||||
@SuppressWarnings("unused")
|
@SuppressWarnings("unused")
|
||||||
private static void load() {
|
private static void load() {
|
||||||
NEW_LEADER = config.getString(prefix, "new-leader", NEW_LEADER);
|
NEW_LEADER = config.getString(prefix, "new-leader", NEW_LEADER);
|
||||||
|
PURCHASED_UPGRADE = config.getString(prefix, "pruchased-upgrade", PURCHASED_UPGRADE);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -25,6 +25,7 @@ import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
import java.util.Optional;
|
import java.util.Optional;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
public class UpgradeWindow extends GUI {
|
public class UpgradeWindow extends GUI {
|
||||||
|
|
||||||
|
|
@ -97,6 +98,15 @@ public class UpgradeWindow extends GUI {
|
||||||
}
|
}
|
||||||
EnchantmentData enchantmentData = optionalEnchantmentData.get();
|
EnchantmentData enchantmentData = optionalEnchantmentData.get();
|
||||||
itemStack.addUnsafeEnchantment(enchantmentData.enchantment(), enchantmentData.level());
|
itemStack.addUnsafeEnchantment(enchantmentData.enchantment(), enchantmentData.level());
|
||||||
|
|
||||||
|
TagResolver.Single pricePlaceholder = Placeholder.parsed("price", String.valueOf(enchantmentData.price()));
|
||||||
|
MiniMessage miniMessage = MiniMessage.miniMessage();
|
||||||
|
ItemMeta itemMeta = itemStack.getItemMeta();
|
||||||
|
|
||||||
|
itemMeta.displayName(miniMessage.deserialize(Messages.ITEMS.PRIZE_NAME, Placeholder.component("track", enchantmentTrack.getName())));
|
||||||
|
itemMeta.lore(Messages.ITEMS.PRIZE_LORE.stream().map(line -> miniMessage.deserialize(line, pricePlaceholder)).collect(Collectors.toList()));
|
||||||
|
itemStack.setItemMeta(itemMeta);
|
||||||
|
|
||||||
return Optional.of(itemStack);
|
return Optional.of(itemStack);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -138,8 +148,9 @@ public class UpgradeWindow extends GUI {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
int remainingPoints;
|
||||||
try {
|
try {
|
||||||
PointsManagement.getInstance().removePoints(player.getUniqueId(), enchantmentData.price());
|
remainingPoints = PointsManagement.getInstance().removePoints(player.getUniqueId(), enchantmentData.price());
|
||||||
} catch (IllegalArgumentException e) {
|
} catch (IllegalArgumentException e) {
|
||||||
player.sendMiniMessage(Messages.GUI.NOT_ENOUGH_POINTS, TagResolver.resolver(
|
player.sendMiniMessage(Messages.GUI.NOT_ENOUGH_POINTS, TagResolver.resolver(
|
||||||
Placeholder.parsed("price", String.valueOf(enchantmentData.price())),
|
Placeholder.parsed("price", String.valueOf(enchantmentData.price())),
|
||||||
|
|
@ -155,6 +166,11 @@ public class UpgradeWindow extends GUI {
|
||||||
}
|
}
|
||||||
|
|
||||||
inventory.setItem(fishingRodSlot, fishingRod);
|
inventory.setItem(fishingRodSlot, fishingRod);
|
||||||
|
player.sendMiniMessage(Messages.OTHER_MESSAGES.PURCHASED_UPGRADE, TagResolver.resolver(
|
||||||
|
Placeholder.parsed("remaining_points", String.valueOf(remainingPoints)),
|
||||||
|
Placeholder.component("track", enchantmentTrack.getName()),
|
||||||
|
Placeholder.parsed("level", String.valueOf(trackLevel))
|
||||||
|
));
|
||||||
updateGUI();
|
updateGUI();
|
||||||
player.updateInventory();
|
player.updateInventory();
|
||||||
}
|
}
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue
Block a user