From 28961b4daef1b3095155f06c5cbcc97ec6d4673a Mon Sep 17 00:00:00 2001 From: Kiran Hart Date: Tue, 11 Sep 2018 19:44:10 -0400 Subject: [PATCH] Update 1.0.1 --- dependency-reduced-pom.xml | 2 +- pom.xml | 2 +- .../java/com/shadebyte/auctionhouse/Core.java | 16 +- .../auctionhouse/api/enums/Lang.java | 1 + .../auctionhouse/auction/AuctionItem.java | 16 +- .../auctionhouse/cmds/CommandManager.java | 2 +- .../cmds/subcmds/SellCommand.java | 207 +++++++++++------- .../inventory/inventories/AuctionGUI.java | 6 + src/main/resources/config.yml | 10 +- src/main/resources/en_US.lang | 1 + 10 files changed, 170 insertions(+), 93 deletions(-) diff --git a/dependency-reduced-pom.xml b/dependency-reduced-pom.xml index 71e4112..519e28c 100644 --- a/dependency-reduced-pom.xml +++ b/dependency-reduced-pom.xml @@ -4,7 +4,7 @@ com.shadebyte auctionhouse AuctionHouse - Production-Test + 1.0.1 A premium auction house plugin https://www.shadebyte.com diff --git a/pom.xml b/pom.xml index 34eae50..00e8bde 100644 --- a/pom.xml +++ b/pom.xml @@ -6,7 +6,7 @@ com.shadebyte auctionhouse - 1.0 + 1.0.1 jar AuctionHouse diff --git a/src/main/java/com/shadebyte/auctionhouse/Core.java b/src/main/java/com/shadebyte/auctionhouse/Core.java index c612b09..df77469 100644 --- a/src/main/java/com/shadebyte/auctionhouse/Core.java +++ b/src/main/java/com/shadebyte/auctionhouse/Core.java @@ -13,6 +13,7 @@ import com.shadebyte.auctionhouse.events.AGUIListener; import com.shadebyte.auctionhouse.events.PlayerListener; import com.shadebyte.auctionhouse.events.TransactionListener; import com.shadebyte.auctionhouse.inventory.AGUI; +import com.shadebyte.auctionhouse.inventory.inventories.AuctionGUI; import com.shadebyte.auctionhouse.util.Debugger; import com.shadebyte.auctionhouse.util.Locale; import com.shadebyte.auctionhouse.util.storage.ConfigWrapper; @@ -28,9 +29,6 @@ import org.bukkit.plugin.RegisteredServiceProvider; import org.bukkit.plugin.java.JavaPlugin; import java.io.File; -import java.sql.Connection; -import java.sql.PreparedStatement; -import java.sql.SQLException; import java.util.List; import java.util.UUID; import java.util.concurrent.CopyOnWriteArrayList; @@ -104,7 +102,7 @@ public final class Core extends JavaPlugin { hikari.addDataSourceProperty("databaseName", getConfig().getString("database.database")); hikari.addDataSourceProperty("user", getConfig().getString("database.username")); hikari.addDataSourceProperty("password", getConfig().getString("database.password")); - if(!hikari.isClosed()) { + if (!hikari.isClosed()) { dbConnected = true; Bukkit.getConsoleSender().sendMessage(ChatColor.translateAlternateColorCodes('&', "&aConnected to database")); } @@ -126,7 +124,7 @@ public final class Core extends JavaPlugin { @Override public void onDisable() { Bukkit.getOnlinePlayers().forEach(p -> { - if(p.getOpenInventory().getTopInventory().getHolder() instanceof AGUI) p.closeInventory(); + if (p.getOpenInventory().getTopInventory().getHolder() instanceof AGUI) p.closeInventory(); }); saveAuctions(); @@ -224,6 +222,14 @@ public final class Core extends JavaPlugin { } } } + if (getConfig().getBoolean("settings.auto-refresh-auction-page")) { + Bukkit.getOnlinePlayers().forEach(p -> { + if (p.getOpenInventory().getTopInventory().getTitle().equalsIgnoreCase(ChatColor.translateAlternateColorCodes('&', Core.getInstance().getConfig().getString("gui.auction.title")))) { + p.closeInventory(); + p.openInventory(new AuctionGUI(p).getInventory()); + } + }); + } } }, 0, 20 * 5); } catch (Exception e) { diff --git a/src/main/java/com/shadebyte/auctionhouse/api/enums/Lang.java b/src/main/java/com/shadebyte/auctionhouse/api/enums/Lang.java index f29860a..d2b7ef3 100644 --- a/src/main/java/com/shadebyte/auctionhouse/api/enums/Lang.java +++ b/src/main/java/com/shadebyte/auctionhouse/api/enums/Lang.java @@ -15,6 +15,7 @@ public enum Lang { NOT_ENOUGH_MONEY("notenoughmoney"), CANNOT_BUY_OWN("cantbuyown"), CANNOT_BID_OWN("cantbidonown"), + AIR("air"), AUCTION_LISTED("auction.listed"), AUCTION_BUY("auction.buy"), diff --git a/src/main/java/com/shadebyte/auctionhouse/auction/AuctionItem.java b/src/main/java/com/shadebyte/auctionhouse/auction/AuctionItem.java index f606b22..639217c 100644 --- a/src/main/java/com/shadebyte/auctionhouse/auction/AuctionItem.java +++ b/src/main/java/com/shadebyte/auctionhouse/auction/AuctionItem.java @@ -1,5 +1,6 @@ package com.shadebyte.auctionhouse.auction; +import com.shadebyte.auctionhouse.Core; import com.shadebyte.auctionhouse.api.AuctionAPI; import com.shadebyte.auctionhouse.util.NBTEditor; import org.apache.commons.lang.StringUtils; @@ -156,12 +157,15 @@ public class AuctionItem { lore.add(translateAlternateColorCodes('&', "&eSeller&f: &b" + Bukkit.getOfflinePlayer(UUID.fromString(owner)).getName())); lore.add(translateAlternateColorCodes('&', "")); lore.add(translateAlternateColorCodes('&', "&eBuy Now: &a$" + AuctionAPI.getInstance().friendlyNumber(buyNowPrice))); - lore.add(translateAlternateColorCodes('&', "&eCurrent Price: &a$" + AuctionAPI.getInstance().friendlyNumber(currentPrice))); - lore.add(translateAlternateColorCodes('&', "&eBid Increment: &a$" + AuctionAPI.getInstance().friendlyNumber(bidIncrement))); + if (Core.getInstance().getConfig().getBoolean("settings.use-bid-system")) { + lore.add(translateAlternateColorCodes('&', "&eCurrent Price: &a$" + AuctionAPI.getInstance().friendlyNumber(currentPrice))); + lore.add(translateAlternateColorCodes('&', "&eBid Increment: &a$" + AuctionAPI.getInstance().friendlyNumber(bidIncrement))); + } lore.add(translateAlternateColorCodes('&', "")); lore.add(translateAlternateColorCodes('&', "&eTime Left: &b" + AuctionAPI.getInstance().timeLeft(getTime()))); lore.add(translateAlternateColorCodes('&', "&7-------------------------")); - lore.add(translateAlternateColorCodes('&', "&eLeft-Click&f: &bBid")); + if (Core.getInstance().getConfig().getBoolean("settings.use-bid-system")) + lore.add(translateAlternateColorCodes('&', "&eLeft-Click&f: &bBid")); lore.add(translateAlternateColorCodes('&', "&eRight-Click&f: &bBuy Now")); lore.add(translateAlternateColorCodes('&', "&7-------------------------")); meta.setLore(lore); @@ -177,8 +181,10 @@ public class AuctionItem { List lore = (meta.hasLore() ? meta.getLore() : new ArrayList<>()); lore.add(translateAlternateColorCodes('&', "&7-------------------------")); lore.add(translateAlternateColorCodes('&', "&eBuy Now: &a$" + AuctionAPI.getInstance().friendlyNumber(buyNowPrice))); - lore.add(translateAlternateColorCodes('&', "&eCurrent Price: &a$" + AuctionAPI.getInstance().friendlyNumber(currentPrice))); - lore.add(translateAlternateColorCodes('&', "&eBid Increment: &a$" + AuctionAPI.getInstance().friendlyNumber(bidIncrement))); + if (Core.getInstance().getConfig().getBoolean("settings.use-bid-system")) { + lore.add(translateAlternateColorCodes('&', "&eCurrent Price: &a$" + AuctionAPI.getInstance().friendlyNumber(currentPrice))); + lore.add(translateAlternateColorCodes('&', "&eBid Increment: &a$" + AuctionAPI.getInstance().friendlyNumber(bidIncrement))); + } lore.add(translateAlternateColorCodes('&', "")); lore.add(translateAlternateColorCodes('&', "&eTime Left: &b" + AuctionAPI.getInstance().timeLeft(getTime()))); lore.add(translateAlternateColorCodes('&', "&7-------------------------")); diff --git a/src/main/java/com/shadebyte/auctionhouse/cmds/CommandManager.java b/src/main/java/com/shadebyte/auctionhouse/cmds/CommandManager.java index 81b9c00..aeef3f0 100644 --- a/src/main/java/com/shadebyte/auctionhouse/cmds/CommandManager.java +++ b/src/main/java/com/shadebyte/auctionhouse/cmds/CommandManager.java @@ -5,7 +5,6 @@ import com.shadebyte.auctionhouse.api.enums.Lang; import com.shadebyte.auctionhouse.api.enums.Permissions; import com.shadebyte.auctionhouse.cmds.subcmds.*; import com.shadebyte.auctionhouse.inventory.inventories.AuctionGUI; -import com.shadebyte.auctionhouse.inventory.inventories.ListingsGUI; import com.shadebyte.auctionhouse.util.Debugger; import org.bukkit.command.Command; import org.bukkit.command.CommandExecutor; @@ -46,6 +45,7 @@ public class CommandManager implements CommandExecutor { this.commands.add(new ListedCommand()); this.commands.add(new ExpiredCommand()); this.commands.add(new TransactionsCommand()); + this.commands.add(new HelpCommand()); } @Override diff --git a/src/main/java/com/shadebyte/auctionhouse/cmds/subcmds/SellCommand.java b/src/main/java/com/shadebyte/auctionhouse/cmds/subcmds/SellCommand.java index c990582..8f17b72 100644 --- a/src/main/java/com/shadebyte/auctionhouse/cmds/subcmds/SellCommand.java +++ b/src/main/java/com/shadebyte/auctionhouse/cmds/subcmds/SellCommand.java @@ -12,6 +12,7 @@ import com.shadebyte.auctionhouse.api.event.AuctionStartEvent; import com.shadebyte.auctionhouse.auction.AuctionItem; import com.shadebyte.auctionhouse.auction.AuctionPlayer; import com.shadebyte.auctionhouse.cmds.SubCommand; +import org.bukkit.Material; import org.bukkit.command.CommandSender; import org.bukkit.entity.Player; @@ -47,95 +48,149 @@ public class SellCommand extends SubCommand { if (args.length == 2) { if (AuctionAPI.getInstance().isNumeric(args[1])) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.CMD_SELL.getNode())); + if (Core.getInstance().getConfig().getBoolean("settings.use-bid-system")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.CMD_SELL.getNode())); + } else { + + int buyNow = Integer.parseInt(args[1]); + + //Max Prices + if (buyNow > Core.getInstance().getConfig().getInt("settings.max-auction-price")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MAX_AUCTION_PRICE.getNode())); + return; + } + + if (buyNow < Core.getInstance().getConfig().getInt("settings.min-auction-price")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MIN_AUCTION_PRICE.getNode())); + return; + } + + AuctionItem auctionItem = new AuctionItem(p.getUniqueId().toString(), AuctionAPI.getItemInHand(p), Core.getInstance().getConfig().getInt("settings.default-auction-time"), buyNow, 0, buyNow); + AuctionStartEvent auctionStartEvent = new AuctionStartEvent(auctionItem); + Core.getInstance().getServer().getPluginManager().callEvent(auctionStartEvent); + + if (!auctionStartEvent.isCancelled()) { + Core.getInstance().auctionItems.add(0, auctionItem); + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.AUCTION_LISTED.getNode()).replace("{itemname}", auctionItem.getDisplayName()).replace("{price}", AuctionAPI.getInstance().friendlyNumber(buyNow))); + + //Discord Hook + if (Core.getInstance().getConfig().getBoolean("discord.enabled")) { + DiscordHook discordHook = new DiscordHook(Core.getInstance().getConfig().getString("discord.webhook")); + DiscordEmbed de = DiscordEmbed.builder() + .title(Core.getInstance().getConfig().getString("discord.title")) + .description(Core.getInstance().getConfig().getString("discord.description")) + .color(1) + .fields(Arrays.asList( + FieldEmbed.builder().name("Seller").value(p.getName()).inline(true).build(), + FieldEmbed.builder().name("Buy Now").value(AuctionAPI.getInstance().friendlyNumber(buyNow)).build(), + FieldEmbed.builder().name("Item").value(auctionItem.getItem().getType().name() + ":" + auctionItem.getItem().getDurability()).build() + )) + .build(); + + DiscordMessage dm = DiscordMessage.builder().username(Core.getInstance().getConfig().getString("discord.username")).content("").avatarUrl(Core.getInstance().getConfig().getString("discord.profilepicture")).embeds(Arrays.asList(de)).build(); + discordHook.send(dm); + } + + AuctionAPI.setItemInHand(p, null); + } + } } else { p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.NOT_A_NUMBER.getNode())); } } if (args.length == 3) { - if (AuctionAPI.getInstance().isNumeric(args[1]) && AuctionAPI.getInstance().isNumeric(args[2])) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.CMD_SELL.getNode())); - } else { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.NOT_A_NUMBER.getNode())); + if (Core.getInstance().getConfig().getBoolean("settings.use-bid-system")) { + if (AuctionAPI.getInstance().isNumeric(args[1]) && AuctionAPI.getInstance().isNumeric(args[2])) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.CMD_SELL.getNode())); + } else { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.NOT_A_NUMBER.getNode())); + } } } if (args.length == 4) { - if (AuctionAPI.getInstance().isNumeric(args[1]) && AuctionAPI.getInstance().isNumeric(args[2]) && AuctionAPI.getInstance().isNumeric(args[3])) { - if (new AuctionPlayer(p).getLimit() - 1 < new AuctionPlayer(p).getTotalActiveAuctions()) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.AUCTION_MAX.getNode())); - return; - } - - int buyNow = Integer.parseInt(args[1]); - int startPrice = Integer.parseInt(args[2]); - int increment = Integer.parseInt(args[3]); - - //Max Prices - if (buyNow > Core.getInstance().getConfig().getInt("settings.max-auction-price")) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MAX_AUCTION_PRICE.getNode())); - return; - } - - if (startPrice > Core.getInstance().getConfig().getInt("settings.max-auction-start")) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MAX_START_PRICE.getNode())); - return; - } - - if (increment > Core.getInstance().getConfig().getInt("settings.max-auction-increment")) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MAX_INCREMENT_PRICE.getNode())); - return; - } - - //Min Prices - if (buyNow < Core.getInstance().getConfig().getInt("settings.min-auction-price")) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MIN_AUCTION_PRICE.getNode())); - return; - } - - if (startPrice < Core.getInstance().getConfig().getInt("settings.min-auction-start")) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MIN_START_PRICE.getNode())); - return; - } - - if (increment < Core.getInstance().getConfig().getInt("settings.min-auction-increment")) { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MIN_INCREMENT_PRICE.getNode())); - return; - } - - AuctionItem auctionItem = new AuctionItem(p.getUniqueId().toString(), AuctionAPI.getItemInHand(p), Core.getInstance().getConfig().getInt("settings.default-auction-time"), startPrice, increment, buyNow); - AuctionStartEvent auctionStartEvent = new AuctionStartEvent(auctionItem); - Core.getInstance().getServer().getPluginManager().callEvent(auctionStartEvent); - - if (!auctionStartEvent.isCancelled()) { - Core.getInstance().auctionItems.add(0, auctionItem); - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.AUCTION_LISTED.getNode()).replace("{itemname}", auctionItem.getDisplayName()).replace("{price}", AuctionAPI.getInstance().friendlyNumber(startPrice))); - - //Discord Hook - if (Core.getInstance().getConfig().getBoolean("discord.enabled")) { - DiscordHook discordHook = new DiscordHook(Core.getInstance().getConfig().getString("discord.webhook")); - DiscordEmbed de = DiscordEmbed.builder() - .title(Core.getInstance().getConfig().getString("discord.title")) - .description(Core.getInstance().getConfig().getString("discord.description")) - .color(1) - .fields(Arrays.asList( - FieldEmbed.builder().name("Seller").value(p.getName()).inline(true).build(), - FieldEmbed.builder().name("Start Price").value(AuctionAPI.getInstance().friendlyNumber(startPrice)).build(), - FieldEmbed.builder().name("Increment").value(AuctionAPI.getInstance().friendlyNumber(increment)).build(), - FieldEmbed.builder().name("Buy Now").value(AuctionAPI.getInstance().friendlyNumber(buyNow)).build(), - FieldEmbed.builder().name("Item").value(auctionItem.getItem().getType().name() + ":" + auctionItem.getItem().getDurability()).build() - )) - .build(); - - DiscordMessage dm = DiscordMessage.builder().username(Core.getInstance().getConfig().getString("discord.username")).content("").avatarUrl(Core.getInstance().getConfig().getString("discord.profilepicture")).embeds(Arrays.asList(de)).build(); - discordHook.send(dm); + if (Core.getInstance().getConfig().getBoolean("settings.use-bid-system")) { + if (AuctionAPI.getInstance().isNumeric(args[1]) && AuctionAPI.getInstance().isNumeric(args[2]) && AuctionAPI.getInstance().isNumeric(args[3])) { + if (new AuctionPlayer(p).getLimit() - 1 < new AuctionPlayer(p).getTotalActiveAuctions()) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.AUCTION_MAX.getNode())); + return; } - AuctionAPI.setItemInHand(p, null); + int buyNow = Integer.parseInt(args[1]); + int startPrice = Integer.parseInt(args[2]); + int increment = Integer.parseInt(args[3]); + + if (AuctionAPI.getItemInHand(p) == null || AuctionAPI.getItemInHand(p).getType() == Material.AIR) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.AIR.getNode())); + return; + } + + //Max Prices + if (buyNow > Core.getInstance().getConfig().getInt("settings.max-auction-price")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MAX_AUCTION_PRICE.getNode())); + return; + } + + if (startPrice > Core.getInstance().getConfig().getInt("settings.max-auction-start")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MAX_START_PRICE.getNode())); + return; + } + + if (increment > Core.getInstance().getConfig().getInt("settings.max-auction-increment")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MAX_INCREMENT_PRICE.getNode())); + return; + } + + //Min Prices + if (buyNow < Core.getInstance().getConfig().getInt("settings.min-auction-price")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MIN_AUCTION_PRICE.getNode())); + return; + } + + if (startPrice < Core.getInstance().getConfig().getInt("settings.min-auction-start")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MIN_START_PRICE.getNode())); + return; + } + + if (increment < Core.getInstance().getConfig().getInt("settings.min-auction-increment")) { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.MIN_INCREMENT_PRICE.getNode())); + return; + } + + AuctionItem auctionItem = new AuctionItem(p.getUniqueId().toString(), AuctionAPI.getItemInHand(p), Core.getInstance().getConfig().getInt("settings.default-auction-time"), startPrice, increment, buyNow); + AuctionStartEvent auctionStartEvent = new AuctionStartEvent(auctionItem); + Core.getInstance().getServer().getPluginManager().callEvent(auctionStartEvent); + + if (!auctionStartEvent.isCancelled()) { + Core.getInstance().auctionItems.add(0, auctionItem); + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.AUCTION_LISTED.getNode()).replace("{itemname}", auctionItem.getDisplayName()).replace("{price}", AuctionAPI.getInstance().friendlyNumber(startPrice))); + + //Discord Hook + if (Core.getInstance().getConfig().getBoolean("discord.enabled")) { + DiscordHook discordHook = new DiscordHook(Core.getInstance().getConfig().getString("discord.webhook")); + DiscordEmbed de = DiscordEmbed.builder() + .title(Core.getInstance().getConfig().getString("discord.title")) + .description(Core.getInstance().getConfig().getString("discord.description")) + .color(1) + .fields(Arrays.asList( + FieldEmbed.builder().name("Seller").value(p.getName()).inline(true).build(), + FieldEmbed.builder().name("Start Price").value(AuctionAPI.getInstance().friendlyNumber(startPrice)).build(), + FieldEmbed.builder().name("Increment").value(AuctionAPI.getInstance().friendlyNumber(increment)).build(), + FieldEmbed.builder().name("Buy Now").value(AuctionAPI.getInstance().friendlyNumber(buyNow)).build(), + FieldEmbed.builder().name("Item").value(auctionItem.getItem().getType().name() + ":" + auctionItem.getItem().getDurability()).build() + )) + .build(); + + DiscordMessage dm = DiscordMessage.builder().username(Core.getInstance().getConfig().getString("discord.username")).content("").avatarUrl(Core.getInstance().getConfig().getString("discord.profilepicture")).embeds(Arrays.asList(de)).build(); + discordHook.send(dm); + } + + AuctionAPI.setItemInHand(p, null); + } + } else { + p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.NOT_A_NUMBER.getNode())); } - } else { - p.sendMessage(Core.getInstance().getSettings().getPrefix() + Core.getInstance().getLocale().getMessage(Lang.NOT_A_NUMBER.getNode())); } } } diff --git a/src/main/java/com/shadebyte/auctionhouse/inventory/inventories/AuctionGUI.java b/src/main/java/com/shadebyte/auctionhouse/inventory/inventories/AuctionGUI.java index 48c3db3..ea4dc6a 100644 --- a/src/main/java/com/shadebyte/auctionhouse/inventory/inventories/AuctionGUI.java +++ b/src/main/java/com/shadebyte/auctionhouse/inventory/inventories/AuctionGUI.java @@ -67,6 +67,7 @@ public class AuctionGUI implements AGUI { } if (slot >= 0 & slot <= 44) { + if (clicked == null || clicked.getType() == Material.AIR) { return; } @@ -74,6 +75,11 @@ public class AuctionGUI implements AGUI { AuctionItem item = null; if (e.getClick() == ClickType.LEFT) { + + if (!Core.getInstance().getConfig().getBoolean("settings.use-bid-system")) { + return; + } + String key = (String) NBTEditor.getItemTag(clicked, "AuctionItemKey"); for (AuctionItem auctionItem : Core.getInstance().auctionItems) { if (auctionItem.getKey().equalsIgnoreCase(key)) item = auctionItem; diff --git a/src/main/resources/config.yml b/src/main/resources/config.yml index 8504f48..723d50b 100644 --- a/src/main/resources/config.yml +++ b/src/main/resources/config.yml @@ -5,7 +5,7 @@ lang: "en_US" settings: - default-auction-time: 15 # 15 Minutes by default + default-auction-time: 150 # 15 Minutes by default max-auction-price: 2000000000 max-auction-start: 2000000000 max-auction-increment: 2000000000 @@ -14,6 +14,8 @@ settings: min-auction-increment: 1 owner-can-purchase-own: false owner-can-bid-own: false + use-bid-system: true + auto-refresh-auction-page: true bid: increase-on-bid: true increase-amount: 10 #10 Seconds by default @@ -21,10 +23,10 @@ settings: #MySql stuff for databases if you want database: enabled: false - host: "" + host: "localhost" port: 3306 - database: "" - username: "" + database: "auctionhouse" + username: "root" password: "" discord: diff --git a/src/main/resources/en_US.lang b/src/main/resources/en_US.lang index e51fbc2..207a552 100644 --- a/src/main/resources/en_US.lang +++ b/src/main/resources/en_US.lang @@ -18,6 +18,7 @@ notanumber = "&CThat isn't a valid number" notenoughmoney = "&CYou do not have enough money!" cantbidonown = "&cYou cannot bid on your own item!" cantbuyown = "&cYou cannot buy your own item!" +air = "&CCome on, really tryna auction air?" price.max.start = "&cPlease start auction with a lower price." price.max.auction = "&cPlease start with a lower bid price."