diff --git a/Plugins/Mineplex.Core/src/mineplex/core/friend/data/FriendRepository.java b/Plugins/Mineplex.Core/src/mineplex/core/friend/data/FriendRepository.java index 13db250ab..9ce7a3ec9 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/friend/data/FriendRepository.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/friend/data/FriendRepository.java @@ -62,12 +62,12 @@ public class FriendRepository extends RepositoryBase return false; } - public boolean removeFriend(Player caller, String name) + public boolean removeFriend(String caller, String name) { - int rowsAffected = executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, name), new ColumnVarChar("name", 100, caller.getName())); + int rowsAffected = executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, name), new ColumnVarChar("name", 100, caller)); if (rowsAffected > 0) - return executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, caller.getName()), new ColumnVarChar("uuid", 100, name)) > 0; + return executeUpdate(DELETE_FRIEND_RECORD, new ColumnVarChar("name", 100, caller), new ColumnVarChar("uuid", 100, name)) > 0; return false; } diff --git a/Plugins/Mineplex.Core/src/mineplex/core/stats/StatsManager.java b/Plugins/Mineplex.Core/src/mineplex/core/stats/StatsManager.java index 23837fe8d..002a84355 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/stats/StatsManager.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/stats/StatsManager.java @@ -57,45 +57,7 @@ public class StatsManager extends MiniClientPlugin final String uuidString = player.getUniqueId().toString(); - // Verify stat is in our local cache, if not add it remotely. - if (!_stats.containsKey(statName)) - { - Bukkit.getScheduler().runTaskAsynchronously(GetPlugin(), new Runnable() - { - public void run() - { - synchronized (_statSync) - { - // If many players come in for a new stat, when the first add finishes the others are queued to add again - // This makes a second check for the stat name (already added before lock was released) - // Then it pops into queue and forgets adding the new stat to db. - if (_stats.containsKey(statName)) - { - addToQueue(statName, uuidString, value); - return; - } - - _repository.addStat(statName); - - _stats.clear(); - - for (Stat stat : _repository.retrieveStats()) - { - _stats.put(stat.Name, stat.Id); - } - - addToQueue(statName, uuidString, value); - } - } - }); - } - else - { - synchronized (_statSync) - { - addToQueue(statName, uuidString, value); - } - } + incrementStat(uuidString, statName, value); } private void addToQueue(String statName, String uuidString, int value) @@ -181,4 +143,47 @@ public class StatsManager extends MiniClientPlugin } }); } + + public void incrementStat(final String uuidString, final String statName, final int value) + { + // Verify stat is in our local cache, if not add it remotely. + if (!_stats.containsKey(statName)) + { + Bukkit.getScheduler().runTaskAsynchronously(GetPlugin(), new Runnable() + { + public void run() + { + synchronized (_statSync) + { + // If many players come in for a new stat, when the first add finishes the others are queued to add again + // This makes a second check for the stat name (already added before lock was released) + // Then it pops into queue and forgets adding the new stat to db. + if (_stats.containsKey(statName)) + { + addToQueue(statName, uuidString, value); + return; + } + + _repository.addStat(statName); + + _stats.clear(); + + for (Stat stat : _repository.retrieveStats()) + { + _stats.put(stat.Name, stat.Id); + } + + addToQueue(statName, uuidString, value); + } + } + }); + } + else + { + synchronized (_statSync) + { + addToQueue(statName, uuidString, value); + } + } + } } diff --git a/Plugins/Mineplex.Core/src/mineplex/core/treasure/TreasureManager.java b/Plugins/Mineplex.Core/src/mineplex/core/treasure/TreasureManager.java index 5692b8964..dc6e8fe24 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/treasure/TreasureManager.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/treasure/TreasureManager.java @@ -102,7 +102,7 @@ public class TreasureManager extends MiniPlugin { // Remove a treasure and a key _inventoryManager.addItemToInventory(player, "Treasure", "Treasure Key", -1); - _inventoryManager.addItemToInventory(player, "Treasure", "Treasure Chest", -1); + _inventoryManager.addItemToInventory(player, "Utility", "Treasure Chest", -1); } Bukkit.broadcastMessage(F.main("Treasure", F.name(player.getName()) + " is opening a " + C.cGreen + "Treasure Chest")); diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/StaffServer.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/StaffServer.java index 7e8e7cc55..d8670c249 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/StaffServer.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/StaffServer.java @@ -13,6 +13,7 @@ import mineplex.core.playerTracker.PlayerTracker; import mineplex.core.portal.Portal; import mineplex.core.preferences.PreferencesManager; import mineplex.core.recharge.Recharge; +import mineplex.core.stats.StatsManager; import mineplex.core.status.ServerStatusManager; import mineplex.core.updater.FileUpdater; import mineplex.core.updater.Updater; @@ -56,7 +57,7 @@ public class StaffServer extends JavaPlugin new MemoryFix(this); new FileUpdater(this, portal); - new CustomerSupport(this, clientManager, donationManager, new SalesPackageManager(this, clientManager, donationManager, new InventoryManager(this))); + new CustomerSupport(this, clientManager, donationManager, new SalesPackageManager(this, clientManager, donationManager, new InventoryManager(this), new StatsManager(this))); new Password(this); //Updates diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/SalesPackageManager.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/SalesPackageManager.java index d09722118..d191bea11 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/SalesPackageManager.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/SalesPackageManager.java @@ -1,6 +1,5 @@ package mineplex.staffServer.salespackage; -import org.bukkit.Bukkit; import org.bukkit.entity.Player; import org.bukkit.plugin.java.JavaPlugin; @@ -8,12 +7,13 @@ import mineplex.core.MiniPlugin; import mineplex.core.account.CoreClientManager; import mineplex.core.common.jsonchat.JsonMessage; import mineplex.core.common.util.NautHashMap; -import mineplex.core.common.util.UtilServer; import mineplex.core.donation.DonationManager; import mineplex.core.inventory.InventoryManager; +import mineplex.core.stats.StatsManager; import mineplex.staffServer.salespackage.command.DisplayPackageCommand; import mineplex.staffServer.salespackage.command.Sales; import mineplex.staffServer.salespackage.salespackages.Coins; +import mineplex.staffServer.salespackage.salespackages.GemHunter; import mineplex.staffServer.salespackage.salespackages.LifetimeHero; import mineplex.staffServer.salespackage.salespackages.LifetimeUltra; import mineplex.staffServer.salespackage.salespackages.MonthlyHero; @@ -25,16 +25,18 @@ public class SalesPackageManager extends MiniPlugin private CoreClientManager _clientManager; private DonationManager _donationManager; private InventoryManager _inventoryManager; + private StatsManager _statsManager; private NautHashMap _salesPackages = new NautHashMap(); - public SalesPackageManager(JavaPlugin plugin, CoreClientManager clientManager, DonationManager donationManager, InventoryManager inventoryManager) + public SalesPackageManager(JavaPlugin plugin, CoreClientManager clientManager, DonationManager donationManager, InventoryManager inventoryManager, StatsManager statsManager) { super("SalesPackageManager", plugin); _clientManager = clientManager; _donationManager = donationManager; _inventoryManager = inventoryManager; + _statsManager = statsManager; AddSalesPackage(new Coins(this, 5000)); AddSalesPackage(new Coins(this, 25000)); @@ -42,7 +44,9 @@ public class SalesPackageManager extends MiniPlugin AddSalesPackage(new MonthlyUltra(this)); AddSalesPackage(new MonthlyHero(this)); AddSalesPackage(new LifetimeUltra(this)); - AddSalesPackage(new LifetimeHero(this)); + AddSalesPackage(new LifetimeHero(this)); + AddSalesPackage(new GemHunter(this, 8)); + AddSalesPackage(new GemHunter(this, 12)); } private void AddSalesPackage(SalesPackageBase salesPackage) @@ -101,4 +105,9 @@ public class SalesPackageManager extends MiniPlugin coinBuilder.sendToPlayer(caller); packageBuilder.sendToPlayer(caller); } + + public StatsManager getStatsManager() + { + return _statsManager; + } } diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/GemHunterCommand.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/GemHunterCommand.java new file mode 100644 index 000000000..b47f6d8e2 --- /dev/null +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/GemHunterCommand.java @@ -0,0 +1,31 @@ +package mineplex.staffServer.salespackage.command; + +import org.bukkit.entity.Player; + +import mineplex.core.command.CommandBase; +import mineplex.core.common.Rank; +import mineplex.core.common.util.F; +import mineplex.core.common.util.UUIDFetcher; +import mineplex.staffServer.salespackage.SalesPackageManager; + +public class GemHunterCommand extends CommandBase +{ + public GemHunterCommand(SalesPackageManager plugin) + { + super(plugin, Rank.MODERATOR, "gemhunter"); + } + + @Override + public void Execute(Player caller, String[] args) + { + if (args == null || args.length != 2) + return; + + String playerName = args[0]; + int amount = Integer.parseInt(args[1]); + + Plugin.getDonationManager().PurchaseUnknownSalesPackage(null, playerName, "Gem Hunter Level " + amount, false, 0, false); + Plugin.getStatsManager().incrementStat(UUIDFetcher.getUUIDOf(playerName).toString(), "Global.GemsEarned", amount); + caller.sendMessage(F.main(Plugin.GetName(), "Added Level " + amount + " Gem Hunter to " + playerName + "'s account!")); + } +} diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/HeroCommand.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/HeroCommand.java index 0d6bb4b1a..c0de8ec3b 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/HeroCommand.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/HeroCommand.java @@ -6,7 +6,6 @@ import org.bukkit.event.player.PlayerCommandPreprocessEvent; import mineplex.core.command.CommandBase; import mineplex.core.common.Rank; -import mineplex.core.recharge.Recharge; import mineplex.staffServer.salespackage.SalesPackageManager; public class HeroCommand extends CommandBase @@ -20,15 +19,18 @@ public class HeroCommand extends CommandBase public void Execute(Player caller, String[] args) { resetCommandCharge(caller); - PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO false"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO false")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 15000"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 15000")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 90"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 90")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 40")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 10")); } } diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeHeroCommand.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeHeroCommand.java index 38676174b..08fffb258 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeHeroCommand.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeHeroCommand.java @@ -19,15 +19,18 @@ public class LifetimeHeroCommand extends CommandBase public void Execute(Player caller, String[] args) { resetCommandCharge(caller); - PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO true"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " HERO true")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 40000"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 40000")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 180"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 180")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 40")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 10")); } } diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeUltraCommand.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeUltraCommand.java index 970221cfe..dbc33691d 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeUltraCommand.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/LifetimeUltraCommand.java @@ -19,15 +19,18 @@ public class LifetimeUltraCommand extends CommandBase public void Execute(Player caller, String[] args) { resetCommandCharge(caller); - PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA true"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA true")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 20000"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 20000")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 60"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 60")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 20")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 5")); } } diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/Sales.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/Sales.java index b5edb5362..47bb4faf3 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/Sales.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/Sales.java @@ -15,6 +15,9 @@ public class Sales extends MultiCommandBase AddCommand(new RankCommand(plugin)); AddCommand(new CoinCommand(plugin)); AddCommand(new BoosterCommand(plugin)); + AddCommand(new TreasureChestCommand(plugin)); + AddCommand(new TreasureKeyCommand(plugin)); + AddCommand(new GemHunterCommand(plugin)); AddCommand(new UltraCommand(plugin)); AddCommand(new HeroCommand(plugin)); AddCommand(new LifetimeUltraCommand(plugin)); diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/TreasureChestCommand.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/TreasureChestCommand.java new file mode 100644 index 000000000..8a562e236 --- /dev/null +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/TreasureChestCommand.java @@ -0,0 +1,31 @@ +package mineplex.staffServer.salespackage.command; + +import org.bukkit.entity.Player; + +import mineplex.core.command.CommandBase; +import mineplex.core.common.Rank; +import mineplex.core.common.util.F; +import mineplex.core.common.util.UUIDFetcher; +import mineplex.staffServer.salespackage.SalesPackageManager; + +public class TreasureChestCommand extends CommandBase +{ + public TreasureChestCommand(SalesPackageManager plugin) + { + super(plugin, Rank.MODERATOR, "chest"); + } + + @Override + public void Execute(Player caller, String[] args) + { + if (args == null || args.length != 2) + return; + + String playerName = args[0]; + int amount = Integer.parseInt(args[1]); + + Plugin.getDonationManager().PurchaseUnknownSalesPackage(null, playerName, "Treasure Chest " + amount, false, 0, false); + Plugin.getInventoryManager().addItemToInventoryForOffline(UUIDFetcher.getUUIDOf(playerName).toString(), "Utility", "Treasure Chest", amount); + caller.sendMessage(F.main(Plugin.GetName(), "Added " + amount + " treasure chests to " + playerName + "'s account!")); + } +} diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/TreasureKeyCommand.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/TreasureKeyCommand.java new file mode 100644 index 000000000..26072bb11 --- /dev/null +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/TreasureKeyCommand.java @@ -0,0 +1,31 @@ +package mineplex.staffServer.salespackage.command; + +import org.bukkit.entity.Player; + +import mineplex.core.command.CommandBase; +import mineplex.core.common.Rank; +import mineplex.core.common.util.F; +import mineplex.core.common.util.UUIDFetcher; +import mineplex.staffServer.salespackage.SalesPackageManager; + +public class TreasureKeyCommand extends CommandBase +{ + public TreasureKeyCommand(SalesPackageManager plugin) + { + super(plugin, Rank.MODERATOR, "key"); + } + + @Override + public void Execute(Player caller, String[] args) + { + if (args == null || args.length != 2) + return; + + String playerName = args[0]; + int amount = Integer.parseInt(args[1]); + + Plugin.getDonationManager().PurchaseUnknownSalesPackage(null, playerName, "Treasure Key " + amount, false, 0, false); + Plugin.getInventoryManager().addItemToInventoryForOffline(UUIDFetcher.getUUIDOf(playerName).toString(), "Treasure", "Treasure Key", amount); + caller.sendMessage(F.main(Plugin.GetName(), "Added " + amount + " treasure Keys to " + playerName + "'s account!")); + } +} diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/UltraCommand.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/UltraCommand.java index 3e014f75d..4aa7c6fd4 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/UltraCommand.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/command/UltraCommand.java @@ -19,15 +19,18 @@ public class UltraCommand extends CommandBase public void Execute(Player caller, String[] args) { resetCommandCharge(caller); - PlayerCommandPreprocessEvent event = new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA false"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales rank " + args[0] + " ULTRA false")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 7500"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales coin " + args[0] + " 7500")); resetCommandCharge(caller); - event = new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 30"); - Bukkit.getServer().getPluginManager().callEvent(event); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales booster " + args[0] + " 30")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales chest " + args[0] + " 20")); + + resetCommandCharge(caller); + Bukkit.getServer().getPluginManager().callEvent(new PlayerCommandPreprocessEvent(caller, "/sales key " + args[0] + " 5")); } } diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/GemHunter.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/GemHunter.java new file mode 100644 index 000000000..977060810 --- /dev/null +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/GemHunter.java @@ -0,0 +1,23 @@ +package mineplex.staffServer.salespackage.salespackages; + +import mineplex.staffServer.salespackage.SalesPackageManager; + +import org.bukkit.entity.Player; + +public class GemHunter extends SalesPackageBase +{ + private int _level; + + public GemHunter(SalesPackageManager manager, int level) + { + super(manager, "Level " + level + " Gem Hunter"); + + _level = level; + } + public void displayToAgent(Player agent, String playerName) + { + addButton(agent, "/sales gemhunter " + playerName + " " + _level, "Level " + _level + " Gem Hunter."); + agent.sendMessage(" "); + addBackButton(agent, playerName); + } +} diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeHero.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeHero.java index caf8b8eab..64940b81f 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeHero.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeHero.java @@ -15,7 +15,9 @@ public class LifetimeHero extends SalesPackageBase { addButton(agent, "/sales coin " + playerName + " 40000", " 40,000 Coins"); addButton(agent, "/sales booster " + playerName + " 180", " 180 Gem Boosters"); - addButton(agent, "/sales rank " + playerName + " HERO true", " Lifetime Hero (Also, unlocks kits)."); + addButton(agent, "/sales chest " + playerName + " 40", " 40 Treasure Chests"); + addButton(agent, "/sales key " + playerName + " 10", " 10 Treasure Keys"); + addButton(agent, "/sales rank " + playerName + " HERO true", " Lifetime Hero."); addButton(agent, "Apply All", "/sales lifetimehero " + playerName, " Apply all above."); agent.sendMessage(" "); addBackButton(agent, playerName); diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeUltra.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeUltra.java index 991c1551e..bca70da38 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeUltra.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/LifetimeUltra.java @@ -15,7 +15,9 @@ public class LifetimeUltra extends SalesPackageBase { addButton(agent, "/sales coin " + playerName + " 20000", " 20,000 Coins"); addButton(agent, "/sales booster " + playerName + " 60", " 60 Gem Boosters"); - addButton(agent, "/sales rank " + playerName + " ULTRA true", " Lifetime Ultra (Also, unlocks kits)."); + addButton(agent, "/sales chest " + playerName + " 20", " 20 Treasure Chests"); + addButton(agent, "/sales key " + playerName + " 5", " 5 Treasure Keys"); + addButton(agent, "/sales rank " + playerName + " ULTRA true", " Lifetime Ultra."); addButton(agent, "Apply All", "/sales lifetimeultra " + playerName, " Apply all above."); agent.sendMessage(" "); addBackButton(agent, playerName); diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyHero.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyHero.java index ad82d4d83..811e0e8ec 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyHero.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyHero.java @@ -15,6 +15,8 @@ public class MonthlyHero extends SalesPackageBase { addButton(agent, "/sales coin " + playerName + " 15000", " 15,000 Coins"); addButton(agent, "/sales booster " + playerName + " 90", " 90 Gem Boosters"); + addButton(agent, "/sales chest " + playerName + " 40", " 40 Treasure Chests"); + addButton(agent, "/sales key " + playerName + " 10", " 10 Treasure Keys"); addButton(agent, "/sales rank " + playerName + " HERO false", " Monthly Hero."); addButton(agent, "Apply All", "/sales hero " + playerName, " Apply all above."); agent.sendMessage(" "); diff --git a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyUltra.java b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyUltra.java index ce48bbf2f..7a28b1b73 100644 --- a/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyUltra.java +++ b/Plugins/Mineplex.StaffServer/src/mineplex/staffServer/salespackage/salespackages/MonthlyUltra.java @@ -15,6 +15,8 @@ public class MonthlyUltra extends SalesPackageBase { addButton(agent, "/sales coin " + playerName + " 7500", " 7,500 Coins"); addButton(agent, "/sales booster " + playerName + " 30", " 30 Gem Boosters"); + addButton(agent, "/sales chest " + playerName + " 20", " 20 Treasure Chests"); + addButton(agent, "/sales key " + playerName + " 5", " 5 Treasure Keys"); addButton(agent, "/sales rank " + playerName + " ULTRA false", " Monthly Ultra."); addButton(agent, "Apply All", "/sales ultra " + playerName, " Apply all above."); agent.sendMessage(" ");