From f29b855667c8bf3a74a7b03b1ee4b815838e4516 Mon Sep 17 00:00:00 2001 From: Sam Date: Wed, 18 Jul 2018 13:29:01 +0100 Subject: [PATCH] Fix buying in bulk --- .../item/items/CakeDeployPlatform.java | 1 - .../cakewars/item/items/CakeIceBridge.java | 1 - .../cakewars/item/items/CakeSafeTeleport.java | 1 - .../games/cakewars/item/items/CakeSheep.java | 1 - .../games/cakewars/item/items/CakeWall.java | 1 - .../game/games/cakewars/modes/OPCakeWars.java | 2 +- .../games/cakewars/ui/CakeResourcePage.java | 45 ++++++++++++------- .../cakewars/ui/CakeResourceStarPage.java | 2 +- 8 files changed, 31 insertions(+), 23 deletions(-) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeDeployPlatform.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeDeployPlatform.java index a312f117f..441e4a6e8 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeDeployPlatform.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeDeployPlatform.java @@ -24,7 +24,6 @@ public class CakeDeployPlatform extends CakeSpecialItem public static final ItemStack ITEM_STACK = new ItemBuilder(Material.INK_SACK) .setTitle(C.cYellowB + "Deploy Platform") .addLore("", "Creates a platform of wool next to", "any block you click!", "Uses: " + C.cRed + "1") - .setUnbreakable(true) .build(); private static final int PLATFORM_DELTA = 1; diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeIceBridge.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeIceBridge.java index 0137e96ec..f9939a6d6 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeIceBridge.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeIceBridge.java @@ -28,7 +28,6 @@ public class CakeIceBridge extends CakeSpecialItem public static final ItemStack ITEM_STACK = new ItemBuilder(Material.ICE) .setTitle(C.cYellowB + "Ice Bridge") .addLore("", "Creates a huge bridge of ice", "Warning! Ice Bridges have a", C.cRed + "20 second" + C.cGray + " cooldown between uses ", "and only last for " + C.cRed + "7 Seconds" + C.cGray + "!", "Uses: " + C.cRed + "1") - .setUnbreakable(true) .build(); private static final int MAX_DISTANCE = 30; private static final long BRIDGE_TIME = TimeUnit.SECONDS.toMillis(7); diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSafeTeleport.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSafeTeleport.java index 534e206f3..268c61b11 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSafeTeleport.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSafeTeleport.java @@ -35,7 +35,6 @@ public class CakeSafeTeleport extends CakeSpecialItem implements Listener public static final ItemStack ITEM_STACK = new ItemBuilder(Material.EYE_OF_ENDER) .setTitle(C.cYellowB + "Safe Teleport") .addLore("", "Teleports you have to a safe location", "if you fall into the void.", "Warning! Safe Teleport has a", C.cRed + "20 second" + C.cGray + " cooldown between uses.", "Uses: " + C.cRed + "1") - .setUnbreakable(true) .build(); private final Map _safeLocations; diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSheep.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSheep.java index b86109520..b25844964 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSheep.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeSheep.java @@ -53,7 +53,6 @@ public class CakeSheep extends CakeSpecialItem implements Listener "If she is killed she does not explode.", "Warning! Polly has a", C.cRed + "20 second" + C.cGray + " cooldown between uses." ) - .setUnbreakable(true) .build(); private static final long EXPLOSION_TIME = TimeUnit.SECONDS.toMillis(4); private static final int EXPLOSION_RADIUS = 7; diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeWall.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeWall.java index 86b3691a8..a5dae593e 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeWall.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/item/items/CakeWall.java @@ -32,7 +32,6 @@ public class CakeWall extends CakeSpecialItem public static final ItemStack ITEM_STACK = new ItemBuilder(Material.STAINED_GLASS) .setTitle(C.cYellowB + "Wool Wall") .addLore("", "Creates a wall of wool above", "any block you click!", "Uses: " + C.cRed + "1") - .setUnbreakable(true) .build(); private static final int PLATFORM_DELTA = 1; private static final int WALL_WARMUP_TICKS = 40; diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/modes/OPCakeWars.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/modes/OPCakeWars.java index 927107a24..da06532e8 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/modes/OPCakeWars.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/modes/OPCakeWars.java @@ -244,7 +244,7 @@ public class OPCakeWars extends CakeWars { if (resource == CakeResource.STAR) { - return new CakeResourcePage(getArcadeManager(), getCakeShopModule().getShop(), player, 36, CakeResource.STAR, Collections.emptyList()) + return new CakeResourcePage(getArcadeManager(), getCakeShopModule().getShop(), player, 27, CakeResource.STAR, Collections.emptyList()) { @Override protected void buildPage() diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourcePage.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourcePage.java index b0b8b7a77..0718a7116 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourcePage.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourcePage.java @@ -40,7 +40,7 @@ public class CakeResourcePage extends ShopPageBase _items; final GameTeam _team; - int _multiplier; + private int _multiplier; public CakeResourcePage(ArcadeManager plugin, CakeResourceShop shop, Player player, CakeResource resource, List items) { @@ -90,11 +90,16 @@ public class CakeResourcePage extends ShopPageBase { + if (!Recharge.Instance.use(player, "Change Multipler", 250, false, false)) + { + return; + } + _multiplier = multiplier; playAcceptSound(player); refresh(); @@ -161,14 +166,19 @@ public class CakeResourcePage extends ShopPageBase 1) + if (shouldScale(item)) { - builder.setAmount(itemStack.getAmount() * _multiplier); - builder.addLore("Amount: " + _resource.getChatColor() + itemStack.getAmount()); + int newAmount = itemStack.getAmount() * _multiplier; + builder.setAmount(newAmount); + + if (_multiplier > 1) + { + builder.addLore("Amount: " + _resource.getChatColor() + newAmount); + } } builder.addLore( - "Cost: " + _resource.getChatColor() + (item.getCost() * _multiplier) + " " + _resource.getName() + "s", + "Cost: " + _resource.getChatColor() + getCost(item) + " " + _resource.getName() + "s", "", result.getColour() + result.getFeedback() ); @@ -206,7 +216,12 @@ public class CakeResourcePage extends ShopPageBase 1) - { - give.setAmount(_item.getItemStack().getAmount() * _multiplier); - } - - if (UtilItem.isWeapon(material) || UtilItem.isTool(material) || UtilItem.isArmor(material) || material == Material.BOW || material == Material.SHEARS) + if (!shouldScale(_item)) { give.setUnbreakable(true); } + else + { + give.setAmount(itemStack.getAmount() * _multiplier); + } - UtilInv.remove(player, resource.getType(), resource.getData().getData(), _item.getCost() * _multiplier); + UtilInv.remove(player, resource.getType(), resource.getData().getData(), getCost(_item)); handleTeamColours(give); ItemStack giveItem = give.build(); diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourceStarPage.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourceStarPage.java index a01158cdd..fd07c0697 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourceStarPage.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/cakewars/ui/CakeResourceStarPage.java @@ -30,7 +30,7 @@ public class CakeResourceStarPage extends CakeResourcePage public CakeResourceStarPage(ArcadeManager plugin, CakeResourceShop shop, Player player, List items) { - super(plugin, shop, player, 36, CakeResource.STAR, items); + super(plugin, shop, player, 27, CakeResource.STAR, items); _cakeTeam = _game.getCakeTeamModule().getCakeTeam(_game.GetTeam(player)); }