Update to java 21, 1.21 with cosmso
This commit is contained in:
@@ -49,7 +49,7 @@ public class CommandManager implements CommandExecutor, TabExecutor {
|
||||
subCommand = getSubCommand(args[0]);
|
||||
|
||||
if (!commandSender.hasPermission(subCommand.getPermission())) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.NO_PERMISSION, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.NO_PERMISSION);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -86,4 +86,4 @@ public class CommandManager implements CommandExecutor, TabExecutor {
|
||||
.findFirst()
|
||||
.orElse(null);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
+4
-4
@@ -24,13 +24,13 @@ public class CommandCreateScruff extends SubCommand {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender commandSender, String[] args) {
|
||||
if (args.length != 7) {
|
||||
commandSender.sendMiniMessage(getHelpMessage(), null);
|
||||
commandSender.sendRichMessage(getHelpMessage());
|
||||
return true;
|
||||
}
|
||||
|
||||
World world = Bukkit.getServer().getWorld(args[6]);
|
||||
if (world == null) {
|
||||
commandSender.sendMiniMessage(getHelpMessage(), null);
|
||||
commandSender.sendRichMessage(getHelpMessage());
|
||||
return true;
|
||||
}
|
||||
Location location;
|
||||
@@ -38,7 +38,7 @@ public class CommandCreateScruff extends SubCommand {
|
||||
location = new Location(world, Double.parseDouble(args[1]), Double.parseDouble(args[2]), Double.parseDouble(args[3]),
|
||||
Float.parseFloat(args[4]), Float.parseFloat(args[5]));
|
||||
} catch (NumberFormatException exception) {
|
||||
commandSender.sendMiniMessage("<red>Invalid arguments.</red>", null);
|
||||
commandSender.sendRichMessage("<red>Invalid arguments.</red>");
|
||||
return true;
|
||||
}
|
||||
Wolf wolf = (Wolf) world.spawnEntity(location, EntityType.WOLF, CreatureSpawnEvent.SpawnReason.CUSTOM);
|
||||
@@ -55,7 +55,7 @@ public class CommandCreateScruff extends SubCommand {
|
||||
UUID uuid = wolf.getUniqueId();
|
||||
|
||||
LocalConfig.setActiveNPC(uuid);
|
||||
commandSender.sendMiniMessage("<green>Spawned Scruff</green>", null);
|
||||
commandSender.sendRichMessage("<green>Spawned Scruff</green>");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -21,34 +21,34 @@ public class CommandGetReward extends SubCommand {
|
||||
if (args.length != 1)
|
||||
return true;
|
||||
if (!(commandSender instanceof Player player)) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.NO_CONSOLE, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.NO_CONSOLE);
|
||||
return true;
|
||||
}
|
||||
Quest dailyQuest = Quest.getDailyQuest(player.getUniqueId());
|
||||
if (dailyQuest == null) {
|
||||
player.sendMiniMessage("<red>You have no active quests?</red>", null);
|
||||
player.sendRichMessage("<red>You have no active quests?</red>");
|
||||
return true;
|
||||
}
|
||||
if (player.getNearbyEntities(5, 5, 5).stream()
|
||||
.noneMatch(entity -> entity.getUniqueId().equals(LocalConfig.activeNPC))) {
|
||||
player.sendMiniMessage(MessagesConfig.TOO_FAR_FROM_NPC, Placeholder.component("npc", MiniMessage.miniMessage().deserialize(Config.NPC_NAME)));
|
||||
player.sendRichMessage(MessagesConfig.TOO_FAR_FROM_NPC, Placeholder.component("npc", MiniMessage.miniMessage().deserialize(Config.NPC_NAME)));
|
||||
return true;
|
||||
}
|
||||
|
||||
if (!dailyQuest.isDone()) {
|
||||
player.sendMiniMessage(MessagesConfig.NOT_FINISHED_QUEST, null);
|
||||
player.sendRichMessage(MessagesConfig.NOT_FINISHED_QUEST);
|
||||
return true;
|
||||
}
|
||||
|
||||
if (dailyQuest.isRewardReceived()) {
|
||||
player.sendMiniMessage(MessagesConfig.REWARD_ALREADY_RECEIVED, null);
|
||||
player.sendRichMessage(MessagesConfig.REWARD_ALREADY_RECEIVED);
|
||||
return true;
|
||||
}
|
||||
|
||||
for (String command : dailyQuest.getRewardCommand())
|
||||
Bukkit.getServer().dispatchCommand(Bukkit.getConsoleSender(), command.replaceAll("<player>", commandSender.getName()));
|
||||
dailyQuest.setRewardReceived(true);
|
||||
player.sendMiniMessage(MessagesConfig.REWARD_SENT, null);
|
||||
player.sendRichMessage(MessagesConfig.REWARD_SENT);
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -20,12 +20,12 @@ public class CommandHelp extends SubCommand {
|
||||
|
||||
@Override
|
||||
public boolean onCommand(CommandSender commandSender, String[] args) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.HELP_MESSAGE_WRAPPER.replaceAll("<commands>", commandManager
|
||||
commandSender.sendRichMessage(MessagesConfig.HELP_MESSAGE_WRAPPER.replaceAll("<commands>", commandManager
|
||||
.getSubCommands().stream()
|
||||
.filter(SubCommand::shouldTabComplete)
|
||||
.filter(subCommand -> commandSender.hasPermission(subCommand.getPermission()))
|
||||
.map(SubCommand::getHelpMessage)
|
||||
.collect(Collectors.joining("\n"))), null);
|
||||
.collect(Collectors.joining("\n"))));
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -21,20 +21,20 @@ public class CommandProgress extends SubCommand {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender commandSender, String[] args) {
|
||||
if (!(commandSender instanceof Player player)) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.NO_CONSOLE, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.NO_CONSOLE);
|
||||
return true;
|
||||
}
|
||||
if (!player.hasPlayedBefore()) {
|
||||
commandSender.sendMiniMessage(getHelpMessage(), null);
|
||||
commandSender.sendRichMessage(getHelpMessage());
|
||||
return true;
|
||||
}
|
||||
Quest dailyQuest = Quest.getDailyQuest(player.getUniqueId());
|
||||
if (dailyQuest == null) {
|
||||
player.sendMiniMessage("<red>You have no active quests.</red>", null);
|
||||
player.sendRichMessage("<red>You have no active quests.</red>");
|
||||
return true;
|
||||
}
|
||||
if (dailyQuest.isDone()) {
|
||||
player.sendMiniMessage("<green>You already completed the daily quest.</green>", null);
|
||||
player.sendRichMessage("<green>You already completed the daily quest.</green>");
|
||||
return true;
|
||||
}
|
||||
final UUID uniqueId = player.getUniqueId();
|
||||
|
||||
@@ -14,26 +14,26 @@ public class CommandReRoll extends SubCommand {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender commandSender, String[] args) {
|
||||
if (!(commandSender instanceof Player player)) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.NO_CONSOLE, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.NO_CONSOLE);
|
||||
return true;
|
||||
}
|
||||
if (player.hasPermission("aquest.reroll.on-cooldown")) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.NO_RE_ROLL_YET, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.NO_RE_ROLL_YET);
|
||||
return true;
|
||||
}
|
||||
|
||||
Quest dailyQuest = Quest.getDailyQuest(player.getUniqueId());
|
||||
if (dailyQuest == null) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.WAIT_FOR_QUEST, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.WAIT_FOR_QUEST);
|
||||
return true;
|
||||
}
|
||||
if (dailyQuest.isDone()) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.QUEST_ALREADY_FINISHED, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.QUEST_ALREADY_FINISHED);
|
||||
return true;
|
||||
}
|
||||
|
||||
Quest.createDailyQuest(player);
|
||||
commandSender.sendMiniMessage(MessagesConfig.QUEST_RE_ROLLED, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.QUEST_RE_ROLLED);
|
||||
ConsoleCommandSender consoleSender = Bukkit.getConsoleSender();
|
||||
Bukkit.dispatchCommand(consoleSender, String.format("lp user %s permission settemp aquest.reroll.on-cooldown true 7d", player.getName()));
|
||||
return true;
|
||||
|
||||
@@ -19,7 +19,7 @@ public class CommandReload extends SubCommand {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender commandSender, String[] args) {
|
||||
plugin.reloadConfigs();
|
||||
commandSender.sendMiniMessage("<green>Reloaded AltitudeQuests config.</green>", null);
|
||||
commandSender.sendRichMessage("<green>Reloaded AltitudeQuests config.</green>");
|
||||
return true;
|
||||
}
|
||||
|
||||
|
||||
@@ -21,22 +21,22 @@ public class CommandSetQuest extends SubCommand {
|
||||
@Override
|
||||
public boolean onCommand(CommandSender commandSender, String[] args) {
|
||||
if (args.length != 4) {
|
||||
commandSender.sendMiniMessage(getHelpMessage(), null);
|
||||
commandSender.sendRichMessage(getHelpMessage());
|
||||
return true;
|
||||
}
|
||||
Player player = Bukkit.getServer().getPlayer(args[1]);
|
||||
if (player == null || !player.hasPlayedBefore()) {
|
||||
commandSender.sendMiniMessage(getHelpMessage(), null);
|
||||
commandSender.sendRichMessage(getHelpMessage());
|
||||
return true;
|
||||
}
|
||||
new BukkitRunnable() {
|
||||
@Override
|
||||
public void run() {
|
||||
if (!Quest.loadDailyQuest(args[2], args[3], 0, 0, player.getUniqueId(), -1, false))
|
||||
commandSender.sendMiniMessage("<red>Unable to create quest <quest> of variant <variant>.</red>",
|
||||
commandSender.sendRichMessage("<red>Unable to create quest <quest> of variant <variant>.</red>",
|
||||
TagResolver.resolver(Placeholder.parsed("quest", args[2]),
|
||||
Placeholder.parsed("variant", args[3])));
|
||||
commandSender.sendMiniMessage("<green>Created quest <quest> of variant <variant>.</green>",
|
||||
commandSender.sendRichMessage("<green>Created quest <quest> of variant <variant>.</green>",
|
||||
TagResolver.resolver(Placeholder.parsed("quest", args[2]),
|
||||
Placeholder.parsed("variant", args[3])));
|
||||
}
|
||||
|
||||
@@ -20,22 +20,22 @@ public class CommandTurnIn extends SubCommand {
|
||||
if (args.length != 1)
|
||||
return true;
|
||||
if (!(commandSender instanceof Player player)) {
|
||||
commandSender.sendMiniMessage(MessagesConfig.NO_CONSOLE, null);
|
||||
commandSender.sendRichMessage(MessagesConfig.NO_CONSOLE);
|
||||
return true;
|
||||
}
|
||||
Quest dailyQuest = Quest.getDailyQuest(player.getUniqueId());
|
||||
if (dailyQuest == null || dailyQuest.isDone()) {
|
||||
player.sendMiniMessage(MessagesConfig.DAILY_ALREADY_DONE, null);
|
||||
player.sendRichMessage(MessagesConfig.DAILY_ALREADY_DONE);
|
||||
return true;
|
||||
}
|
||||
if (player.getNearbyEntities(5, 5, 5).stream()
|
||||
.noneMatch(entity -> entity.getUniqueId().equals(LocalConfig.activeNPC))) {
|
||||
player.sendMiniMessage(MessagesConfig.TOO_FAR_FROM_NPC, Placeholder.component("npc", MiniMessage.miniMessage().deserialize(Config.NPC_NAME)));
|
||||
player.sendRichMessage(MessagesConfig.TOO_FAR_FROM_NPC, Placeholder.component("npc", MiniMessage.miniMessage().deserialize(Config.NPC_NAME)));
|
||||
return true;
|
||||
}
|
||||
dailyQuest.turnIn(player);
|
||||
if (dailyQuest.isDone())
|
||||
player.sendMiniMessage(MessagesConfig.FINISHED_QUEST, Placeholder.component("player", player.name()));
|
||||
player.sendRichMessage(MessagesConfig.FINISHED_QUEST, Placeholder.component("player", player.name()));
|
||||
BookOpener.openBook(player);
|
||||
return true;
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.EventPriority;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerFishEvent;
|
||||
import org.bukkit.entity.EntityType;
|
||||
import org.bukkit.entity.Item;
|
||||
import org.bukkit.inventory.ItemStack;
|
||||
|
||||
@@ -15,8 +14,8 @@ public class ItemCaught implements Listener {
|
||||
|
||||
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
||||
public void onItemCaught(PlayerFishEvent event) {
|
||||
if (event.getCaught() == null || event.getCaught().getType() != EntityType.DROPPED_ITEM) {
|
||||
return; //Only if an item was caught do further processing. Otherwise error might come up later
|
||||
if (event.getCaught() == null) {
|
||||
return;
|
||||
}
|
||||
Player player = event.getPlayer();
|
||||
Quest dailyQuest = Quest.getDailyQuest(player.getUniqueId());
|
||||
|
||||
@@ -1,13 +1,18 @@
|
||||
package com.alttd.altitudequests.events;
|
||||
|
||||
import com.alttd.altitudequests.AQuest;
|
||||
import com.alttd.altitudequests.config.Config;
|
||||
import com.alttd.altitudequests.objects.Quest;
|
||||
import com.alttd.altitudequests.util.Logger;
|
||||
import com.alttd.datalock.DataLockAPI;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.boss.KeyedBossBar;
|
||||
import org.bukkit.event.EventHandler;
|
||||
import org.bukkit.event.Listener;
|
||||
import org.bukkit.event.player.PlayerQuitEvent;
|
||||
|
||||
import javax.annotation.Nullable;
|
||||
import java.util.UUID;
|
||||
|
||||
public class LogoutEvent implements Listener {
|
||||
@@ -17,6 +22,20 @@ public class LogoutEvent implements Listener {
|
||||
UUID uuid = event.getPlayer().getUniqueId();
|
||||
if (Config.DEBUG)
|
||||
Logger.info("Syncing %", event.getPlayer().getName());
|
||||
removeBossBar(NamespacedKey.fromString(uuid + "-part-" + "1", AQuest.getInstance()));
|
||||
removeBossBar(NamespacedKey.fromString(uuid + "-part-" + "2", AQuest.getInstance()));
|
||||
|
||||
Quest.unloadUser(uuid).thenAccept(result -> DataLockAPI.get().tryUnlock("aquest:player-data", uuid.toString()));
|
||||
}
|
||||
|
||||
private void removeBossBar(@Nullable NamespacedKey namespacedKey) {
|
||||
if (namespacedKey == null) {
|
||||
return;
|
||||
}
|
||||
KeyedBossBar bossBar = Bukkit.getBossBar(namespacedKey);
|
||||
if (bossBar == null) {
|
||||
return;
|
||||
}
|
||||
Bukkit.removeBossBar(namespacedKey);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -93,8 +93,8 @@ public abstract class Quest {
|
||||
this.amount = variant.calculateAmount(loadQuestsDoneThisMonth(uuid));
|
||||
else
|
||||
this.amount = amount;
|
||||
this.barProgressOne = new AutoHideBossBar(player, variant, "1", "Step One Progress", BarColor.GREEN);
|
||||
this.barProgressTwo = new AutoHideBossBar(player, variant, "2", "Step Two Progress", BarColor.PURPLE);
|
||||
this.barProgressOne = new AutoHideBossBar(player, "1", "Step One Progress", BarColor.GREEN);
|
||||
this.barProgressTwo = new AutoHideBossBar(player, "2", "Step Two Progress", BarColor.PURPLE);
|
||||
}
|
||||
|
||||
private int loadQuestsDoneThisMonth(UUID uuid) {
|
||||
@@ -116,7 +116,7 @@ public abstract class Quest {
|
||||
|
||||
public static void createDailyQuest(Player player) {
|
||||
if (possibleQuests.isEmpty()) {
|
||||
player.sendMiniMessage("<red>Unable to create quest, no quests in config</red>", null);
|
||||
player.sendRichMessage("<red>Unable to create quest, no quests in config</red>");
|
||||
return;
|
||||
}
|
||||
|
||||
@@ -126,11 +126,11 @@ public abstract class Quest {
|
||||
putDailyQuest(player.getUniqueId(), constructor.newInstance(player));
|
||||
} catch (InvocationTargetException | IllegalAccessException | InstantiationException |
|
||||
NoSuchMethodException e) {
|
||||
player.sendMiniMessage("<red>Unable to create quest, contact an admin</red>", null);
|
||||
player.sendRichMessage("<red>Unable to create quest, contact an admin</red>");
|
||||
Logger.throwing(Quest.class.getName(), "createDailyQuest", e);
|
||||
Logger.severe("% does not have a constructor with a Player input or has improper access.", questClass.getName());
|
||||
} catch (Exception e) {
|
||||
player.sendMiniMessage("<red>Unable to create quest, contact an admin</red>", null);
|
||||
player.sendRichMessage("<red>Unable to create quest, contact an admin</red>");
|
||||
Logger.throwing(Quest.class.getName(), "createDailyQuest", e);
|
||||
Logger.severe("% could not be created due to invalid namespace key or variant.", questClass.getName());
|
||||
}
|
||||
|
||||
@@ -2,17 +2,18 @@ package com.alttd.altitudequests.util;
|
||||
|
||||
import com.alttd.altitudequests.AQuest;
|
||||
import com.alttd.altitudequests.config.Config;
|
||||
import com.alttd.altitudequests.objects.Variant;
|
||||
import org.bukkit.Bukkit;
|
||||
import org.bukkit.NamespacedKey;
|
||||
import org.bukkit.boss.BarColor;
|
||||
import org.bukkit.boss.BarStyle;
|
||||
import org.bukkit.boss.BossBar;
|
||||
import org.bukkit.boss.KeyedBossBar;
|
||||
import org.bukkit.entity.Player;
|
||||
import org.bukkit.scheduler.BukkitRunnable;
|
||||
|
||||
import java.time.Instant;
|
||||
import java.util.HashMap;
|
||||
import java.util.Objects;
|
||||
|
||||
public class AutoHideBossBar {
|
||||
|
||||
@@ -20,17 +21,19 @@ public class AutoHideBossBar {
|
||||
|
||||
private final BossBar bossBar;
|
||||
|
||||
public AutoHideBossBar(Player player, Variant variant, String part, String title, BarColor barColor) throws Exception {
|
||||
NamespacedKey namespacedKeyOne = NamespacedKey.fromString(player.getUniqueId() + variant.getInternalName().toLowerCase() + part, AQuest.getInstance());
|
||||
public AutoHideBossBar(Player player, String part, String title, BarColor barColor) throws Exception {
|
||||
NamespacedKey namespacedKeyOne = NamespacedKey.fromString(player.getUniqueId() + "-part-" + part, AQuest.getInstance());
|
||||
if (namespacedKeyOne == null) {
|
||||
Logger.warning("Unable to create nameSpacedKey with suffix % for quest for %", part, player.getName());
|
||||
throw new Exception("Failed to create namespace key");
|
||||
}
|
||||
this.bossBar = Bukkit.createBossBar(
|
||||
KeyedBossBar retrievedBossBar = Bukkit.getBossBar(namespacedKeyOne);
|
||||
this.bossBar = Objects.requireNonNullElseGet(retrievedBossBar, () -> Bukkit.createBossBar(
|
||||
namespacedKeyOne,
|
||||
title,
|
||||
barColor,
|
||||
BarStyle.SOLID);
|
||||
BarStyle.SOLID));
|
||||
|
||||
bossBar.setVisible(false);
|
||||
bossBar.addPlayer(player);
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user