From 92d3a7dab8c52aff343fbe3c29664d7821dea4c8 Mon Sep 17 00:00:00 2001 From: Mini-Chiss Date: Wed, 11 Feb 2015 14:42:41 +1300 Subject: [PATCH] all chests purchasable by coins --- .../src/mineplex/core/reward/RewardType.java | 2 +- .../{OldChest.java => ChestPackage.java} | 9 +++---- ...icChestButton.java => BuyChestButton.java} | 26 +++++++++++------- .../core/treasure/gui/TreasurePage.java | 27 ++++++++++++------- 4 files changed, 38 insertions(+), 26 deletions(-) rename Plugins/Mineplex.Core/src/mineplex/core/treasure/{OldChest.java => ChestPackage.java} (66%) rename Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/{BuyBasicChestButton.java => BuyChestButton.java} (60%) diff --git a/Plugins/Mineplex.Core/src/mineplex/core/reward/RewardType.java b/Plugins/Mineplex.Core/src/mineplex/core/reward/RewardType.java index 7083771e8..dfd9f77f6 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/reward/RewardType.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/reward/RewardType.java @@ -4,7 +4,7 @@ public enum RewardType { //% Chances Mythic Legend Rare Uncommon GameLoot( 0.000001, 0.00001, 0.0001, 3), - OldChest( 0, 0.1, 0.0, 5), + OldChest( 0, 0.1, 0.4, 5), AncientChest( 0, 1, 4, 25), MythicalChest( 0.5, 3, 12, 75); diff --git a/Plugins/Mineplex.Core/src/mineplex/core/treasure/OldChest.java b/Plugins/Mineplex.Core/src/mineplex/core/treasure/ChestPackage.java similarity index 66% rename from Plugins/Mineplex.Core/src/mineplex/core/treasure/OldChest.java rename to Plugins/Mineplex.Core/src/mineplex/core/treasure/ChestPackage.java index b3c65dd94..ef550b390 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/treasure/OldChest.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/treasure/ChestPackage.java @@ -1,18 +1,17 @@ package mineplex.core.treasure; -import org.bukkit.ChatColor; import org.bukkit.Material; import org.bukkit.entity.Player; import mineplex.core.common.CurrencyType; import mineplex.core.shop.item.SalesPackageBase; -public class OldChest extends SalesPackageBase +public class ChestPackage extends SalesPackageBase { - public OldChest() + public ChestPackage(String name, Material mat, int cost) { - super("Old Chest", Material.CHEST, (byte) 0, new String[] {}, 1000); - + super(name, mat, (byte) 0, new String[] {}, cost); + KnownPackage = false; OneTimePurchaseOnly = false; } diff --git a/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/BuyBasicChestButton.java b/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/BuyChestButton.java similarity index 60% rename from Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/BuyBasicChestButton.java rename to Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/BuyChestButton.java index 990211b26..f71cefe74 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/BuyBasicChestButton.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/BuyChestButton.java @@ -1,5 +1,6 @@ package mineplex.core.treasure.gui; +import org.bukkit.Material; import org.bukkit.entity.Player; import org.bukkit.event.inventory.ClickType; @@ -9,24 +10,29 @@ import mineplex.core.donation.DonationManager; import mineplex.core.inventory.InventoryManager; import mineplex.core.shop.item.IButton; import mineplex.core.shop.page.ConfirmationPage; -import mineplex.core.treasure.OldChest; +import mineplex.core.treasure.ChestPackage; import mineplex.core.treasure.TreasureManager; -public class BuyBasicChestButton implements IButton +public class BuyChestButton implements IButton { - private Player _player; - private InventoryManager _inventoryManager; private TreasurePage _page; - public BuyBasicChestButton(Player player, InventoryManager inventoryManager, TreasurePage page) - { - _player = player; - + private String _chestName; + private Material _chestMat; + private int _chestCost; + + public BuyChestButton(Player player, InventoryManager inventoryManager, TreasurePage page, + String chestName, Material chestMat, int chestCost) + { _inventoryManager = inventoryManager; _page = page; + + _chestName = chestName; + _chestMat = chestMat; + _chestCost = chestCost; } @Override @@ -37,9 +43,9 @@ public class BuyBasicChestButton implements IButton { public void run() { - _inventoryManager.addItemToInventory(player, "Item", "Old Chest", 1); + _inventoryManager.addItemToInventory(player, "Item", _chestName, 1); _page.Refresh(); } - }, _page, new OldChest(), CurrencyType.Coins, player)); + }, _page, new ChestPackage(_chestName, _chestMat, _chestCost), CurrencyType.Coins, player)); } } \ No newline at end of file diff --git a/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/TreasurePage.java b/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/TreasurePage.java index d392959c0..113626ad3 100644 --- a/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/TreasurePage.java +++ b/Plugins/Mineplex.Core/src/mineplex/core/treasure/gui/TreasurePage.java @@ -60,8 +60,9 @@ public class TreasurePage extends ShopPageBase basicLore.add(ChatColor.RESET + C.cGreen + "Click to Open!"); else { - basicLore.add(ChatColor.RESET + "Cost: " + C.cYellow + "1000 Coins"); - basicLore.add(ChatColor.RESET + "Click to Purchase!"); + basicLore.add(ChatColor.RESET + "Click to Purchase for " + C.cYellow + "1000 Coins"); + basicLore.add(" "); + basicLore.add(ChatColor.RESET + "or Purchase at: " + C.cYellow + "www.mineplex.com/shop"); } List heroicLore = new ArrayList(); @@ -76,7 +77,9 @@ public class TreasurePage extends ShopPageBase heroicLore.add(ChatColor.RESET + C.cGreen + "Click to Open!"); else { - heroicLore.add(ChatColor.RESET + "Purchase at: " + C.cYellow + "www.mineplex.com/shop"); + heroicLore.add(ChatColor.RESET + "Click to Purchase for " + C.cYellow + "5000 Coins"); + heroicLore.add(" "); + heroicLore.add(ChatColor.RESET + "or Purchase at: " + C.cYellow + "www.mineplex.com/shop"); } List legendaryLore = new ArrayList(); @@ -94,18 +97,22 @@ public class TreasurePage extends ShopPageBase legendaryLore.add(ChatColor.RESET + C.cGreen + "Click to Open!"); else { - legendaryLore.add(ChatColor.RESET + "Purchase at: " + C.cYellow + "www.mineplex.com/shop"); + legendaryLore.add(ChatColor.RESET + "Click to Purchase for " + C.cYellow + "10000 Coins"); + legendaryLore.add(" "); + legendaryLore.add(ChatColor.RESET + "or Purchase at: " + C.cYellow + "www.mineplex.com/shop"); } ShopItem basic = new ShopItem(Material.CHEST, C.cGreen + C.Bold + "Old Chest", basicLore.toArray(new String[0]), 0, false, false); ShopItem heroic = new ShopItem(Material.TRAPPED_CHEST, C.cGold + C.Bold + "Ancient Chest", heroicLore.toArray(new String[0]), 0, false, false); ShopItem legendary = new ShopItem(Material.ENDER_CHEST, C.cRed + C.Bold + "Mythical Chest", legendaryLore.toArray(new String[0]), 0, false, false); - if (basicCount > 0) - AddButton(2, basic, new OpenTreasureButton(Player, _treasureLocation, TreasureType.OLD)); - else - AddButton(2, basic, new BuyBasicChestButton(Player, _inventoryManager, this)); - AddButton(4, heroic, new OpenTreasureButton(Player, _treasureLocation, TreasureType.ANCIENT)); - AddButton(6, legendary, new OpenTreasureButton(Player, _treasureLocation, TreasureType.MYTHICAL)); + if (basicCount > 0) AddButton(2, basic, new OpenTreasureButton(Player, _treasureLocation, TreasureType.OLD)); + else AddButton(2, basic, new BuyChestButton(Player, _inventoryManager, this, "Old Chest", Material.CHEST, 1000)); + + if (heroicCount > 0) AddButton(4, heroic, new OpenTreasureButton(Player, _treasureLocation, TreasureType.ANCIENT)); + else AddButton(4, heroic, new BuyChestButton(Player, _inventoryManager, this, "Ancient Chest", Material.CHEST, 5000)); + + if (legendaryCount > 0) AddButton(6, legendary, new OpenTreasureButton(Player, _treasureLocation, TreasureType.MYTHICAL)); + else AddButton(6, legendary, new BuyChestButton(Player, _inventoryManager, this, "Mythical Chest", Material.CHEST, 10000)); } }