mirror of
https://github.com/kiranhart/Auction-House.git
synced 2024-11-26 06:05:25 +01:00
Merge pull request #19 from RandomHashTags/minor-performance-improvements
minor performance improvements
This commit is contained in:
commit
479d512736
@ -258,20 +258,20 @@ public class AuctionAPI {
|
|||||||
* @param isBid Is this auction a bid enabled auction, or a single sale auction?
|
* @param isBid Is this auction a bid enabled auction, or a single sale auction?
|
||||||
*/
|
*/
|
||||||
public void sendDiscordMessage(String webhook, OfflinePlayer seller, OfflinePlayer buyer, AuctionedItem auctionItem, AuctionSaleType saleType, boolean isNew, boolean isBid) {
|
public void sendDiscordMessage(String webhook, OfflinePlayer seller, OfflinePlayer buyer, AuctionedItem auctionItem, AuctionSaleType saleType, boolean isNew, boolean isBid) {
|
||||||
DiscordWebhook hook = new DiscordWebhook(webhook);
|
final DiscordWebhook hook = new DiscordWebhook(webhook);
|
||||||
hook.setUsername(Settings.DISCORD_MSG_USERNAME.getString());
|
hook.setUsername(Settings.DISCORD_MSG_USERNAME.getString());
|
||||||
hook.setAvatarUrl(Settings.DISCORD_MSG_PFP.getString());
|
hook.setAvatarUrl(Settings.DISCORD_MSG_PFP.getString());
|
||||||
|
|
||||||
String color = isBid ? Settings.DISCORD_MSG_DEFAULT_COLOUR_BID.getString() : isNew ? Settings.DISCORD_MSG_DEFAULT_COLOUR.getString() : Settings.DISCORD_MSG_DEFAULT_COLOUR_SALE.getString();
|
final String color = isBid ? Settings.DISCORD_MSG_DEFAULT_COLOUR_BID.getString() : isNew ? Settings.DISCORD_MSG_DEFAULT_COLOUR.getString() : Settings.DISCORD_MSG_DEFAULT_COLOUR_SALE.getString();
|
||||||
|
|
||||||
String[] possibleColours = color.split("-");
|
final String[] possibleColours = color.split("-");
|
||||||
Color colour = Settings.DISCORD_MSG_USE_RANDOM_COLOUR.getBoolean()
|
final Color colour = Settings.DISCORD_MSG_USE_RANDOM_COLOUR.getBoolean()
|
||||||
? Color.getHSBColor(ThreadLocalRandom.current().nextFloat() * 360F, ThreadLocalRandom.current().nextFloat() * 101F, ThreadLocalRandom.current().nextFloat() * 101F)
|
? Color.getHSBColor(ThreadLocalRandom.current().nextFloat() * 360F, ThreadLocalRandom.current().nextFloat() * 101F, ThreadLocalRandom.current().nextFloat() * 101F)
|
||||||
: Color.getHSBColor(Float.parseFloat(possibleColours[0]) / 360, Float.parseFloat(possibleColours[1]) / 100, Float.parseFloat(possibleColours[2]) / 100);
|
: Color.getHSBColor(Float.parseFloat(possibleColours[0]) / 360, Float.parseFloat(possibleColours[1]) / 100, Float.parseFloat(possibleColours[2]) / 100);
|
||||||
|
|
||||||
ItemStack itemStack = auctionItem.getItem();
|
final ItemStack itemStack = auctionItem.getItem();
|
||||||
String itemName = MMOItemsHook.isEnabled() ? MMOItemsHook.getItemType(itemStack) : ChatColor.stripColor(getItemName(itemStack));
|
final String itemName = MMOItemsHook.isEnabled() ? MMOItemsHook.getItemType(itemStack) : ChatColor.stripColor(getItemName(itemStack));
|
||||||
DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject();
|
final DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject();
|
||||||
|
|
||||||
final String playerLost = AuctionHouse.getInstance().getLocale().getMessage("discord.player_lost").getMessage();
|
final String playerLost = AuctionHouse.getInstance().getLocale().getMessage("discord.player_lost").getMessage();
|
||||||
final String notSold = AuctionHouse.getInstance().getLocale().getMessage("discord.not_sold").getMessage();
|
final String notSold = AuctionHouse.getInstance().getLocale().getMessage("discord.not_sold").getMessage();
|
||||||
@ -311,19 +311,19 @@ public class AuctionAPI {
|
|||||||
*/
|
*/
|
||||||
public void sendDiscordBidMessage(String webhook, AuctionedItem auctionItem, double newBid) {
|
public void sendDiscordBidMessage(String webhook, AuctionedItem auctionItem, double newBid) {
|
||||||
// oh boy the code repetition is high with this one
|
// oh boy the code repetition is high with this one
|
||||||
DiscordWebhook hook = new DiscordWebhook(webhook);
|
final DiscordWebhook hook = new DiscordWebhook(webhook);
|
||||||
hook.setUsername(Settings.DISCORD_MSG_USERNAME.getString());
|
hook.setUsername(Settings.DISCORD_MSG_USERNAME.getString());
|
||||||
hook.setAvatarUrl(Settings.DISCORD_MSG_PFP.getString());
|
hook.setAvatarUrl(Settings.DISCORD_MSG_PFP.getString());
|
||||||
|
|
||||||
String[] possibleColours = Settings.DISCORD_MSG_DEFAULT_COLOUR_BID.getString().split("-");
|
final String[] possibleColours = Settings.DISCORD_MSG_DEFAULT_COLOUR_BID.getString().split("-");
|
||||||
Color colour = Settings.DISCORD_MSG_USE_RANDOM_COLOUR.getBoolean()
|
final Color colour = Settings.DISCORD_MSG_USE_RANDOM_COLOUR.getBoolean()
|
||||||
? Color.getHSBColor(ThreadLocalRandom.current().nextFloat() * 360F, ThreadLocalRandom.current().nextFloat() * 101F, ThreadLocalRandom.current().nextFloat() * 101F)
|
? Color.getHSBColor(ThreadLocalRandom.current().nextFloat() * 360F, ThreadLocalRandom.current().nextFloat() * 101F, ThreadLocalRandom.current().nextFloat() * 101F)
|
||||||
: Color.getHSBColor(Float.parseFloat(possibleColours[0]) / 360, Float.parseFloat(possibleColours[1]) / 100, Float.parseFloat(possibleColours[2]) / 100);
|
: Color.getHSBColor(Float.parseFloat(possibleColours[0]) / 360, Float.parseFloat(possibleColours[1]) / 100, Float.parseFloat(possibleColours[2]) / 100);
|
||||||
|
|
||||||
ItemStack itemStack = auctionItem.getItem();
|
final ItemStack itemStack = auctionItem.getItem();
|
||||||
String itemName = MMOItemsHook.isEnabled() ? MMOItemsHook.getItemType(itemStack) : ChatColor.stripColor(getItemName(itemStack));
|
final String itemName = MMOItemsHook.isEnabled() ? MMOItemsHook.getItemType(itemStack) : ChatColor.stripColor(getItemName(itemStack));
|
||||||
|
|
||||||
DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject();
|
final DiscordWebhook.EmbedObject embedObject = new DiscordWebhook.EmbedObject();
|
||||||
embedObject.setTitle(Settings.DISCORD_MSG_BID_TITLE.getString());
|
embedObject.setTitle(Settings.DISCORD_MSG_BID_TITLE.getString());
|
||||||
embedObject.setColor(colour);
|
embedObject.setColor(colour);
|
||||||
embedObject.addField(Settings.DISCORD_MSG_FIELD_BIDDER_NAME.getString(), Settings.DISCORD_MSG_FIELD_BIDDER_VALUE.getString().replace("%bidder%", auctionItem.getHighestBidderName() != null ? auctionItem.getHighestBidderName() : AuctionHouse.getInstance().getLocale().getMessage("discord.player_lost").getMessage()), Settings.DISCORD_MSG_FIELD_BIDDER_INLINE.getBoolean());
|
embedObject.addField(Settings.DISCORD_MSG_FIELD_BIDDER_NAME.getString(), Settings.DISCORD_MSG_FIELD_BIDDER_VALUE.getString().replace("%bidder%", auctionItem.getHighestBidderName() != null ? auctionItem.getHighestBidderName() : AuctionHouse.getInstance().getLocale().getMessage("discord.player_lost").getMessage()), Settings.DISCORD_MSG_FIELD_BIDDER_INLINE.getBoolean());
|
||||||
@ -375,7 +375,7 @@ public class AuctionAPI {
|
|||||||
* @return a list of all the enchantment names
|
* @return a list of all the enchantment names
|
||||||
*/
|
*/
|
||||||
public List<String> getItemEnchantments(ItemStack stack) {
|
public List<String> getItemEnchantments(ItemStack stack) {
|
||||||
List<String> enchantments = new ArrayList<>();
|
final List<String> enchantments = new ArrayList<>();
|
||||||
Objects.requireNonNull(stack, "Item Stack cannot be null when getting enchantments");
|
Objects.requireNonNull(stack, "Item Stack cannot be null when getting enchantments");
|
||||||
if (!stack.getEnchantments().isEmpty()) {
|
if (!stack.getEnchantments().isEmpty()) {
|
||||||
stack.getEnchantments().forEach((k, i) -> {
|
stack.getEnchantments().forEach((k, i) -> {
|
||||||
|
@ -52,8 +52,7 @@ public class DiscordWebhook {
|
|||||||
throw new IllegalArgumentException("Set content or add at least one EmbedObject");
|
throw new IllegalArgumentException("Set content or add at least one EmbedObject");
|
||||||
}
|
}
|
||||||
|
|
||||||
JSONObject json = new JSONObject();
|
final JSONObject json = new JSONObject();
|
||||||
|
|
||||||
json.put("content", this.content);
|
json.put("content", this.content);
|
||||||
json.put("username", this.username);
|
json.put("username", this.username);
|
||||||
json.put("avatar_url", this.avatarUrl);
|
json.put("avatar_url", this.avatarUrl);
|
||||||
|
@ -52,29 +52,28 @@ public class AuctionPlayer {
|
|||||||
if (Settings.LIST_ITEM_DELAY.getInt() == -1) {
|
if (Settings.LIST_ITEM_DELAY.getInt() == -1) {
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
if (this.lastListedItem == -1 || System.currentTimeMillis() >= this.lastListedItem) {
|
if (this.lastListedItem == -1 || System.currentTimeMillis() >= this.lastListedItem) {
|
||||||
this.lastListedItem = System.currentTimeMillis() + 1000L * Settings.LIST_ITEM_DELAY.getInt();
|
this.lastListedItem = System.currentTimeMillis() + 1000L * Settings.LIST_ITEM_DELAY.getInt();
|
||||||
AuctionHouse.getInstance().getDataManager().updateAuctionPlayer(this, (error, success) -> {
|
instance.getDataManager().updateAuctionPlayer(this, (error, success) -> {
|
||||||
if (error == null && success)
|
if (error == null && success)
|
||||||
if (!Settings.DISABLE_PROFILE_UPDATE_MSG.getBoolean())
|
if (!Settings.DISABLE_PROFILE_UPDATE_MSG.getBoolean())
|
||||||
AuctionHouse.getInstance().getLogger().info("Updating profile for player: " + player.getName());
|
instance.getLogger().info("Updating profile for player: " + player.getName());
|
||||||
|
|
||||||
});
|
});
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.wait_to_list").processPlaceholder("time", (this.lastListedItem - System.currentTimeMillis()) / 1000).sendPrefixedMessage(this.player);
|
instance.getLocale().getMessage("general.wait_to_list").processPlaceholder("time", (this.lastListedItem - System.currentTimeMillis()) / 1000).sendPrefixedMessage(this.player);
|
||||||
|
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
|
|
||||||
public List<AuctionedItem> getItems(boolean getExpired) {
|
public List<AuctionedItem> getItems(boolean getExpired) {
|
||||||
List<AuctionedItem> items = new ArrayList<>();
|
final List<AuctionedItem> items = new ArrayList<>();
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
for (Map.Entry<UUID, AuctionedItem> entry : AuctionHouse.getInstance().getAuctionItemManager().getItems().entrySet()) {
|
for (Map.Entry<UUID, AuctionedItem> entry : instance.getAuctionItemManager().getItems().entrySet()) {
|
||||||
AuctionedItem auctionItem = entry.getValue();
|
final AuctionedItem auctionItem = entry.getValue();
|
||||||
if (auctionItem.getOwner().equals(this.player.getUniqueId()) && auctionItem.isExpired() == getExpired && !AuctionHouse.getInstance().getAuctionItemManager().getGarbageBin().containsKey(auctionItem.getId())) {
|
if (auctionItem.getOwner().equals(this.player.getUniqueId()) && auctionItem.isExpired() == getExpired && !instance.getAuctionItemManager().getGarbageBin().containsKey(auctionItem.getId())) {
|
||||||
items.add(auctionItem);
|
items.add(auctionItem);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -43,11 +43,12 @@ public final class AuctionStatistic implements Storeable<AuctionStatistic> {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void store(Consumer<AuctionStatistic> stored) {
|
public void store(Consumer<AuctionStatistic> stored) {
|
||||||
AuctionHouse.getInstance().getDataManager().insertStatistic(this, (error, statistic) -> {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
instance.getDataManager().insertStatistic(this, (error, statistic) -> {
|
||||||
if (error != null) return;
|
if (error != null) return;
|
||||||
|
|
||||||
if (statistic != null) {
|
if (statistic != null) {
|
||||||
AuctionHouse.getInstance().getAuctionStatisticManager().addStatistic(statistic);
|
instance.getAuctionStatisticManager().addStatistic(statistic);
|
||||||
|
|
||||||
if (stored != null)
|
if (stored != null)
|
||||||
stored.accept(statistic);
|
stored.accept(statistic);
|
||||||
|
@ -25,16 +25,16 @@ public class CommandActive extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
if (instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
instance.getGuiManager().showGUI(player, new GUIActiveAuctions(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIActiveAuctions(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -42,15 +42,16 @@ public class CommandAdmin extends AbstractCommand {
|
|||||||
if (args.length < 1) return ReturnType.FAILURE;
|
if (args.length < 1) return ReturnType.FAILURE;
|
||||||
if (AuctionAPI.tellMigrationStatus(sender)) return ReturnType.FAILURE;
|
if (AuctionAPI.tellMigrationStatus(sender)) return ReturnType.FAILURE;
|
||||||
|
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
switch (args[0].toLowerCase()) {
|
switch (args[0].toLowerCase()) {
|
||||||
case "logs":
|
case "logs":
|
||||||
if (!(sender instanceof Player)) break;
|
if (!(sender instanceof Player)) break;
|
||||||
Player player = (Player) sender;
|
Player player = (Player) sender;
|
||||||
if (!player.hasPermission("auctionhouse.cmd.admin.logs")) return ReturnType.FAILURE;
|
if (!player.hasPermission("auctionhouse.cmd.admin.logs")) return ReturnType.FAILURE;
|
||||||
|
|
||||||
AuctionHouse.getInstance().getDataManager().getAdminLogs((error, logs) -> {
|
instance.getDataManager().getAdminLogs((error, logs) -> {
|
||||||
if (error == null)
|
if (error == null)
|
||||||
AuctionHouse.newChain().sync(() -> AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAdminLogs(player, logs))).execute();
|
AuctionHouse.newChain().sync(() -> instance.getGuiManager().showGUI(player, new GUIAdminLogs(player, logs))).execute();
|
||||||
else
|
else
|
||||||
error.printStackTrace();
|
error.printStackTrace();
|
||||||
});
|
});
|
||||||
@ -73,36 +74,36 @@ public class CommandAdmin extends AbstractCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (target == null) {
|
if (target == null) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[1]).sendPrefixedMessage(sender);
|
instance.getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[1]).sendPrefixedMessage(sender);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAdminExpired(player, target));
|
instance.getGuiManager().showGUI(player, new GUIAdminExpired(player, target));
|
||||||
|
|
||||||
break;
|
break;
|
||||||
case "endall":
|
case "endall":
|
||||||
if (!sender.hasPermission("auctionhouse.cmd.admin.endall")) return ReturnType.FAILURE;
|
if (!sender.hasPermission("auctionhouse.cmd.admin.endall")) return ReturnType.FAILURE;
|
||||||
for (UUID id : AuctionHouse.getInstance().getAuctionItemManager().getItems().keySet()) {
|
for (UUID id : instance.getAuctionItemManager().getItems().keySet()) {
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getItems().get(id).setExpired(true);
|
instance.getAuctionItemManager().getItems().get(id).setExpired(true);
|
||||||
}
|
}
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.endedallauctions").sendPrefixedMessage(sender);
|
instance.getLocale().getMessage("general.endedallauctions").sendPrefixedMessage(sender);
|
||||||
break;
|
break;
|
||||||
case "relistall":
|
case "relistall":
|
||||||
if (!sender.hasPermission("auctionhouse.cmd.admin.relistall")) return ReturnType.FAILURE;
|
if (!sender.hasPermission("auctionhouse.cmd.admin.relistall")) return ReturnType.FAILURE;
|
||||||
for (UUID id : AuctionHouse.getInstance().getAuctionItemManager().getItems().keySet()) {
|
for (UUID id : instance.getAuctionItemManager().getItems().keySet()) {
|
||||||
if (AuctionHouse.getInstance().getAuctionItemManager().getItems().get(id).isExpired()) {
|
if (instance.getAuctionItemManager().getItems().get(id).isExpired()) {
|
||||||
int relistTime = args.length == 1 ? AuctionHouse.getInstance().getAuctionItemManager().getItems().get(id).isBidItem() ? Settings.DEFAULT_AUCTION_LISTING_TIME.getInt() : Settings.DEFAULT_BIN_LISTING_TIME.getInt() : Integer.parseInt(args[1]);
|
int relistTime = args.length == 1 ? instance.getAuctionItemManager().getItems().get(id).isBidItem() ? Settings.DEFAULT_AUCTION_LISTING_TIME.getInt() : Settings.DEFAULT_BIN_LISTING_TIME.getInt() : Integer.parseInt(args[1]);
|
||||||
|
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getItems().get(id).setExpiresAt(System.currentTimeMillis() + 1000L * relistTime);
|
instance.getAuctionItemManager().getItems().get(id).setExpiresAt(System.currentTimeMillis() + 1000L * relistTime);
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getItems().get(id).setExpired(false);
|
instance.getAuctionItemManager().getItems().get(id).setExpired(false);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.relisteditems").sendPrefixedMessage(sender);
|
instance.getLocale().getMessage("general.relisteditems").sendPrefixedMessage(sender);
|
||||||
break;
|
break;
|
||||||
case "clearall":
|
case "clearall":
|
||||||
if (!sender.hasPermission("auctionhouse.cmd.admin.clearall")) return ReturnType.FAILURE;
|
if (!sender.hasPermission("auctionhouse.cmd.admin.clearall")) return ReturnType.FAILURE;
|
||||||
// Don't tell ppl that this exists
|
// Don't tell ppl that this exists
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getItems().clear();
|
instance.getAuctionItemManager().getItems().clear();
|
||||||
case "opensell":
|
case "opensell":
|
||||||
if (args.length < 2) return ReturnType.FAILURE;
|
if (args.length < 2) return ReturnType.FAILURE;
|
||||||
if (!sender.hasPermission("auctionhouse.cmd.admin.opensell")) return ReturnType.FAILURE;
|
if (!sender.hasPermission("auctionhouse.cmd.admin.opensell")) return ReturnType.FAILURE;
|
||||||
@ -113,11 +114,11 @@ public class CommandAdmin extends AbstractCommand {
|
|||||||
ItemStack itemToSell = PlayerHelper.getHeldItem(player).clone();
|
ItemStack itemToSell = PlayerHelper.getHeldItem(player).clone();
|
||||||
|
|
||||||
if (itemToSell.getType() == XMaterial.AIR.parseMaterial() && Settings.SELL_MENU_REQUIRES_USER_TO_HOLD_ITEM.getBoolean()) {
|
if (itemToSell.getType() == XMaterial.AIR.parseMaterial() && Settings.SELL_MENU_REQUIRES_USER_TO_HOLD_ITEM.getBoolean()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.air").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.air").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
} else {
|
} else {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUISellItem(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()), itemToSell));
|
instance.getGuiManager().showGUI(player, new GUISellItem(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()), itemToSell));
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addItemToSellHolding(player.getUniqueId(), itemToSell);
|
instance.getAuctionPlayerManager().addItemToSellHolding(player.getUniqueId(), itemToSell);
|
||||||
PlayerUtils.takeActiveItem(player, CompatibleHand.MAIN_HAND, itemToSell.getAmount());
|
PlayerUtils.takeActiveItem(player, CompatibleHand.MAIN_HAND, itemToSell.getAmount());
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
@ -130,12 +131,12 @@ public class CommandAdmin extends AbstractCommand {
|
|||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
if (instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAuctionHouse(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
instance.getGuiManager().showGUI(player, new GUIAuctionHouse(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -32,19 +32,20 @@ public class CommandAuctionHouse extends AbstractCommand {
|
|||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
if (instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAuctionHouse(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
instance.getGuiManager().showGUI(player, new GUIAuctionHouse(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (args.length == 1 && AuctionHouse.getInstance().getCommandManager().getSubCommands("auctionhouse").stream().noneMatch(cmd -> cmd.equalsIgnoreCase(StringUtils.join(args, ' ').trim()))) {
|
if (args.length == 1 && instance.getCommandManager().getSubCommands("auctionhouse").stream().noneMatch(cmd -> cmd.equalsIgnoreCase(StringUtils.join(args, ' ').trim()))) {
|
||||||
if (args[0].equalsIgnoreCase("NaN")) return ReturnType.FAILURE;
|
if (args[0].equalsIgnoreCase("NaN")) return ReturnType.FAILURE;
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAuctionHouse(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()), StringUtils.join(args, ' ').trim()));
|
instance.getGuiManager().showGUI(player, new GUIAuctionHouse(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()), StringUtils.join(args, ' ').trim()));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
@ -52,7 +53,7 @@ public class CommandAuctionHouse extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected List<String> onTab(CommandSender sender, String... args) {
|
protected List<String> onTab(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
return AuctionHouse.getInstance().getCommandManager().getAllCommands().stream().filter(cmd -> cmd.getPermissionNode() == null || player.hasPermission(cmd.getPermissionNode())).map(AbstractCommand::getSyntax).collect(Collectors.toList());
|
return AuctionHouse.getInstance().getCommandManager().getAllCommands().stream().filter(cmd -> cmd.getPermissionNode() == null || player.hasPermission(cmd.getPermissionNode())).map(AbstractCommand::getSyntax).collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -35,9 +35,10 @@ public class CommandBan extends AbstractCommand {
|
|||||||
Player player = (Player) sender;
|
Player player = (Player) sender;
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
// Open the bans menu
|
// Open the bans menu
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIBans(player));
|
instance.getGuiManager().showGUI(player, new GUIBans(player));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -45,7 +46,7 @@ public class CommandBan extends AbstractCommand {
|
|||||||
return ReturnType.SYNTAX_ERROR;
|
return ReturnType.SYNTAX_ERROR;
|
||||||
}
|
}
|
||||||
|
|
||||||
Player target = PlayerUtils.findPlayer(args[0]);
|
final Player target = PlayerUtils.findPlayer(args[0]);
|
||||||
String timeString = args[1];
|
String timeString = args[1];
|
||||||
StringBuilder reason = new StringBuilder();
|
StringBuilder reason = new StringBuilder();
|
||||||
for (int i = 2; i < args.length; i++) {
|
for (int i = 2; i < args.length; i++) {
|
||||||
@ -59,7 +60,7 @@ public class CommandBan extends AbstractCommand {
|
|||||||
// try and look for an offline player
|
// try and look for an offline player
|
||||||
offlinePlayer = Bukkit.getOfflinePlayer(args[0]);
|
offlinePlayer = Bukkit.getOfflinePlayer(args[0]);
|
||||||
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore()) {
|
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[0]).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[0]).sendPrefixedMessage(player);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -67,17 +68,17 @@ public class CommandBan extends AbstractCommand {
|
|||||||
UUID toBan = target == null ? offlinePlayer.getUniqueId() : target.getUniqueId();
|
UUID toBan = target == null ? offlinePlayer.getUniqueId() : target.getUniqueId();
|
||||||
|
|
||||||
if (!AuctionAPI.getInstance().isValidTimeString(timeString)) {
|
if (!AuctionAPI.getInstance().isValidTimeString(timeString)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.invalidtimestring").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.invalidtimestring").sendPrefixedMessage(player);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (reason.toString().length() == 0) {
|
if (reason.toString().length() == 0) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("bans.nobanreason").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("bans.nobanreason").sendPrefixedMessage(player);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionBanManager().getBans().containsKey(toBan)) {
|
if (instance.getAuctionBanManager().getBans().containsKey(toBan)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("bans.playeralreadybanned").processPlaceholder("player", args[0]).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("bans.playeralreadybanned").processPlaceholder("player", args[0]).sendPrefixedMessage(player);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -88,11 +89,11 @@ public class CommandBan extends AbstractCommand {
|
|||||||
if (auctionBanPlayerEvent.isCancelled()) return;
|
if (auctionBanPlayerEvent.isCancelled()) return;
|
||||||
|
|
||||||
AuctionBan auctionBan = new AuctionBan(toBan, reason.toString().trim(), System.currentTimeMillis() + bannedSeconds * 1000);
|
AuctionBan auctionBan = new AuctionBan(toBan, reason.toString().trim(), System.currentTimeMillis() + bannedSeconds * 1000);
|
||||||
AuctionHouse.getInstance().getAuctionBanManager().addBan(auctionBan);
|
instance.getAuctionBanManager().addBan(auctionBan);
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("bans.bannedplayer").processPlaceholder("player", args[0]).processPlaceholder("ban_amount", TimeUtils.makeReadable(bannedSeconds * 1000)).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("bans.bannedplayer").processPlaceholder("player", args[0]).processPlaceholder("ban_amount", TimeUtils.makeReadable(bannedSeconds * 1000)).sendPrefixedMessage(player);
|
||||||
|
|
||||||
if (target != null) {
|
if (target != null) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("bans.remainingtime").processPlaceholder("ban_amount", TimeUtils.makeReadable(bannedSeconds * 1000)).sendPrefixedMessage(target);
|
instance.getLocale().getMessage("bans.remainingtime").processPlaceholder("ban_amount", TimeUtils.makeReadable(bannedSeconds * 1000)).sendPrefixedMessage(target);
|
||||||
}
|
}
|
||||||
}).execute();
|
}).execute();
|
||||||
|
|
||||||
|
@ -25,15 +25,16 @@ public class CommandExpired extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
if (instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIExpiredItems(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
instance.getGuiManager().showGUI(player, new GUIExpiredItems(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -44,12 +45,12 @@ public class CommandExpired extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getSyntax() {
|
public String getSyntax() {
|
||||||
return AuctionHouse.getInstance().getLocale().getMessage("commands.syntax.expired").getMessage();
|
return instance.getLocale().getMessage("commands.syntax.expired").getMessage();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getDescription() {
|
public String getDescription() {
|
||||||
return AuctionHouse.getInstance().getLocale().getMessage("commands.description.expired").getMessage();
|
return instance.getLocale().getMessage("commands.description.expired").getMessage();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -31,11 +31,12 @@ public class CommandFilter extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIFilterWhitelist(player));
|
instance.getGuiManager().showGUI(player, new GUIFilterWhitelist(player));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -52,19 +53,19 @@ public class CommandFilter extends AbstractCommand {
|
|||||||
|
|
||||||
ItemStack held = PlayerHelper.getHeldItem(player);
|
ItemStack held = PlayerHelper.getHeldItem(player);
|
||||||
if (held.getType() == XMaterial.AIR.parseMaterial()) {
|
if (held.getType() == XMaterial.AIR.parseMaterial()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.filter air").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.filter air").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getFilterManager().getFilteredItem(held) != null && AuctionHouse.getInstance().getFilterManager().getFilteredItem(held).getCategory() == AuctionItemCategory.valueOf(args[1].toUpperCase())) {
|
if (instance.getFilterManager().getFilteredItem(held) != null && instance.getFilterManager().getFilteredItem(held).getCategory() == AuctionItemCategory.valueOf(args[1].toUpperCase())) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.filteritemaddedalready").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.filteritemaddedalready").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionFilterItem filterItem = new AuctionFilterItem(held, AuctionItemCategory.valueOf(args[1].toUpperCase()));
|
AuctionFilterItem filterItem = new AuctionFilterItem(held, AuctionItemCategory.valueOf(args[1].toUpperCase()));
|
||||||
AuctionHouse.getInstance().getFilterManager().addFilterItem(filterItem);
|
instance.getFilterManager().addFilterItem(filterItem);
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.addeditemtofilterwhitelist").processPlaceholder("item_name", AuctionAPI.getInstance().getItemName(held)).processPlaceholder("filter_category", args[1]).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.addeditemtofilterwhitelist").processPlaceholder("item_name", AuctionAPI.getInstance().getItemName(held)).processPlaceholder("filter_category", args[1]).sendPrefixedMessage(player);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -36,16 +36,17 @@ public final class CommandMarkChest extends AbstractCommand {
|
|||||||
if (targetBlock.getType() != XMaterial.CHEST.parseMaterial()) return ReturnType.FAILURE;
|
if (targetBlock.getType() != XMaterial.CHEST.parseMaterial()) return ReturnType.FAILURE;
|
||||||
|
|
||||||
final Chest chest = (Chest) targetBlock.getState();
|
final Chest chest = (Chest) targetBlock.getState();
|
||||||
final NamespacedKey key = new NamespacedKey(AuctionHouse.getInstance(), "AuctionHouseMarkedChest");
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
final NamespacedKey key = new NamespacedKey(instance, "AuctionHouseMarkedChest");
|
||||||
|
|
||||||
if (chest.getPersistentDataContainer().has(key, PersistentDataType.BYTE)) {
|
if (chest.getPersistentDataContainer().has(key, PersistentDataType.BYTE)) {
|
||||||
chest.getPersistentDataContainer().remove(key);
|
chest.getPersistentDataContainer().remove(key);
|
||||||
chest.update(true);
|
chest.update(true);
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.unmarked chest").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.unmarked chest").sendPrefixedMessage(player);
|
||||||
} else {
|
} else {
|
||||||
chest.getPersistentDataContainer().set(key, PersistentDataType.BYTE, (byte) 1);
|
chest.getPersistentDataContainer().set(key, PersistentDataType.BYTE, (byte) 1);
|
||||||
chest.update(true);
|
chest.update(true);
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.marked chest").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.marked chest").sendPrefixedMessage(player);
|
||||||
}
|
}
|
||||||
|
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
|
@ -21,17 +21,18 @@ public final class CommandMiddleware {
|
|||||||
public AbstractCommand.ReturnType handle(@NonNull final Player player) {
|
public AbstractCommand.ReturnType handle(@NonNull final Player player) {
|
||||||
if (AuctionAPI.tellMigrationStatus(player)) return AbstractCommand.ReturnType.FAILURE;
|
if (AuctionAPI.tellMigrationStatus(player)) return AbstractCommand.ReturnType.FAILURE;
|
||||||
|
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
if (Settings.BLOCKED_WORLDS.getStringList().contains(player.getWorld().getName())) {
|
if (Settings.BLOCKED_WORLDS.getStringList().contains(player.getWorld().getName())) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.disabled in world").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.disabled in world").sendPrefixedMessage(player);
|
||||||
return AbstractCommand.ReturnType.FAILURE;
|
return AbstractCommand.ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Settings.USE_AUCTION_CHEST_MODE.getBoolean()) {
|
if (Settings.USE_AUCTION_CHEST_MODE.getBoolean()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.visit auction chest").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.visit auction chest").sendPrefixedMessage(player);
|
||||||
return AbstractCommand.ReturnType.FAILURE;
|
return AbstractCommand.ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionBanManager().checkAndHandleBan(player)) {
|
if (instance.getAuctionBanManager().checkAndHandleBan(player)) {
|
||||||
return AbstractCommand.ReturnType.FAILURE;
|
return AbstractCommand.ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -29,11 +29,12 @@ public class CommandMinPrice extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIMinItemPrices(player));
|
instance.getGuiManager().showGUI(player, new GUIMinItemPrices(player));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -42,26 +43,26 @@ public class CommandMinPrice extends AbstractCommand {
|
|||||||
ItemStack held = PlayerHelper.getHeldItem(player);
|
ItemStack held = PlayerHelper.getHeldItem(player);
|
||||||
|
|
||||||
if (held.getType() == XMaterial.AIR.parseMaterial()) {
|
if (held.getType() == XMaterial.AIR.parseMaterial()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.min item price air").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.min item price air").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getMinItemPriceManager().getMinPrice(held.clone()) != null) {
|
if (instance.getMinItemPriceManager().getMinPrice(held.clone()) != null) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.min price already added").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.min price already added").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (!NumberUtils.isNumeric(args[1])) {
|
if (!NumberUtils.isNumeric(args[1])) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.notanumber").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.notanumber").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
final double price = Double.parseDouble(args[1]);
|
final double price = Double.parseDouble(args[1]);
|
||||||
|
|
||||||
AuctionHouse.getInstance().getDataManager().insertMinPriceAsync(new MinItemPrice(held.clone(), price), (error, inserted) -> {
|
instance.getDataManager().insertMinPriceAsync(new MinItemPrice(held.clone(), price), (error, inserted) -> {
|
||||||
if (error == null) {
|
if (error == null) {
|
||||||
AuctionHouse.getInstance().getMinItemPriceManager().addItem(inserted);
|
instance.getMinItemPriceManager().addItem(inserted);
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.added min price")
|
instance.getLocale().getMessage("general.added min price")
|
||||||
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(inserted.getItemStack()))
|
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(inserted.getItemStack()))
|
||||||
.processPlaceholder("price", AuctionAPI.getInstance().formatNumber(inserted.getPrice()))
|
.processPlaceholder("price", AuctionAPI.getInstance().formatNumber(inserted.getPrice()))
|
||||||
.sendPrefixedMessage(player);
|
.sendPrefixedMessage(player);
|
||||||
|
@ -23,8 +23,9 @@ public class CommandReload extends AbstractCommand {
|
|||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
if (AuctionAPI.tellMigrationStatus(sender)) return ReturnType.FAILURE;
|
if (AuctionAPI.tellMigrationStatus(sender)) return ReturnType.FAILURE;
|
||||||
AuctionHouse.getInstance().reloadConfig();
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&aReloaded files")).sendPrefixedMessage(sender);
|
instance.reloadConfig();
|
||||||
|
instance.getLocale().newMessage(TextUtils.formatText("&aReloaded files")).sendPrefixedMessage(sender);
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -26,21 +26,22 @@ public class CommandSearch extends AbstractCommand {
|
|||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
if (args.length <= 0) return ReturnType.SYNTAX_ERROR;
|
if (args.length <= 0) return ReturnType.SYNTAX_ERROR;
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
StringBuilder builder = new StringBuilder();
|
final StringBuilder builder = new StringBuilder();
|
||||||
for (String arg : args) {
|
for (String arg : args) {
|
||||||
builder.append(arg).append(" ");
|
builder.append(arg).append(" ");
|
||||||
}
|
}
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
if (instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAuctionHouse(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()), builder.toString().trim()));
|
instance.getGuiManager().showGUI(player, new GUIAuctionHouse(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()), builder.toString().trim()));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -48,19 +48,20 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
if (instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionPlayer auctionPlayer = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
AuctionPlayer auctionPlayer = instance.getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
||||||
|
|
||||||
ItemStack originalItem = PlayerHelper.getHeldItem(player).clone();
|
ItemStack originalItem = PlayerHelper.getHeldItem(player).clone();
|
||||||
ItemStack itemToSell = PlayerHelper.getHeldItem(player).clone();
|
ItemStack itemToSell = PlayerHelper.getHeldItem(player).clone();
|
||||||
|
|
||||||
// check if player is at their selling limit
|
// check if player is at their selling limit
|
||||||
if (auctionPlayer.isAtSellLimit()) {
|
if (auctionPlayer.isAtSellLimit()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.sellinglimit").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.sellinglimit").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -71,18 +72,18 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (itemToSell.getType() == XMaterial.AIR.parseMaterial() && Settings.SELL_MENU_REQUIRES_USER_TO_HOLD_ITEM.getBoolean()) {
|
if (itemToSell.getType() == XMaterial.AIR.parseMaterial() && Settings.SELL_MENU_REQUIRES_USER_TO_HOLD_ITEM.getBoolean()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.air").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.air").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
} else {
|
} else {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUISellItem(auctionPlayer, itemToSell));
|
instance.getGuiManager().showGUI(player, new GUISellItem(auctionPlayer, itemToSell));
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addItemToSellHolding(player.getUniqueId(), itemToSell);
|
instance.getAuctionPlayerManager().addItemToSellHolding(player.getUniqueId(), itemToSell);
|
||||||
PlayerUtils.takeActiveItem(player, CompatibleHand.MAIN_HAND, itemToSell.getAmount());
|
PlayerUtils.takeActiveItem(player, CompatibleHand.MAIN_HAND, itemToSell.getAmount());
|
||||||
}
|
}
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (itemToSell.getType() == XMaterial.AIR.parseMaterial()) {
|
if (itemToSell.getType() == XMaterial.AIR.parseMaterial()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.air").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.air").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -90,12 +91,12 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
|
|
||||||
if (Settings.MAKE_BLOCKED_ITEMS_A_WHITELIST.getBoolean()) {
|
if (Settings.MAKE_BLOCKED_ITEMS_A_WHITELIST.getBoolean()) {
|
||||||
if (!Settings.BLOCKED_ITEMS.getStringList().contains(itemToSell.getType().name())) {
|
if (!Settings.BLOCKED_ITEMS.getStringList().contains(itemToSell.getType().name())) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.blockeditem").processPlaceholder("item", itemToSell.getType().name()).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.blockeditem").processPlaceholder("item", itemToSell.getType().name()).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
if (Settings.BLOCKED_ITEMS.getStringList().contains(itemToSell.getType().name())) {
|
if (Settings.BLOCKED_ITEMS.getStringList().contains(itemToSell.getType().name())) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.blockeditem").processPlaceholder("item", itemToSell.getType().name()).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.blockeditem").processPlaceholder("item", itemToSell.getType().name()).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -108,7 +109,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
// Check for blocked names and lore
|
// Check for blocked names and lore
|
||||||
for (String s : Settings.BLOCKED_ITEM_NAMES.getStringList()) {
|
for (String s : Settings.BLOCKED_ITEM_NAMES.getStringList()) {
|
||||||
if (AuctionAPI.getInstance().match(s, itemName)) {
|
if (AuctionAPI.getInstance().match(s, itemName)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.blockedname").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.blockedname").sendPrefixedMessage(player);
|
||||||
blocked = true;
|
blocked = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -117,7 +118,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
for (String s : Settings.BLOCKED_ITEM_LORES.getStringList()) {
|
for (String s : Settings.BLOCKED_ITEM_LORES.getStringList()) {
|
||||||
for (String line : itemLore) {
|
for (String line : itemLore) {
|
||||||
if (AuctionAPI.getInstance().match(s, line)) {
|
if (AuctionAPI.getInstance().match(s, line)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.blockedlore").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.blockedlore").sendPrefixedMessage(player);
|
||||||
blocked = true;
|
blocked = true;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -194,7 +195,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
}
|
}
|
||||||
// check buy now price null
|
// check buy now price null
|
||||||
if (buyNowPrice == null) {
|
if (buyNowPrice == null) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.please_enter_at_least_one_number").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.please_enter_at_least_one_number").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -204,7 +205,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
if (!isBiddingItem /* && buyNowPrice != null */) {
|
if (!isBiddingItem /* && buyNowPrice != null */) {
|
||||||
// min item price todo fix it broke
|
// min item price todo fix it broke
|
||||||
if (!AuctionAPI.getInstance().meetsMinItemPrice(isBundle, isBiddingItem, originalItem, buyNowPrice, isBiddingItem ? startingBid : 0)) {
|
if (!AuctionAPI.getInstance().meetsMinItemPrice(isBundle, isBiddingItem, originalItem, buyNowPrice, isBiddingItem ? startingBid : 0)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.minitemprice").processPlaceholder("price", AuctionAPI.getInstance().formatNumber(AuctionHouse.getInstance().getMinItemPriceManager().getMinPrice(originalItem).getPrice())).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("pricing.minitemprice").processPlaceholder("price", AuctionAPI.getInstance().formatNumber(instance.getMinItemPriceManager().getMinPrice(originalItem).getPrice())).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -215,7 +216,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
if (isBiddingItem && /* buyNowPrice != null && */ startingBid != null) {
|
if (isBiddingItem && /* buyNowPrice != null && */ startingBid != null) {
|
||||||
// min item price todo fix it broke
|
// min item price todo fix it broke
|
||||||
if (!AuctionAPI.getInstance().meetsMinItemPrice(isBundle, isBiddingItem, originalItem, buyNowPrice, isBiddingItem ? startingBid : 0)) {
|
if (!AuctionAPI.getInstance().meetsMinItemPrice(isBundle, isBiddingItem, originalItem, buyNowPrice, isBiddingItem ? startingBid : 0)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.minitemprice").processPlaceholder("price", AuctionAPI.getInstance().formatNumber(AuctionHouse.getInstance().getMinItemPriceManager().getMinPrice(originalItem).getPrice())).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("pricing.minitemprice").processPlaceholder("price", AuctionAPI.getInstance().formatNumber(instance.getMinItemPriceManager().getMinPrice(originalItem).getPrice())).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -223,24 +224,24 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
|
|
||||||
// check the starting bid values
|
// check the starting bid values
|
||||||
if (startingBid < Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()) {
|
if (startingBid < Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.minstartingprice").processPlaceholder("price", Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("pricing.minstartingprice").processPlaceholder("price", Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (startingBid > Settings.MAX_AUCTION_START_PRICE.getDouble()) {
|
if (startingBid > Settings.MAX_AUCTION_START_PRICE.getDouble()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.maxstartingprice").processPlaceholder("price", Settings.MAX_AUCTION_START_PRICE.getDouble()).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("pricing.maxstartingprice").processPlaceholder("price", Settings.MAX_AUCTION_START_PRICE.getDouble()).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
// if present check the bid increment pricing
|
// if present check the bid increment pricing
|
||||||
if (bidIncrement != null) {
|
if (bidIncrement != null) {
|
||||||
if (bidIncrement < Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()) {
|
if (bidIncrement < Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.minbidincrementprice").processPlaceholder("price", Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("pricing.minbidincrementprice").processPlaceholder("price", Settings.MIN_AUCTION_INCREMENT_PRICE.getDouble()).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
if (bidIncrement > Settings.MAX_AUCTION_INCREMENT_PRICE.getDouble()) {
|
if (bidIncrement > Settings.MAX_AUCTION_INCREMENT_PRICE.getDouble()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.maxbidincrementprice").processPlaceholder("price", Settings.MAX_AUCTION_START_PRICE.getDouble()).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("pricing.maxbidincrementprice").processPlaceholder("price", Settings.MAX_AUCTION_START_PRICE.getDouble()).sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -249,7 +250,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
|
|
||||||
// check if the starting bid is not higher than the buy now
|
// check if the starting bid is not higher than the buy now
|
||||||
if (Settings.BASE_PRICE_MUST_BE_HIGHER_THAN_BID_START.getBoolean() && startingBid > buyNowPrice && !(buyNowPrice <= -1)) {
|
if (Settings.BASE_PRICE_MUST_BE_HIGHER_THAN_BID_START.getBoolean() && startingBid > buyNowPrice && !(buyNowPrice <= -1)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.basepricetoolow").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("pricing.basepricetoolow").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -263,7 +264,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
} else {
|
} else {
|
||||||
if (isBundle) {
|
if (isBundle) {
|
||||||
if (NBTEditor.contains(itemToSell, "AuctionBundleItem")) {
|
if (NBTEditor.contains(itemToSell, "AuctionBundleItem")) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.cannotsellbundleditem").sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.cannotsellbundleditem").sendPrefixedMessage(player);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -286,7 +287,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (isBundle) {
|
if (isBundle) {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIBundleCreation(
|
instance.getGuiManager().showGUI(player, new GUIBundleCreation(
|
||||||
auctionPlayer,
|
auctionPlayer,
|
||||||
allowedTime,
|
allowedTime,
|
||||||
buyNowAllow,
|
buyNowAllow,
|
||||||
@ -332,7 +333,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
boolean finalPartialBuy = partialBuy;
|
boolean finalPartialBuy = partialBuy;
|
||||||
boolean finalIsBundle = isBundle;
|
boolean finalIsBundle = isBundle;
|
||||||
|
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIListingConfirm(player, auctionedItem, result -> {
|
instance.getGuiManager().showGUI(player, new GUIListingConfirm(player, auctionedItem, result -> {
|
||||||
if (!result) {
|
if (!result) {
|
||||||
player.closeInventory();
|
player.closeInventory();
|
||||||
return;
|
return;
|
||||||
@ -356,7 +357,7 @@ public final class CommandSell extends AbstractCommand {
|
|||||||
|
|
||||||
player.closeInventory();
|
player.closeInventory();
|
||||||
if (Settings.OPEN_MAIN_AUCTION_HOUSE_AFTER_MENU_LIST.getBoolean()) {
|
if (Settings.OPEN_MAIN_AUCTION_HOUSE_AFTER_MENU_LIST.getBoolean()) {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAuctionHouse(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
instance.getGuiManager().showGUI(player, new GUIAuctionHouse(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
||||||
}
|
}
|
||||||
}));
|
}));
|
||||||
} else {
|
} else {
|
||||||
|
@ -32,17 +32,18 @@ public final class CommandSellDev extends AbstractCommand {
|
|||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
if (instance.getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
AuctionPlayer auctionPlayer = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
AuctionPlayer auctionPlayer = instance.getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
||||||
|
|
||||||
if (args.length == 0)
|
if (args.length == 0)
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUISellListingType(auctionPlayer, selected -> {
|
instance.getGuiManager().showGUI(player, new GUISellListingType(auctionPlayer, selected -> {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUISellPlaceItem(auctionPlayer, GUISellPlaceItem.ViewMode.SINGLE_ITEM, selected));
|
instance.getGuiManager().showGUI(player, new GUISellPlaceItem(auctionPlayer, GUISellPlaceItem.ViewMode.SINGLE_ITEM, selected));
|
||||||
}));
|
}));
|
||||||
|
|
||||||
if (args.length == 1) {
|
if (args.length == 1) {
|
||||||
@ -68,13 +69,17 @@ public final class CommandSellDev extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected List<String> onTab(CommandSender sender, String... args) {
|
protected List<String> onTab(CommandSender sender, String... args) {
|
||||||
if (args.length == 1)
|
final int length = args.length;
|
||||||
return Arrays.asList(AuctionHouse.getInstance().getLocale().getMessage("commands.sell.args.suggestion one").getMessage().split(" "));
|
switch (length) {
|
||||||
if (args.length == 2)
|
case 1:
|
||||||
return Arrays.asList(AuctionHouse.getInstance().getLocale().getMessage("commands.sell.args.suggestion two").getMessage().split(" "));
|
return Arrays.asList(AuctionHouse.getInstance().getLocale().getMessage("commands.sell.args.suggestion one").getMessage().split(" "));
|
||||||
if (args.length == 3)
|
case 2:
|
||||||
return Arrays.asList(AuctionHouse.getInstance().getLocale().getMessage("commands.sell.args.suggestion three").getMessage().split(" "));
|
return Arrays.asList(AuctionHouse.getInstance().getLocale().getMessage("commands.sell.args.suggestion two").getMessage().split(" "));
|
||||||
return null;
|
case 3:
|
||||||
|
return Arrays.asList(AuctionHouse.getInstance().getLocale().getMessage("commands.sell.args.suggestion three").getMessage().split(" "));
|
||||||
|
default:
|
||||||
|
return null;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -29,7 +29,8 @@ public class CommandSettings extends AbstractCommand {
|
|||||||
Player player = (Player) sender;
|
Player player = (Player) sender;
|
||||||
if (AuctionAPI.tellMigrationStatus(player)) return ReturnType.FAILURE;
|
if (AuctionAPI.tellMigrationStatus(player)) return ReturnType.FAILURE;
|
||||||
|
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new PluginConfigGui(AuctionHouse.getInstance(), AuctionHouse.getInstance().getLocale().getMessage("general.prefix").getMessage()));
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
instance.getGuiManager().showGUI(player, new PluginConfigGui(instance, instance.getLocale().getMessage("general.prefix").getMessage()));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -26,31 +26,32 @@ public class CommandStats extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
final AuctionPlayer user = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
final AuctionPlayer user = instance.getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
||||||
|
|
||||||
if (user == null) {
|
if (user == null) {
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
if (args.length == 0) {
|
if (args.length == 0) {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIStatisticViewSelect(user));
|
instance.getGuiManager().showGUI(player, new GUIStatisticViewSelect(user));
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
|
||||||
final Player target = Bukkit.getPlayerExact(args[0]);
|
final Player target = Bukkit.getPlayerExact(args[0]);
|
||||||
|
|
||||||
if (target == null) {
|
if (target == null) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
instance.getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
final AuctionPlayer targetAuctionPlayer = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(target.getUniqueId());
|
final AuctionPlayer targetAuctionPlayer = instance.getAuctionPlayerManager().getPlayer(target.getUniqueId());
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIStatisticTarget(user, targetAuctionPlayer));
|
instance.getGuiManager().showGUI(player, new GUIStatisticTarget(user, targetAuctionPlayer));
|
||||||
|
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
@ -9,6 +9,7 @@ import org.bukkit.command.CommandSender;
|
|||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.UUID;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* The current file has been created by Kiran Hart
|
* The current file has been created by Kiran Hart
|
||||||
@ -25,16 +26,17 @@ public class CommandToggleListInfo extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
|
final UUID playerUUID = player.getUniqueId();
|
||||||
if (AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId()) == null) {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
if (instance.getAuctionPlayerManager().getPlayer(playerUUID) == null) {
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
instance.getLocale().newMessage(TextUtils.formatText("&cCould not find auction player instance for&f: &e" + player.getName() + "&c creating one now.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
|
instance.getAuctionPlayerManager().addPlayer(new AuctionPlayer(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionPlayer auctionPlayer = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
final AuctionPlayer auctionPlayer = instance.getAuctionPlayerManager().getPlayer(playerUUID);
|
||||||
auctionPlayer.setShowListingInfo(!auctionPlayer.isShowListingInfo());
|
auctionPlayer.setShowListingInfo(!auctionPlayer.isShowListingInfo());
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.toggled listing." + (auctionPlayer.isShowListingInfo() ? "on" : "off")).sendPrefixedMessage(player);
|
instance.getLocale().getMessage("general.toggled listing." + (auctionPlayer.isShowListingInfo() ? "on" : "off")).sendPrefixedMessage(player);
|
||||||
|
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
}
|
}
|
||||||
|
@ -24,14 +24,15 @@ public class CommandTransactions extends AbstractCommand {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
protected ReturnType runCommand(CommandSender sender, String... args) {
|
protected ReturnType runCommand(CommandSender sender, String... args) {
|
||||||
Player player = (Player) sender;
|
final Player player = (Player) sender;
|
||||||
|
|
||||||
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
if (CommandMiddleware.handle(player) == ReturnType.FAILURE) return ReturnType.FAILURE;
|
||||||
|
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
if (Settings.RESTRICT_ALL_TRANSACTIONS_TO_PERM.getBoolean() && !player.hasPermission("auctionhouse.transactions.viewall")) {
|
if (Settings.RESTRICT_ALL_TRANSACTIONS_TO_PERM.getBoolean() && !player.hasPermission("auctionhouse.transactions.viewall")) {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUITransactionList(player, false));
|
instance.getGuiManager().showGUI(player, new GUITransactionList(player, false));
|
||||||
} else {
|
} else {
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUITransactionType(player));
|
instance.getGuiManager().showGUI(player, new GUITransactionType(player));
|
||||||
}
|
}
|
||||||
|
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
|
@ -30,26 +30,27 @@ public class CommandUnban extends AbstractCommand {
|
|||||||
if (args.length != 1) return ReturnType.SYNTAX_ERROR;
|
if (args.length != 1) return ReturnType.SYNTAX_ERROR;
|
||||||
if (AuctionAPI.tellMigrationStatus(sender)) return ReturnType.FAILURE;
|
if (AuctionAPI.tellMigrationStatus(sender)) return ReturnType.FAILURE;
|
||||||
|
|
||||||
Player target = PlayerUtils.findPlayer(args[0]);
|
final Player target = PlayerUtils.findPlayer(args[0]);
|
||||||
OfflinePlayer offlinePlayer = null;
|
OfflinePlayer offlinePlayer = null;
|
||||||
|
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
if (target == null) {
|
if (target == null) {
|
||||||
offlinePlayer = Bukkit.getOfflinePlayer(args[0]);
|
offlinePlayer = Bukkit.getOfflinePlayer(args[0]);
|
||||||
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore()) {
|
if (offlinePlayer == null || !offlinePlayer.hasPlayedBefore()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
instance.getLocale().getMessage("general.playernotfound").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
UUID toUnBan = target == null ? offlinePlayer.getUniqueId() : target.getUniqueId();
|
UUID toUnBan = target == null ? offlinePlayer.getUniqueId() : target.getUniqueId();
|
||||||
|
|
||||||
if (!AuctionHouse.getInstance().getAuctionBanManager().getBans().containsKey(toUnBan)) {
|
if (!instance.getAuctionBanManager().getBans().containsKey(toUnBan)) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("bans.playernotbanned").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
instance.getLocale().getMessage("bans.playernotbanned").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
||||||
return ReturnType.FAILURE;
|
return ReturnType.FAILURE;
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getAuctionBanManager().removeBan(toUnBan);
|
instance.getAuctionBanManager().removeBan(toUnBan);
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("bans.playerunbanned").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
instance.getLocale().getMessage("bans.playerunbanned").processPlaceholder("player", args[0]).sendPrefixedMessage(sender);
|
||||||
if (target != null) {
|
if (target != null) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("bans.unbanned").sendPrefixedMessage(target);
|
AuctionHouse.getInstance().getLocale().getMessage("bans.unbanned").sendPrefixedMessage(target);
|
||||||
}
|
}
|
||||||
|
@ -41,22 +41,23 @@ public final class CommandUpload extends AbstractCommand {
|
|||||||
|
|
||||||
if (!args[0].equalsIgnoreCase("-confirm")) return ReturnType.FAILURE;
|
if (!args[0].equalsIgnoreCase("-confirm")) return ReturnType.FAILURE;
|
||||||
|
|
||||||
DatabaseConnector databaseConnector = new SQLiteConnector(AuctionHouse.getInstance());
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
DataManager manager = new DataManager(databaseConnector, AuctionHouse.getInstance(), null);
|
final DatabaseConnector databaseConnector = new SQLiteConnector(instance);
|
||||||
|
final DataManager manager = new DataManager(databaseConnector, instance, null);
|
||||||
|
|
||||||
manager.getItems((error, items) -> {
|
manager.getItems((error, items) -> {
|
||||||
if (error == null)
|
if (error == null)
|
||||||
items.forEach(item -> AuctionHouse.getInstance().getDataManager().insertAuctionAsync(item, null));
|
items.forEach(item -> instance.getDataManager().insertAuctionAsync(item, null));
|
||||||
});
|
});
|
||||||
|
|
||||||
manager.getAdminLogs((error, logs) -> {
|
manager.getAdminLogs((error, logs) -> {
|
||||||
if (error == null)
|
if (error == null)
|
||||||
logs.forEach(log -> AuctionHouse.getInstance().getDataManager().insertLogAsync(log));
|
logs.forEach(log -> instance.getDataManager().insertLogAsync(log));
|
||||||
});
|
});
|
||||||
|
|
||||||
manager.getTransactions((error, transactions) -> {
|
manager.getTransactions((error, transactions) -> {
|
||||||
if (error == null)
|
if (error == null)
|
||||||
transactions.forEach(transaction -> AuctionHouse.getInstance().getDataManager().insertTransactionAsync(transaction, null));
|
transactions.forEach(transaction -> instance.getDataManager().insertTransactionAsync(transaction, null));
|
||||||
});
|
});
|
||||||
|
|
||||||
return ReturnType.SUCCESS;
|
return ReturnType.SUCCESS;
|
||||||
|
@ -306,6 +306,7 @@ public class DataManager extends DataManagerAbstract {
|
|||||||
public void insertAuction(AuctionedItem item, Callback<AuctionedItem> callback) {
|
public void insertAuction(AuctionedItem item, Callback<AuctionedItem> callback) {
|
||||||
this.databaseConnector.connect(connection -> {
|
this.databaseConnector.connect(connection -> {
|
||||||
try (PreparedStatement statement = connection.prepareStatement("INSERT INTO " + this.getTablePrefix() + "auctions(id, owner, highest_bidder, owner_name, highest_bidder_name, category, base_price, bid_start_price, bid_increment_price, current_price, expired, expires_at, item_material, item_name, item_lore, item_enchants, item, listed_world, infinite, allow_partial_buys) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)")) {
|
try (PreparedStatement statement = connection.prepareStatement("INSERT INTO " + this.getTablePrefix() + "auctions(id, owner, highest_bidder, owner_name, highest_bidder_name, category, base_price, bid_start_price, bid_increment_price, current_price, expired, expires_at, item_material, item_name, item_lore, item_enchants, item, listed_world, infinite, allow_partial_buys) VALUES(?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?, ?)")) {
|
||||||
|
final AuctionAPI api = AuctionAPI.getInstance();
|
||||||
PreparedStatement fetch = connection.prepareStatement("SELECT * FROM " + this.getTablePrefix() + "auctions WHERE id = ?");
|
PreparedStatement fetch = connection.prepareStatement("SELECT * FROM " + this.getTablePrefix() + "auctions WHERE id = ?");
|
||||||
|
|
||||||
fetch.setString(1, item.getId().toString());
|
fetch.setString(1, item.getId().toString());
|
||||||
@ -322,9 +323,9 @@ public class DataManager extends DataManagerAbstract {
|
|||||||
statement.setBoolean(11, item.isExpired());
|
statement.setBoolean(11, item.isExpired());
|
||||||
statement.setLong(12, item.getExpiresAt());
|
statement.setLong(12, item.getExpiresAt());
|
||||||
statement.setString(13, item.getItem().getType().name());
|
statement.setString(13, item.getItem().getType().name());
|
||||||
statement.setString(14, AuctionAPI.getInstance().getItemName(item.getItem()));
|
statement.setString(14, api.getItemName(item.getItem()));
|
||||||
statement.setString(15, AuctionAPI.getInstance().serializeLines(AuctionAPI.getInstance().getItemLore(item.getItem())));
|
statement.setString(15, api.serializeLines(api.getItemLore(item.getItem())));
|
||||||
statement.setString(16, AuctionAPI.getInstance().serializeLines(AuctionAPI.getInstance().getItemEnchantments(item.getItem())));
|
statement.setString(16, api.serializeLines(api.getItemEnchantments(item.getItem())));
|
||||||
statement.setString(17, AuctionAPI.encodeItem(item.getItem()));
|
statement.setString(17, AuctionAPI.encodeItem(item.getItem()));
|
||||||
statement.setString(18, item.getListedWorld());
|
statement.setString(18, item.getListedWorld());
|
||||||
statement.setBoolean(19, item.isInfinite());
|
statement.setBoolean(19, item.isInfinite());
|
||||||
|
@ -38,12 +38,13 @@ public final class GUIMinItemPrices extends AbstractPlaceholderGui {
|
|||||||
reset();
|
reset();
|
||||||
|
|
||||||
pages = (int) Math.max(1, Math.ceil(this.minPrices.size() / (double) 45));
|
pages = (int) Math.max(1, Math.ceil(this.minPrices.size() / (double) 45));
|
||||||
|
|
||||||
setPrevPage(5, 3, new TItemBuilder(Objects.requireNonNull(Settings.GUI_BACK_BTN_ITEM.getMaterial().parseMaterial())).setName(Settings.GUI_BACK_BTN_NAME.getString()).setLore(Settings.GUI_BACK_BTN_LORE.getStringList()).toItemStack());
|
setPrevPage(5, 3, new TItemBuilder(Objects.requireNonNull(Settings.GUI_BACK_BTN_ITEM.getMaterial().parseMaterial())).setName(Settings.GUI_BACK_BTN_NAME.getString()).setLore(Settings.GUI_BACK_BTN_LORE.getStringList()).toItemStack());
|
||||||
setNextPage(5, 5, new TItemBuilder(Objects.requireNonNull(Settings.GUI_NEXT_BTN_ITEM.getMaterial().parseMaterial())).setName(Settings.GUI_NEXT_BTN_NAME.getString()).setLore(Settings.GUI_NEXT_BTN_LORE.getStringList()).toItemStack());
|
setNextPage(5, 5, new TItemBuilder(Objects.requireNonNull(Settings.GUI_NEXT_BTN_ITEM.getMaterial().parseMaterial())).setName(Settings.GUI_NEXT_BTN_NAME.getString()).setLore(Settings.GUI_NEXT_BTN_LORE.getStringList()).toItemStack());
|
||||||
setOnPage(e -> draw());
|
setOnPage(e -> draw());
|
||||||
|
|
||||||
int slot = 0;
|
int slot = 0;
|
||||||
List<MinItemPrice> data = this.minPrices.stream().skip((page - 1) * 45L).limit(45).collect(Collectors.toList());
|
final List<MinItemPrice> data = this.minPrices.stream().skip((page - 1) * 45L).limit(45).collect(Collectors.toList());
|
||||||
|
|
||||||
for (MinItemPrice minItemPrice : data) {
|
for (MinItemPrice minItemPrice : data) {
|
||||||
|
|
||||||
|
@ -45,35 +45,36 @@ public final class GUIStatisticSelf extends AbstractPlaceholderGui {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void draw() {
|
private void draw() {
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
|
||||||
// created auction
|
// created auction
|
||||||
setItem(1, 1, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_CREATED_AUCTION_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_AUCTION_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_AUCTION_LORE.getStringList(), new HashMap<String, Object>() {{
|
setItem(1, 1, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_CREATED_AUCTION_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_AUCTION_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_AUCTION_LORE.getStringList(), new HashMap<String, Object>() {{
|
||||||
put("%created_auctions%", (int) AuctionHouse.getInstance().getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.CREATED_AUCTION));
|
put("%created_auctions%", (int) instance.getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.CREATED_AUCTION));
|
||||||
}}));
|
}}));
|
||||||
|
|
||||||
// sold auction
|
// sold auction
|
||||||
setItem(3, 1, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_SOLD_AUCTION_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_AUCTION_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_AUCTION_LORE.getStringList(), new HashMap<String, Object>() {{
|
setItem(3, 1, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_SOLD_AUCTION_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_AUCTION_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_AUCTION_LORE.getStringList(), new HashMap<String, Object>() {{
|
||||||
put("%sold_auctions%", (int) AuctionHouse.getInstance().getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.SOLD_AUCTION));
|
put("%sold_auctions%", (int) instance.getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.SOLD_AUCTION));
|
||||||
}}));
|
}}));
|
||||||
|
|
||||||
// created bin
|
// created bin
|
||||||
setItem(1, 4, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_CREATED_BIN_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_BIN_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_BIN_LORE.getStringList(), new HashMap<String, Object>() {{
|
setItem(1, 4, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_CREATED_BIN_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_BIN_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_CREATED_BIN_LORE.getStringList(), new HashMap<String, Object>() {{
|
||||||
put("%created_bins%", (int) AuctionHouse.getInstance().getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.CREATED_BIN));
|
put("%created_bins%", (int) instance.getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.CREATED_BIN));
|
||||||
}}));
|
}}));
|
||||||
|
|
||||||
// sold bin
|
// sold bin
|
||||||
setItem(3, 4, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_SOLD_BIN_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_BIN_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_BIN_LORE.getStringList(), new HashMap<String, Object>() {{
|
setItem(3, 4, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_SOLD_BIN_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_BIN_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_SOLD_BIN_LORE.getStringList(), new HashMap<String, Object>() {{
|
||||||
put("%sold_bins%", (int) AuctionHouse.getInstance().getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.SOLD_BIN));
|
put("%sold_bins%", (int) instance.getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.SOLD_BIN));
|
||||||
}}));
|
}}));
|
||||||
|
|
||||||
// money earned
|
// money earned
|
||||||
setItem(1, 7, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_MONEY_EARNED_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_EARNED_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_EARNED_LORE.getStringList(), new HashMap<String, Object>() {{
|
setItem(1, 7, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_MONEY_EARNED_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_EARNED_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_EARNED_LORE.getStringList(), new HashMap<String, Object>() {{
|
||||||
put("%money_earned%", AuctionAPI.getInstance().formatNumber(AuctionHouse.getInstance().getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.MONEY_EARNED)));
|
put("%money_earned%", AuctionAPI.getInstance().formatNumber(instance.getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.MONEY_EARNED)));
|
||||||
}}));
|
}}));
|
||||||
|
|
||||||
// money spent
|
// money spent
|
||||||
setItem(3, 7, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_MONEY_SPENT_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_SPENT_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_SPENT_LORE.getStringList(), new HashMap<String, Object>() {{
|
setItem(3, 7, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_STATS_SELF_ITEMS_MONEY_SPENT_ITEM.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_SPENT_NAME.getString(), Settings.GUI_STATS_SELF_ITEMS_MONEY_SPENT_LORE.getStringList(), new HashMap<String, Object>() {{
|
||||||
put("%money_spent%", AuctionAPI.getInstance().formatNumber(AuctionHouse.getInstance().getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.MONEY_SPENT)));
|
put("%money_spent%", AuctionAPI.getInstance().formatNumber(instance.getAuctionStatisticManager().getStatisticByPlayer(player.getUniqueId(), AuctionStatisticType.MONEY_SPENT)));
|
||||||
}}));
|
}}));
|
||||||
|
|
||||||
setButton(5, 4, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_CLOSE_BTN_ITEM.getString(), Settings.GUI_CLOSE_BTN_NAME.getString(), Settings.GUI_CLOSE_BTN_LORE.getStringList(), null), e -> {
|
setButton(5, 4, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_CLOSE_BTN_ITEM.getString(), Settings.GUI_CLOSE_BTN_NAME.getString(), Settings.GUI_CLOSE_BTN_LORE.getStringList(), null), e -> {
|
||||||
|
@ -34,12 +34,13 @@ public class GUITransactionList extends AbstractPlaceholderGui {
|
|||||||
public GUITransactionList(Player player, boolean showAll) {
|
public GUITransactionList(Player player, boolean showAll) {
|
||||||
super(player);
|
super(player);
|
||||||
this.player = player;
|
this.player = player;
|
||||||
this.auctionPlayer = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(this.player.getUniqueId());
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
this.auctionPlayer = instance.getAuctionPlayerManager().getPlayer(this.player.getUniqueId());
|
||||||
this.showAll = showAll;
|
this.showAll = showAll;
|
||||||
if (showAll)
|
if (showAll)
|
||||||
this.transactions = new ArrayList<>(AuctionHouse.getInstance().getTransactionManager().getTransactions().values());
|
this.transactions = new ArrayList<>(instance.getTransactionManager().getTransactions().values());
|
||||||
else
|
else
|
||||||
this.transactions = AuctionHouse.getInstance().getTransactionManager().getTransactions().values().stream().filter(transaction -> transaction.getSeller().equals(player.getUniqueId()) || transaction.getBuyer().equals(player.getUniqueId())).collect(Collectors.toList());
|
this.transactions = instance.getTransactionManager().getTransactions().values().stream().filter(transaction -> transaction.getSeller().equals(player.getUniqueId()) || transaction.getBuyer().equals(player.getUniqueId())).collect(Collectors.toList());
|
||||||
|
|
||||||
setTitle(TextUtils.formatText(showAll ? Settings.GUI_TRANSACTIONS_TITLE_ALL.getString() : Settings.GUI_TRANSACTIONS_TITLE.getString()));
|
setTitle(TextUtils.formatText(showAll ? Settings.GUI_TRANSACTIONS_TITLE_ALL.getString() : Settings.GUI_TRANSACTIONS_TITLE.getString()));
|
||||||
setRows(6);
|
setRows(6);
|
||||||
|
@ -39,10 +39,11 @@ public final class GUITransactionType extends AbstractPlaceholderGui {
|
|||||||
}
|
}
|
||||||
|
|
||||||
private void draw() {
|
private void draw() {
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
// (player.hasPermission("auctionhouse.admin") || player.isOp())
|
// (player.hasPermission("auctionhouse.admin") || player.isOp())
|
||||||
setButton(11, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_TRANSACTIONS_TYPE_ITEMS_ALL_TRANSACTIONS_ITEM.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_ALL_TRANSACTIONS_NAME.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_ALL_TRANSACTIONS_LORE.getStringList(), null), e -> {
|
setButton(11, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_TRANSACTIONS_TYPE_ITEMS_ALL_TRANSACTIONS_ITEM.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_ALL_TRANSACTIONS_NAME.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_ALL_TRANSACTIONS_LORE.getStringList(), null), e -> {
|
||||||
if (Settings.RESTRICT_ALL_TRANSACTIONS_TO_PERM.getBoolean() && !e.player.hasPermission("auctionhouse.transactions.viewall")) {
|
if (Settings.RESTRICT_ALL_TRANSACTIONS_TO_PERM.getBoolean() && !e.player.hasPermission("auctionhouse.transactions.viewall")) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("commands.no_permission").sendPrefixedMessage(e.player);
|
instance.getLocale().getMessage("commands.no_permission").sendPrefixedMessage(e.player);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -56,7 +57,7 @@ public final class GUITransactionType extends AbstractPlaceholderGui {
|
|||||||
if (player.isOp() || player.hasPermission("auctionhouse.admin")) {
|
if (player.isOp() || player.hasPermission("auctionhouse.admin")) {
|
||||||
setButton(3, 8, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_TRANSACTIONS_TYPE_ITEMS_DELETE_ITEM.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_DELETE_NAME.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_DELETE_LORE.getStringList(), null), e -> {
|
setButton(3, 8, ConfigurationItemHelper.createConfigurationItem(Settings.GUI_TRANSACTIONS_TYPE_ITEMS_DELETE_ITEM.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_DELETE_NAME.getString(), Settings.GUI_TRANSACTIONS_TYPE_ITEMS_DELETE_LORE.getStringList(), null), e -> {
|
||||||
e.gui.close();
|
e.gui.close();
|
||||||
PlayerChatInput.PlayerChatInputBuilder<Long> builder = new PlayerChatInput.PlayerChatInputBuilder<>(AuctionHouse.getInstance(), e.player);
|
PlayerChatInput.PlayerChatInputBuilder<Long> builder = new PlayerChatInput.PlayerChatInputBuilder<>(instance, e.player);
|
||||||
builder.isValidInput((p, str) -> {
|
builder.isValidInput((p, str) -> {
|
||||||
String[] parts = ChatColor.stripColor(str).split(" ");
|
String[] parts = ChatColor.stripColor(str).split(" ");
|
||||||
if (parts.length == 2) {
|
if (parts.length == 2) {
|
||||||
@ -64,8 +65,8 @@ public final class GUITransactionType extends AbstractPlaceholderGui {
|
|||||||
}
|
}
|
||||||
return false;
|
return false;
|
||||||
});
|
});
|
||||||
builder.sendValueMessage(TextUtils.formatText(AuctionHouse.getInstance().getLocale().getMessage("prompts.enter deletion range").getMessage()));
|
builder.sendValueMessage(TextUtils.formatText(instance.getLocale().getMessage("prompts.enter deletion range").getMessage()));
|
||||||
builder.invalidInputMessage(TextUtils.formatText(AuctionHouse.getInstance().getLocale().getMessage("prompts.enter valid deletion range").getMessage()));
|
builder.invalidInputMessage(TextUtils.formatText(instance.getLocale().getMessage("prompts.enter valid deletion range").getMessage()));
|
||||||
builder.toCancel("cancel");
|
builder.toCancel("cancel");
|
||||||
builder.onCancel(p -> e.manager.showGUI(e.player, new GUITransactionType(e.player)));
|
builder.onCancel(p -> e.manager.showGUI(e.player, new GUITransactionType(e.player)));
|
||||||
builder.setValue((p, value) -> AuctionAPI.toTicks(ChatColor.stripColor(value)));
|
builder.setValue((p, value) -> AuctionAPI.toTicks(ChatColor.stripColor(value)));
|
||||||
@ -73,10 +74,10 @@ public final class GUITransactionType extends AbstractPlaceholderGui {
|
|||||||
int seconds = value.intValue();
|
int seconds = value.intValue();
|
||||||
|
|
||||||
AuctionHouse.newChain().async(() -> {
|
AuctionHouse.newChain().async(() -> {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.transaction delete begin").sendPrefixedMessage(e.player);
|
instance.getLocale().getMessage("general.transaction delete begin").sendPrefixedMessage(e.player);
|
||||||
List<UUID> toRemove = new ArrayList<>();
|
List<UUID> toRemove = new ArrayList<>();
|
||||||
|
|
||||||
Set<Map.Entry<UUID, Transaction>> entrySet = AuctionHouse.getInstance().getTransactionManager().getTransactions().entrySet();
|
Set<Map.Entry<UUID, Transaction>> entrySet = instance.getTransactionManager().getTransactions().entrySet();
|
||||||
Iterator<Map.Entry<UUID, Transaction>> entryIterator = entrySet.iterator();
|
Iterator<Map.Entry<UUID, Transaction>> entryIterator = entrySet.iterator();
|
||||||
|
|
||||||
while (entryIterator.hasNext()) {
|
while (entryIterator.hasNext()) {
|
||||||
@ -89,8 +90,8 @@ public final class GUITransactionType extends AbstractPlaceholderGui {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getDataManager().deleteTransactions(toRemove);
|
instance.getDataManager().deleteTransactions(toRemove);
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("general.deleted transactions").processPlaceholder("deleted_transactions", toRemove.size()).sendPrefixedMessage(e.player);
|
instance.getLocale().getMessage("general.deleted transactions").processPlaceholder("deleted_transactions", toRemove.size()).sendPrefixedMessage(e.player);
|
||||||
}).execute();
|
}).execute();
|
||||||
});
|
});
|
||||||
|
|
||||||
|
@ -21,7 +21,7 @@ import java.util.stream.Collectors;
|
|||||||
public class ConfigurationItemHelper {
|
public class ConfigurationItemHelper {
|
||||||
|
|
||||||
public static ItemStack createConfigurationItem(ItemStack stack, String title, List<String> lore, HashMap<String, Object> replacements, String... nbtData) {
|
public static ItemStack createConfigurationItem(ItemStack stack, String title, List<String> lore, HashMap<String, Object> replacements, String... nbtData) {
|
||||||
ItemMeta meta = stack.getItemMeta();
|
final ItemMeta meta = stack.getItemMeta();
|
||||||
assert meta != null;
|
assert meta != null;
|
||||||
meta.setDisplayName(TextUtils.formatText(title));
|
meta.setDisplayName(TextUtils.formatText(title));
|
||||||
|
|
||||||
|
@ -23,16 +23,17 @@ public class MaterialCategorizer {
|
|||||||
if (material.isBlock()) return AuctionItemCategory.BLOCKS;
|
if (material.isBlock()) return AuctionItemCategory.BLOCKS;
|
||||||
if (material == XMaterial.ENCHANTED_BOOK.parseMaterial()) return AuctionItemCategory.ENCHANTS;
|
if (material == XMaterial.ENCHANTED_BOOK.parseMaterial()) return AuctionItemCategory.ENCHANTS;
|
||||||
|
|
||||||
|
final String materialName = material.name();
|
||||||
// Armor filter
|
// Armor filter
|
||||||
if (material.name().endsWith("_HELMET") || material.name().endsWith("_CHESTPLATE") || material.name().endsWith("_LEGGINGS") || material.name().endsWith("_BOOTS"))
|
if (materialName.endsWith("_HELMET") || materialName.endsWith("_CHESTPLATE") || materialName.endsWith("_LEGGINGS") || materialName.endsWith("_BOOTS"))
|
||||||
return AuctionItemCategory.ARMOR;
|
return AuctionItemCategory.ARMOR;
|
||||||
|
|
||||||
// Weapon Filter
|
// Weapon Filter
|
||||||
if (material.name().endsWith("_SWORD") || material.name().equals("BOW") || material.name().equals("TRIDENT") || material.name().equals("CROSSBOW"))
|
if (materialName.endsWith("_SWORD") || materialName.equals("BOW") || materialName.equals("TRIDENT") || materialName.equals("CROSSBOW"))
|
||||||
return AuctionItemCategory.WEAPONS;
|
return AuctionItemCategory.WEAPONS;
|
||||||
|
|
||||||
// Tool Filter
|
// Tool Filter
|
||||||
if (material.name().endsWith("_AXE") || material.name().endsWith("_PICKAXE") || material.name().endsWith("_HOE") || material.name().endsWith("SHOVEL"))
|
if (materialName.endsWith("_AXE") || materialName.endsWith("_PICKAXE") || materialName.endsWith("_HOE") || materialName.endsWith("SHOVEL"))
|
||||||
return AuctionItemCategory.TOOLS;
|
return AuctionItemCategory.TOOLS;
|
||||||
return AuctionItemCategory.MISC;
|
return AuctionItemCategory.MISC;
|
||||||
}
|
}
|
||||||
|
@ -7,10 +7,12 @@ import ca.tweetzy.auctionhouse.api.events.AuctionBidEvent;
|
|||||||
import ca.tweetzy.auctionhouse.api.events.AuctionEndEvent;
|
import ca.tweetzy.auctionhouse.api.events.AuctionEndEvent;
|
||||||
import ca.tweetzy.auctionhouse.api.events.AuctionStartEvent;
|
import ca.tweetzy.auctionhouse.api.events.AuctionStartEvent;
|
||||||
import ca.tweetzy.auctionhouse.auction.AuctionStatistic;
|
import ca.tweetzy.auctionhouse.auction.AuctionStatistic;
|
||||||
|
import ca.tweetzy.auctionhouse.auction.AuctionedItem;
|
||||||
import ca.tweetzy.auctionhouse.auction.enums.AuctionSaleType;
|
import ca.tweetzy.auctionhouse.auction.enums.AuctionSaleType;
|
||||||
import ca.tweetzy.auctionhouse.auction.enums.AuctionStatisticType;
|
import ca.tweetzy.auctionhouse.auction.enums.AuctionStatisticType;
|
||||||
import ca.tweetzy.auctionhouse.settings.Settings;
|
import ca.tweetzy.auctionhouse.settings.Settings;
|
||||||
import ca.tweetzy.auctionhouse.transaction.Transaction;
|
import ca.tweetzy.auctionhouse.transaction.Transaction;
|
||||||
|
import org.bukkit.entity.Player;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
|
|
||||||
@ -27,19 +29,22 @@ public class AuctionListeners implements Listener {
|
|||||||
@EventHandler
|
@EventHandler
|
||||||
public void onAuctionStart(AuctionStartEvent e) {
|
public void onAuctionStart(AuctionStartEvent e) {
|
||||||
// new stat system
|
// new stat system
|
||||||
new AuctionStatistic(e.getSeller().getUniqueId(), e.getAuctionItem().isBidItem() ? AuctionStatisticType.CREATED_AUCTION : AuctionStatisticType.CREATED_BIN, 1).store(null);
|
final Player seller = e.getSeller();
|
||||||
|
final AuctionedItem auctionedItem = e.getAuctionedItem();
|
||||||
|
new AuctionStatistic(seller.getUniqueId(), auctionedItem.isBidItem() ? AuctionStatisticType.CREATED_AUCTION : AuctionStatisticType.CREATED_BIN, 1).store(null);
|
||||||
|
|
||||||
if (Settings.DISCORD_ENABLED.getBoolean() && Settings.DISCORD_ALERT_ON_AUCTION_START.getBoolean()) {
|
if (Settings.DISCORD_ENABLED.getBoolean() && Settings.DISCORD_ALERT_ON_AUCTION_START.getBoolean()) {
|
||||||
AuctionHouse.newChain().async(() -> {
|
AuctionHouse.newChain().async(() -> {
|
||||||
|
final AuctionAPI instance = AuctionAPI.getInstance();
|
||||||
Settings.DISCORD_WEBHOOKS.getStringList().forEach(hook -> {
|
Settings.DISCORD_WEBHOOKS.getStringList().forEach(hook -> {
|
||||||
AuctionAPI.getInstance().sendDiscordMessage(
|
instance.sendDiscordMessage(
|
||||||
hook,
|
hook,
|
||||||
e.getSeller(),
|
seller,
|
||||||
e.getSeller(),
|
seller,
|
||||||
e.getAuctionItem(),
|
auctionedItem,
|
||||||
AuctionSaleType.USED_BIDDING_SYSTEM,
|
AuctionSaleType.USED_BIDDING_SYSTEM,
|
||||||
true,
|
true,
|
||||||
e.getAuctionItem().isBidItem()
|
auctionedItem.isBidItem()
|
||||||
);
|
);
|
||||||
});
|
});
|
||||||
}).execute();
|
}).execute();
|
||||||
@ -49,33 +54,36 @@ public class AuctionListeners implements Listener {
|
|||||||
@EventHandler
|
@EventHandler
|
||||||
public void onAuctionEnd(AuctionEndEvent e) {
|
public void onAuctionEnd(AuctionEndEvent e) {
|
||||||
// new stat system
|
// new stat system
|
||||||
new AuctionStatistic(e.getOriginalOwner().getUniqueId(), e.getAuctionItem().isBidItem() ? AuctionStatisticType.SOLD_AUCTION : AuctionStatisticType.SOLD_BIN, 1).store(null);
|
final Player originalOwner = e.getOriginalOwner(), buyer = e.getBuyer();
|
||||||
new AuctionStatistic(e.getOriginalOwner().getUniqueId(), AuctionStatisticType.MONEY_EARNED, e.getSaleType() == AuctionSaleType.USED_BIDDING_SYSTEM ? e.getAuctionItem().getCurrentPrice() : e.getAuctionItem().getBasePrice()).store(null);
|
final UUID originalOwnerUUID = originalOwner.getUniqueId(), buyerUUID = buyer.getUniqueId();
|
||||||
new AuctionStatistic(e.getBuyer().getUniqueId(), AuctionStatisticType.MONEY_SPENT, e.getSaleType() == AuctionSaleType.USED_BIDDING_SYSTEM ? e.getAuctionItem().getCurrentPrice() : e.getAuctionItem().getBasePrice()).store(null);
|
final AuctionedItem auctionedItem = e.getAuctionedItem();
|
||||||
|
new AuctionStatistic(originalOwnerUUID, auctionedItem.isBidItem() ? AuctionStatisticType.SOLD_AUCTION : AuctionStatisticType.SOLD_BIN, 1).store(null);
|
||||||
|
new AuctionStatistic(originalOwnerUUID, AuctionStatisticType.MONEY_EARNED, e.getSaleType() == AuctionSaleType.USED_BIDDING_SYSTEM ? auctionedItem.getCurrentPrice() : auctionedItem.getBasePrice()).store(null);
|
||||||
|
new AuctionStatistic(buyerUUID, AuctionStatisticType.MONEY_SPENT, e.getSaleType() == AuctionSaleType.USED_BIDDING_SYSTEM ? auctionedItem.getCurrentPrice() : auctionedItem.getBasePrice()).store(null);
|
||||||
|
|
||||||
AuctionHouse.newChain().async(() -> {
|
AuctionHouse.newChain().async(() -> {
|
||||||
if (Settings.RECORD_TRANSACTIONS.getBoolean()) {
|
if (Settings.RECORD_TRANSACTIONS.getBoolean()) {
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getDataManager().insertTransactionAsync(new Transaction(
|
instance.getDataManager().insertTransactionAsync(new Transaction(
|
||||||
UUID.randomUUID(),
|
UUID.randomUUID(),
|
||||||
e.getOriginalOwner().getUniqueId(),
|
originalOwnerUUID,
|
||||||
e.getBuyer().getUniqueId(),
|
buyerUUID,
|
||||||
e.getAuctionItem().getOwnerName(),
|
auctionedItem.getOwnerName(),
|
||||||
e.getBuyer().getName(),
|
buyer.getName(),
|
||||||
System.currentTimeMillis(),
|
System.currentTimeMillis(),
|
||||||
e.getAuctionItem().getItem(),
|
auctionedItem.getItem(),
|
||||||
e.getSaleType(),
|
e.getSaleType(),
|
||||||
e.getAuctionItem().getCurrentPrice()
|
auctionedItem.getCurrentPrice()
|
||||||
), (error, transaction) -> {
|
), (error, transaction) -> {
|
||||||
if (error == null) {
|
if (error == null) {
|
||||||
AuctionHouse.getInstance().getTransactionManager().addTransaction(transaction);
|
instance.getTransactionManager().addTransaction(transaction);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (Settings.DISCORD_ENABLED.getBoolean() && Settings.DISCORD_ALERT_ON_AUCTION_FINISH.getBoolean()) {
|
if (Settings.DISCORD_ENABLED.getBoolean() && Settings.DISCORD_ALERT_ON_AUCTION_FINISH.getBoolean()) {
|
||||||
Settings.DISCORD_WEBHOOKS.getStringList().forEach(hook -> AuctionAPI.getInstance().sendDiscordMessage(hook, e.getOriginalOwner(), e.getBuyer(), e.getAuctionItem(), e.getSaleType(), false, e.getSaleType() == AuctionSaleType.USED_BIDDING_SYSTEM));
|
final AuctionAPI instance = AuctionAPI.getInstance();
|
||||||
|
Settings.DISCORD_WEBHOOKS.getStringList().forEach(hook -> instance.sendDiscordMessage(hook, originalOwner, buyer, auctionedItem, e.getSaleType(), false, e.getSaleType() == AuctionSaleType.USED_BIDDING_SYSTEM));
|
||||||
}
|
}
|
||||||
}).execute();
|
}).execute();
|
||||||
}
|
}
|
||||||
@ -84,7 +92,9 @@ public class AuctionListeners implements Listener {
|
|||||||
public void onAuctionBid(AuctionBidEvent e) {
|
public void onAuctionBid(AuctionBidEvent e) {
|
||||||
if (!Settings.DISCORD_ENABLED.getBoolean() && Settings.DISCORD_ALERT_ON_AUCTION_BID.getBoolean()) return;
|
if (!Settings.DISCORD_ENABLED.getBoolean() && Settings.DISCORD_ALERT_ON_AUCTION_BID.getBoolean()) return;
|
||||||
AuctionHouse.newChain().async(() -> {
|
AuctionHouse.newChain().async(() -> {
|
||||||
Settings.DISCORD_WEBHOOKS.getStringList().forEach(hook -> AuctionAPI.getInstance().sendDiscordBidMessage(hook, e.getAuctionedItem(), e.getNewBidAmount()));
|
final AuctionAPI instance = AuctionAPI.getInstance();
|
||||||
|
final AuctionedItem auctionedItem = e.getAuctionedItem();
|
||||||
|
Settings.DISCORD_WEBHOOKS.getStringList().forEach(hook -> instance.sendDiscordBidMessage(hook, auctionedItem, e.getNewBidAmount()));
|
||||||
}).execute();
|
}).execute();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -30,6 +30,8 @@ import org.bukkit.event.player.AsyncPlayerChatEvent;
|
|||||||
import org.bukkit.event.player.PlayerInteractEvent;
|
import org.bukkit.event.player.PlayerInteractEvent;
|
||||||
import org.bukkit.event.player.PlayerJoinEvent;
|
import org.bukkit.event.player.PlayerJoinEvent;
|
||||||
import org.bukkit.event.player.PlayerQuitEvent;
|
import org.bukkit.event.player.PlayerQuitEvent;
|
||||||
|
import org.bukkit.inventory.CraftingInventory;
|
||||||
|
import org.bukkit.inventory.Inventory;
|
||||||
import org.bukkit.inventory.ItemStack;
|
import org.bukkit.inventory.ItemStack;
|
||||||
import org.bukkit.persistence.PersistentDataType;
|
import org.bukkit.persistence.PersistentDataType;
|
||||||
|
|
||||||
@ -47,7 +49,6 @@ public class PlayerListeners implements Listener {
|
|||||||
@EventHandler
|
@EventHandler
|
||||||
public void onPlayerDeath(PlayerDeathEvent event) {
|
public void onPlayerDeath(PlayerDeathEvent event) {
|
||||||
final Player player = event.getEntity();
|
final Player player = event.getEntity();
|
||||||
|
|
||||||
final AuctionPlayer auctionPlayer = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
final AuctionPlayer auctionPlayer = AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId());
|
||||||
if (auctionPlayer != null) {
|
if (auctionPlayer != null) {
|
||||||
// task id cancel
|
// task id cancel
|
||||||
@ -57,39 +58,38 @@ public class PlayerListeners implements Listener {
|
|||||||
player.getLocation().getWorld().dropItemNaturally(player.getLocation(), auctionPlayer.getItemBeingListed());
|
player.getLocation().getWorld().dropItemNaturally(player.getLocation(), auctionPlayer.getItemBeingListed());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler(priority = EventPriority.HIGH)
|
@EventHandler(priority = EventPriority.HIGH)
|
||||||
public void onPlayerJoin(PlayerJoinEvent e) {
|
public void onPlayerJoin(PlayerJoinEvent e) {
|
||||||
Player player = e.getPlayer();
|
final Player player = e.getPlayer();
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().addPlayer(player);
|
instance.getAuctionPlayerManager().addPlayer(player);
|
||||||
|
|
||||||
Bukkit.getServer().getScheduler().runTaskLaterAsynchronously(AuctionHouse.getInstance(), () -> {
|
Bukkit.getServer().getScheduler().runTaskLaterAsynchronously(AuctionHouse.getInstance(), () -> {
|
||||||
|
|
||||||
if (Settings.UPDATE_CHECKER.getBoolean() && AuctionHouse.getInstance().getStatus() == UpdateChecker.UpdateStatus.UNRELEASED_VERSION && player.isOp()) {
|
if (Settings.UPDATE_CHECKER.getBoolean() && instance.getStatus() == UpdateChecker.UpdateStatus.UNRELEASED_VERSION && player.isOp()) {
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText(String.format("&dYou're running an unreleased version of Auction House &f(&c%s&f)", AuctionHouse.getInstance().getDescription().getVersion()))).sendPrefixedMessage(player);
|
instance.getLocale().newMessage(TextUtils.formatText(String.format("&dYou're running an unreleased version of Auction House &f(&c%s&f)", instance.getDescription().getVersion()))).sendPrefixedMessage(player);
|
||||||
}
|
}
|
||||||
}, 20);
|
}, 20);
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onPlayerQuit(PlayerQuitEvent e) {
|
public void onPlayerQuit(PlayerQuitEvent e) {
|
||||||
Player player = e.getPlayer();
|
final Player player = e.getPlayer();
|
||||||
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getAuctionPlayerManager().getSellHolding().remove(player.getUniqueId());
|
instance.getAuctionPlayerManager().getSellHolding().remove(player.getUniqueId());
|
||||||
AuctionHouse.getInstance().getLogger().info("Removing sell holding instance for user: " + player.getName());
|
instance.getLogger().info("Removing sell holding instance for user: " + player.getName());
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onCraftWithBundle(PrepareItemCraftEvent event) {
|
public void onCraftWithBundle(PrepareItemCraftEvent event) {
|
||||||
final ItemStack[] craftingItems = event.getInventory().getMatrix();
|
final CraftingInventory inventory = event.getInventory();
|
||||||
|
final ItemStack[] craftingItems = inventory.getMatrix();
|
||||||
for (ItemStack item : craftingItems) {
|
for (ItemStack item : craftingItems) {
|
||||||
if (item == null || item.getType() == XMaterial.AIR.parseMaterial()) continue;
|
if (item == null || item.getType() == XMaterial.AIR.parseMaterial()) continue;
|
||||||
if (NBTEditor.contains(item, "AuctionBundleItem")) {
|
if (NBTEditor.contains(item, "AuctionBundleItem")) {
|
||||||
event.getInventory().setResult(XMaterial.AIR.parseItem());
|
inventory.setResult(XMaterial.AIR.parseItem());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -104,23 +104,24 @@ public class PlayerListeners implements Listener {
|
|||||||
if (block == null || block.getType() != XMaterial.CHEST.parseMaterial()) return;
|
if (block == null || block.getType() != XMaterial.CHEST.parseMaterial()) return;
|
||||||
final Chest chest = (Chest) block.getState();
|
final Chest chest = (Chest) block.getState();
|
||||||
|
|
||||||
final NamespacedKey key = new NamespacedKey(AuctionHouse.getInstance(), "AuctionHouseMarkedChest");
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
final NamespacedKey key = new NamespacedKey(instance, "AuctionHouseMarkedChest");
|
||||||
if (chest.getPersistentDataContainer().has(key, PersistentDataType.BYTE)) {
|
if (chest.getPersistentDataContainer().has(key, PersistentDataType.BYTE)) {
|
||||||
e.setUseInteractedBlock(Event.Result.DENY);
|
e.setUseInteractedBlock(Event.Result.DENY);
|
||||||
e.setCancelled(true);
|
e.setCancelled(true);
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionBanManager().checkAndHandleBan(player)) {
|
if (instance.getAuctionBanManager().checkAndHandleBan(player)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
AuctionHouse.getInstance().getGuiManager().showGUI(player, new GUIAuctionHouse(AuctionHouse.getInstance().getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
instance.getGuiManager().showGUI(player, new GUIAuctionHouse(instance.getAuctionPlayerManager().getPlayer(player.getUniqueId())));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@EventHandler
|
@EventHandler
|
||||||
public void onBundleClick(PlayerInteractEvent e) {
|
public void onBundleClick(PlayerInteractEvent e) {
|
||||||
Player player = e.getPlayer();
|
final Player player = e.getPlayer();
|
||||||
ItemStack heldItem = PlayerHelper.getHeldItem(player);
|
final ItemStack heldItem = PlayerHelper.getHeldItem(player);
|
||||||
|
|
||||||
if (heldItem == null || (e.getAction() != Action.RIGHT_CLICK_AIR && e.getAction() != Action.RIGHT_CLICK_BLOCK))
|
if (heldItem == null || (e.getAction() != Action.RIGHT_CLICK_AIR && e.getAction() != Action.RIGHT_CLICK_BLOCK))
|
||||||
return;
|
return;
|
||||||
@ -128,7 +129,7 @@ public class PlayerListeners implements Listener {
|
|||||||
if (!NBTEditor.contains(heldItem, "AuctionBundleItem")) return;
|
if (!NBTEditor.contains(heldItem, "AuctionBundleItem")) return;
|
||||||
e.setCancelled(true);
|
e.setCancelled(true);
|
||||||
|
|
||||||
List<ItemStack> items = new ArrayList<>();
|
final List<ItemStack> items = new ArrayList<>();
|
||||||
|
|
||||||
for (int i = 0; i < NBTEditor.getInt(heldItem, "AuctionBundleItem"); i++) {
|
for (int i = 0; i < NBTEditor.getInt(heldItem, "AuctionBundleItem"); i++) {
|
||||||
items.add(AuctionAPI.getInstance().deserializeItem(NBTEditor.getByteArray(heldItem, "AuctionBundleItem-" + i)));
|
items.add(AuctionAPI.getInstance().deserializeItem(NBTEditor.getByteArray(heldItem, "AuctionBundleItem-" + i)));
|
||||||
|
@ -111,12 +111,13 @@ public class AuctionPlayerManager {
|
|||||||
public void loadPlayers() {
|
public void loadPlayers() {
|
||||||
this.auctionPlayers.clear();
|
this.auctionPlayers.clear();
|
||||||
|
|
||||||
AuctionHouse.getInstance().getDataManager().getAuctionPlayers((error, all) -> {
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
instance.getDataManager().getAuctionPlayers((error, all) -> {
|
||||||
if (error == null) {
|
if (error == null) {
|
||||||
all.forEach(this::addPlayer);
|
all.forEach(this::addPlayer);
|
||||||
|
|
||||||
// add all online players
|
// add all online players
|
||||||
Bukkit.getServer().getScheduler().runTaskLaterAsynchronously(AuctionHouse.getInstance(), () -> Bukkit.getOnlinePlayers().forEach(this::addPlayer), 20 * 3);
|
Bukkit.getServer().getScheduler().runTaskLaterAsynchronously(instance, () -> Bukkit.getOnlinePlayers().forEach(this::addPlayer), 20 * 3);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
@ -46,24 +46,26 @@ public final class AuctionStatisticManager {
|
|||||||
if (this.statistics.contains(statistic)) return;
|
if (this.statistics.contains(statistic)) return;
|
||||||
this.statistics.add(statistic);
|
this.statistics.add(statistic);
|
||||||
|
|
||||||
|
final UUID owner = statistic.getStatOwner();
|
||||||
|
final double value = value;
|
||||||
switch (statistic.getStatisticType()) {
|
switch (statistic.getStatisticType()) {
|
||||||
case CREATED_AUCTION:
|
case CREATED_AUCTION:
|
||||||
this.createdAuctionCount.put(statistic.getStatOwner(), this.createdAuctionCount.getOrDefault(statistic.getStatOwner(), 0D) + statistic.getValue());
|
this.createdAuctionCount.put(owner, this.createdAuctionCount.getOrDefault(owner, 0D) + value);
|
||||||
break;
|
break;
|
||||||
case CREATED_BIN:
|
case CREATED_BIN:
|
||||||
this.createdBinCount.put(statistic.getStatOwner(), this.createdBinCount.getOrDefault(statistic.getStatOwner(), 0D) + statistic.getValue());
|
this.createdBinCount.put(owner, this.createdBinCount.getOrDefault(owner, 0D) + value);
|
||||||
break;
|
break;
|
||||||
case SOLD_AUCTION:
|
case SOLD_AUCTION:
|
||||||
this.soldAuctionCount.put(statistic.getStatOwner(), this.soldAuctionCount.getOrDefault(statistic.getStatOwner(), 0D) + statistic.getValue());
|
this.soldAuctionCount.put(owner, this.soldAuctionCount.getOrDefault(owner, 0D) + value);
|
||||||
break;
|
break;
|
||||||
case SOLD_BIN:
|
case SOLD_BIN:
|
||||||
this.soldBinCount.put(statistic.getStatOwner(), this.soldBinCount.getOrDefault(statistic.getStatOwner(), 0D) + statistic.getValue());
|
this.soldBinCount.put(owner, this.soldBinCount.getOrDefault(owner, 0D) + value);
|
||||||
break;
|
break;
|
||||||
case MONEY_SPENT:
|
case MONEY_SPENT:
|
||||||
this.moneySpentCount.put(statistic.getStatOwner(), this.moneySpentCount.getOrDefault(statistic.getStatOwner(), 0D) + statistic.getValue());
|
this.moneySpentCount.put(owner, this.moneySpentCount.getOrDefault(owner, 0D) + value);
|
||||||
break;
|
break;
|
||||||
case MONEY_EARNED:
|
case MONEY_EARNED:
|
||||||
this.moneyEarnedCount.put(statistic.getStatOwner(), this.moneyEarnedCount.getOrDefault(statistic.getStatOwner(), 0D) + statistic.getValue());
|
this.moneyEarnedCount.put(owner, this.moneyEarnedCount.getOrDefault(owner, 0D) + value);
|
||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -3,6 +3,7 @@ package ca.tweetzy.auctionhouse.managers;
|
|||||||
import ca.tweetzy.auctionhouse.AuctionHouse;
|
import ca.tweetzy.auctionhouse.AuctionHouse;
|
||||||
import ca.tweetzy.core.compatibility.XSound;
|
import ca.tweetzy.core.compatibility.XSound;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
|
import org.bukkit.Sound;
|
||||||
import org.bukkit.entity.Player;
|
import org.bukkit.entity.Player;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
@ -32,12 +33,11 @@ public class SoundManager {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public void playSound(Player[] players, String sound, float volume, float pitch) {
|
public void playSound(Player[] players, String sound, float volume, float pitch) {
|
||||||
Arrays.stream(players).forEach(p -> p.playSound(p.getLocation(), XSound.matchXSound(sound).get().parseSound(), volume, pitch));
|
final Sound xsound = XSound.matchXSound(sound).get().parseSound();
|
||||||
|
Arrays.stream(players).forEach(p -> p.playSound(p.getLocation(), xsound, volume, pitch));
|
||||||
}
|
}
|
||||||
|
|
||||||
public void playSound(Player player, String sound, float volume, float pitch, int delay) {
|
public void playSound(Player player, String sound, float volume, float pitch, int delay) {
|
||||||
Bukkit.getServer().getScheduler().runTaskLater(AuctionHouse.getInstance(), () -> playSound(player, sound, volume, pitch), delay);
|
Bukkit.getServer().getScheduler().runTaskLater(AuctionHouse.getInstance(), () -> playSound(player, sound, volume, pitch), delay);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@ -26,10 +26,11 @@ public class AutoSaveTask extends BukkitRunnable {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
AuctionHouse.getInstance().getDataManager().updateItems(AuctionHouse.getInstance().getAuctionItemManager().getItems().values(), null);
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
AuctionHouse.getInstance().getFilterManager().saveFilterWhitelist(true);
|
instance.getDataManager().updateItems(instance.getAuctionItemManager().getItems().values(), null);
|
||||||
|
instance.getFilterManager().saveFilterWhitelist(true);
|
||||||
|
|
||||||
if (!Settings.DISABLE_AUTO_SAVE_MSG.getBoolean())
|
if (!Settings.DISABLE_AUTO_SAVE_MSG.getBoolean())
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&aAuto saved auction items & transactions")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
instance.getLocale().newMessage(TextUtils.formatText("&aAuto saved auction items & transactions")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -45,7 +45,8 @@ public class TickAuctionsTask extends BukkitRunnable {
|
|||||||
public void run() {
|
public void run() {
|
||||||
clock += Settings.TICK_UPDATE_TIME.getInt();
|
clock += Settings.TICK_UPDATE_TIME.getInt();
|
||||||
|
|
||||||
Set<Map.Entry<UUID, AuctionedItem>> entrySet = AuctionHouse.getInstance().getAuctionItemManager().getItems().entrySet();
|
final AuctionHouse instance = AuctionHouse.getInstance();
|
||||||
|
Set<Map.Entry<UUID, AuctionedItem>> entrySet = instance.getAuctionItemManager().getItems().entrySet();
|
||||||
Iterator<Map.Entry<UUID, AuctionedItem>> auctionItemIterator = entrySet.iterator();
|
Iterator<Map.Entry<UUID, AuctionedItem>> auctionItemIterator = entrySet.iterator();
|
||||||
|
|
||||||
|
|
||||||
@ -54,26 +55,26 @@ public class TickAuctionsTask extends BukkitRunnable {
|
|||||||
AuctionedItem auctionItem = entry.getValue();
|
AuctionedItem auctionItem = entry.getValue();
|
||||||
ItemStack itemStack = auctionItem.getItem();
|
ItemStack itemStack = auctionItem.getItem();
|
||||||
|
|
||||||
if (AuctionHouse.getInstance().getAuctionItemManager().getGarbageBin().containsKey(auctionItem.getId())) {
|
if (instance.getAuctionItemManager().getGarbageBin().containsKey(auctionItem.getId())) {
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getGarbageBin().remove(auctionItem.getId());
|
instance.getAuctionItemManager().getGarbageBin().remove(auctionItem.getId());
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().put(auctionItem.getId(), auctionItem);
|
instance.getAuctionItemManager().getDeletedItems().put(auctionItem.getId(), auctionItem);
|
||||||
auctionItemIterator.remove();
|
auctionItemIterator.remove();
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
|
|
||||||
// begin the scuffed deletion
|
// begin the scuffed deletion
|
||||||
if (!AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().keySet().isEmpty()) {
|
if (!instance.getAuctionItemManager().getDeletedItems().keySet().isEmpty()) {
|
||||||
if (Settings.GARBAGE_DELETION_TIMED_MODE.getBoolean() && clock % Settings.GARBAGE_DELETION_TIMED_DELAY.getInt() == 0) {
|
if (Settings.GARBAGE_DELETION_TIMED_MODE.getBoolean() && clock % Settings.GARBAGE_DELETION_TIMED_DELAY.getInt() == 0) {
|
||||||
AuctionHouse.getInstance().getDataManager().deleteItemsAsync(AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().values().stream().map(AuctionedItem::getId).collect(Collectors.toList()));
|
instance.getDataManager().deleteItemsAsync(instance.getAuctionItemManager().getDeletedItems().values().stream().map(AuctionedItem::getId).collect(Collectors.toList()));
|
||||||
if (!Settings.DISABLE_CLEANUP_MSG.getBoolean())
|
if (!Settings.DISABLE_CLEANUP_MSG.getBoolean())
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&aCleaned a total of &e" + AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().size() + "&a items.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
instance.getLocale().newMessage(TextUtils.formatText("&aCleaned a total of &e" + instance.getAuctionItemManager().getDeletedItems().size() + "&a items.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().clear();
|
instance.getAuctionItemManager().getDeletedItems().clear();
|
||||||
} else {
|
} else {
|
||||||
if (AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().size() >= Settings.GARBAGE_DELETION_MAX_ITEMS.getInt()) {
|
if (instance.getAuctionItemManager().getDeletedItems().size() >= Settings.GARBAGE_DELETION_MAX_ITEMS.getInt()) {
|
||||||
AuctionHouse.getInstance().getDataManager().deleteItemsAsync(AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().values().stream().map(AuctionedItem::getId).collect(Collectors.toList()));
|
instance.getDataManager().deleteItemsAsync(instance.getAuctionItemManager().getDeletedItems().values().stream().map(AuctionedItem::getId).collect(Collectors.toList()));
|
||||||
if (!Settings.DISABLE_CLEANUP_MSG.getBoolean())
|
if (!Settings.DISABLE_CLEANUP_MSG.getBoolean())
|
||||||
AuctionHouse.getInstance().getLocale().newMessage(TextUtils.formatText("&aCleaned a total of &e" + AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().size() + "&a items.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
instance.getLocale().newMessage(TextUtils.formatText("&aCleaned a total of &e" + instance.getAuctionItemManager().getDeletedItems().size() + "&a items.")).sendPrefixedMessage(Bukkit.getConsoleSender());
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().getDeletedItems().clear();
|
instance.getAuctionItemManager().getDeletedItems().clear();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@ -88,7 +89,7 @@ public class TickAuctionsTask extends BukkitRunnable {
|
|||||||
if (!auctionItem.isExpired()) {
|
if (!auctionItem.isExpired()) {
|
||||||
if (Settings.BROADCAST_AUCTION_ENDING.getBoolean()) {
|
if (Settings.BROADCAST_AUCTION_ENDING.getBoolean()) {
|
||||||
if (timeRemaining <= Settings.BROADCAST_AUCTION_ENDING_AT_TIME.getInt() && timeRemaining % 10 == 0 && timeRemaining != 0) {
|
if (timeRemaining <= Settings.BROADCAST_AUCTION_ENDING_AT_TIME.getInt() && timeRemaining % 10 == 0 && timeRemaining != 0) {
|
||||||
Bukkit.getOnlinePlayers().forEach(player -> AuctionHouse.getInstance().getLocale().getMessage("auction.broadcast.ending")
|
Bukkit.getOnlinePlayers().forEach(player -> instance.getLocale().getMessage("auction.broadcast.ending")
|
||||||
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(itemStack))
|
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(itemStack))
|
||||||
.processPlaceholder("seconds", timeRemaining)
|
.processPlaceholder("seconds", timeRemaining)
|
||||||
.sendPrefixedMessage(player));
|
.sendPrefixedMessage(player));
|
||||||
@ -117,7 +118,7 @@ public class TickAuctionsTask extends BukkitRunnable {
|
|||||||
|
|
||||||
|
|
||||||
AuctionEndEvent auctionEndEvent = new AuctionEndEvent(Bukkit.getOfflinePlayer(auctionItem.getOwner()), auctionWinner, auctionItem, AuctionSaleType.USED_BIDDING_SYSTEM, tax);
|
AuctionEndEvent auctionEndEvent = new AuctionEndEvent(Bukkit.getOfflinePlayer(auctionItem.getOwner()), auctionWinner, auctionItem, AuctionSaleType.USED_BIDDING_SYSTEM, tax);
|
||||||
AuctionHouse.getInstance().getServer().getPluginManager().callEvent(auctionEndEvent);
|
instance.getServer().getPluginManager().callEvent(auctionEndEvent);
|
||||||
if (auctionEndEvent.isCancelled()) continue;
|
if (auctionEndEvent.isCancelled()) continue;
|
||||||
|
|
||||||
|
|
||||||
@ -128,26 +129,26 @@ public class TickAuctionsTask extends BukkitRunnable {
|
|||||||
|
|
||||||
// alert seller and buyer
|
// alert seller and buyer
|
||||||
if (Bukkit.getOfflinePlayer(auctionItem.getOwner()).isOnline()) {
|
if (Bukkit.getOfflinePlayer(auctionItem.getOwner()).isOnline()) {
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("auction.itemsold")
|
instance.getLocale().getMessage("auction.itemsold")
|
||||||
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(itemStack))
|
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(itemStack))
|
||||||
.processPlaceholder("amount", itemStack.clone().getAmount())
|
.processPlaceholder("amount", itemStack.clone().getAmount())
|
||||||
.processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice : finalPrice - tax))
|
.processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice : finalPrice - tax))
|
||||||
.processPlaceholder("buyer_name", Bukkit.getOfflinePlayer(auctionItem.getHighestBidder()).getName())
|
.processPlaceholder("buyer_name", Bukkit.getOfflinePlayer(auctionItem.getHighestBidder()).getName())
|
||||||
.processPlaceholder("buyer_displayname", AuctionAPI.getInstance().getDisplayName(Bukkit.getOfflinePlayer(auctionItem.getHighestBidder())))
|
.processPlaceholder("buyer_displayname", AuctionAPI.getInstance().getDisplayName(Bukkit.getOfflinePlayer(auctionItem.getHighestBidder())))
|
||||||
.sendPrefixedMessage(Bukkit.getOfflinePlayer(auctionItem.getOwner()).getPlayer());
|
.sendPrefixedMessage(Bukkit.getOfflinePlayer(auctionItem.getOwner()).getPlayer());
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.moneyadd").processPlaceholder("player_balance", AuctionAPI.getInstance().formatNumber(EconomyManager.getBalance(Bukkit.getOfflinePlayer(auctionItem.getOwner())))).processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice : finalPrice - tax)).sendPrefixedMessage(Bukkit.getOfflinePlayer(auctionItem.getOwner()).getPlayer());
|
instance.getLocale().getMessage("pricing.moneyadd").processPlaceholder("player_balance", AuctionAPI.getInstance().formatNumber(EconomyManager.getBalance(Bukkit.getOfflinePlayer(auctionItem.getOwner())))).processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice : finalPrice - tax)).sendPrefixedMessage(Bukkit.getOfflinePlayer(auctionItem.getOwner()).getPlayer());
|
||||||
}
|
}
|
||||||
|
|
||||||
if (auctionWinner.isOnline()) {
|
if (auctionWinner.isOnline()) {
|
||||||
assert auctionWinner.getPlayer() != null;
|
assert auctionWinner.getPlayer() != null;
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("auction.bidwon")
|
instance.getLocale().getMessage("auction.bidwon")
|
||||||
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(itemStack))
|
.processPlaceholder("item", AuctionAPI.getInstance().getItemName(itemStack))
|
||||||
.processPlaceholder("amount", itemStack.getAmount())
|
.processPlaceholder("amount", itemStack.getAmount())
|
||||||
.processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice + tax : finalPrice))
|
.processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice + tax : finalPrice))
|
||||||
.sendPrefixedMessage(auctionWinner.getPlayer());
|
.sendPrefixedMessage(auctionWinner.getPlayer());
|
||||||
|
|
||||||
if (!Settings.BIDDING_TAKES_MONEY.getBoolean())
|
if (!Settings.BIDDING_TAKES_MONEY.getBoolean())
|
||||||
AuctionHouse.getInstance().getLocale().getMessage("pricing.moneyremove").processPlaceholder("player_balance", AuctionAPI.getInstance().formatNumber(EconomyManager.getBalance(auctionWinner.getPlayer()))).processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice + tax : finalPrice)).sendPrefixedMessage(auctionWinner.getPlayer());
|
instance.getLocale().getMessage("pricing.moneyremove").processPlaceholder("player_balance", AuctionAPI.getInstance().formatNumber(EconomyManager.getBalance(auctionWinner.getPlayer()))).processPlaceholder("price", AuctionAPI.getInstance().formatNumber(Settings.TAX_CHARGE_SALES_TAX_TO_BUYER.getBoolean() ? finalPrice + tax : finalPrice)).sendPrefixedMessage(auctionWinner.getPlayer());
|
||||||
|
|
||||||
// handle full inventory
|
// handle full inventory
|
||||||
if (auctionWinner.getPlayer().getInventory().firstEmpty() == -1) {
|
if (auctionWinner.getPlayer().getInventory().firstEmpty() == -1) {
|
||||||
@ -157,7 +158,7 @@ public class TickAuctionsTask extends BukkitRunnable {
|
|||||||
else
|
else
|
||||||
PlayerUtils.giveItem(auctionWinner.getPlayer(), itemStack);
|
PlayerUtils.giveItem(auctionWinner.getPlayer(), itemStack);
|
||||||
|
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().sendToGarbage(auctionItem);
|
instance.getAuctionItemManager().sendToGarbage(auctionItem);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
@ -166,7 +167,7 @@ public class TickAuctionsTask extends BukkitRunnable {
|
|||||||
else
|
else
|
||||||
PlayerUtils.giveItem(auctionWinner.getPlayer(), itemStack);
|
PlayerUtils.giveItem(auctionWinner.getPlayer(), itemStack);
|
||||||
|
|
||||||
AuctionHouse.getInstance().getAuctionItemManager().sendToGarbage(auctionItem);
|
instance.getAuctionItemManager().sendToGarbage(auctionItem);
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
Loading…
Reference in New Issue
Block a user