From 34c6e1cab7593f2b252a687d872054d203e3eb73 Mon Sep 17 00:00:00 2001 From: Sam Date: Sun, 28 Aug 2016 09:04:46 +0100 Subject: [PATCH] Add the base of kit progression --- .../game/games/quiver/kits/KitBarrage.java | 41 +++++++-- .../game/games/quiver/kits/KitBeserker.java | 30 ++++++- .../game/games/quiver/kits/KitLeaper.java | 21 +---- .../games/quiver/kits/KitNecromancer.java | 32 ++++++- .../game/games/quiver/kits/KitNewNinja.java | 32 ++++++- .../game/games/quiver/kits/KitPyromancer.java | 30 ++++++- ...{KitHeadHunter.java => KitSkyWarrior.java} | 83 ++++++++++++++----- .../game/games/quiver/kits/KitSlamShot.java | 23 +---- 8 files changed, 215 insertions(+), 77 deletions(-) rename Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/{KitHeadHunter.java => KitSkyWarrior.java} (54%) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBarrage.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBarrage.java index 2a01ccf7e..f092bf4d1 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBarrage.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBarrage.java @@ -36,39 +36,60 @@ public class KitBarrage extends ProgressingKit }; private static final String DOUBLE_JUMP = "Double Jump"; + private static final String ULTIMATE = "Ultimate"; + private static final String ARROWS = "Arrows"; + private static final String SUPER_ARROW = "Super Arrow"; private static final Perk[][] PERKS = { { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new PerkFletcher(5, 1, true, -1, "Super Arrow"), + new PerkFletcher(5, 1, true, -1, true, SUPER_ARROW), new UltimateBarrage(10) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new PerkFletcher(5, 1, true, -1, "Super Arrow"), + new PerkFletcher(5, 1, true, -1, true, SUPER_ARROW), new UltimateBarrage(11) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new PerkFletcher(5, 1, true, -1, "Super Arrow"), + new PerkFletcher(5, 1, true, -1, true, SUPER_ARROW), new UltimateBarrage(12) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new PerkFletcher(5, 1, true, -1, "Super Arrow"), + new PerkFletcher(5, 1, true, -1, true, SUPER_ARROW), new UltimateBarrage(13) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new PerkFletcher(5, 1, true, -1, "Super Arrow"), + new PerkFletcher(5, 1, true, -1, true, SUPER_ARROW), new UltimateBarrage(14) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new PerkFletcher(5, 1, true, -1, "Super Arrow"), + new PerkFletcher(5, 1, true, -1, true, SUPER_ARROW), new UltimateBarrage(15) } }; + + private static final String[][] UPGRADE_DETAILS = { + { + increase(ULTIMATE, ARROWS, 10) + }, + { + increase(ULTIMATE, ARROWS, 10) + }, + { + increase(ULTIMATE, ARROWS, 10) + }, + { + increase(ULTIMATE, ARROWS, 10) + }, + { + increase(ULTIMATE, ARROWS, 10) + }, + }; private static final ItemStack IN_HAND = new ItemStack(Material.IRON_AXE); @@ -79,7 +100,7 @@ public class KitBarrage extends ProgressingKit public KitBarrage(ArcadeManager manager) { - super(manager, "Barrage", "quiverbarrage", KitAvailability.Free, DESCRIPTION, PERKS, EntityType.ZOMBIE, IN_HAND); + super(manager, "Barrage", "quiverbarrage", KitAvailability.Free, DESCRIPTION, PERKS, UPGRADE_DETAILS, EntityType.ZOMBIE, IN_HAND); } @@ -110,4 +131,10 @@ public class KitBarrage extends ProgressingKit quiverPayload.resetUltimate(Bukkit.getPlayer(player), true); } + + @Override + public boolean showUpgrades() + { + return true; + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBeserker.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBeserker.java index 3139a0965..f68144d54 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBeserker.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitBeserker.java @@ -37,7 +37,9 @@ public class KitBeserker extends ProgressingKit }; private static final String DOUBLE_JUMP = "Double Jump"; - + private static final String ULTIMATE = "Ultimate"; + private static final String DURATION = "Duration"; + private static final Perk[][] PERKS = { { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), @@ -70,6 +72,24 @@ public class KitBeserker extends ProgressingKit new UltimateBeserker(8500) } }; + + private static final String[][] UPGRADE_DETAILS = { + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + }; private static final ItemStack IN_HAND = new ItemStack(Material.IRON_SWORD); @@ -80,7 +100,7 @@ public class KitBeserker extends ProgressingKit public KitBeserker(ArcadeManager manager) { - super(manager, "Beserker", "quiverbeserker", KitAvailability.Free, DESCRIPTION, PERKS, EntityType.ZOMBIE, IN_HAND); + super(manager, "Beserker", "quiverbeserker", KitAvailability.Free, DESCRIPTION, PERKS, UPGRADE_DETAILS, EntityType.ZOMBIE, IN_HAND); } @Override @@ -110,4 +130,10 @@ public class KitBeserker extends ProgressingKit quiverPayload.resetUltimate(Bukkit.getPlayer(player), true); } + + @Override + public boolean showUpgrades() + { + return true; + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitLeaper.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitLeaper.java index 49f2155a4..f3cae0351 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitLeaper.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitLeaper.java @@ -24,25 +24,8 @@ public class KitLeaper extends ProgressingKit C.cYellow + "Double tap " + C.cWhite + "your jump key to " + C.cGreen + "Double Jump" }; - private static final Perk[][] PERKS = { - { - new PerkDoubleJump("Double Jump", 0.945, 0.945, true) - }, - { - new PerkDoubleJump("Double Jump", 0.99, 0.99, true) - }, - { - new PerkDoubleJump("Double Jump", 1.035, 1.035, true) - }, - { - new PerkDoubleJump("Double Jump", 1.08, 1.08, true) - }, - { - new PerkDoubleJump("Double Jump", 1.125, 1.125, true) - }, - { - new PerkDoubleJump("Double Jump", 1.17, 1.17, true) - } + private static final Perk[] PERKS = { + new PerkDoubleJump("Double Jump", 0.9, 0.9, true) }; private static final ItemStack IN_HAND = new ItemStack(Material.STONE_SWORD); diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNecromancer.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNecromancer.java index 9b9bb5806..4f65c0b46 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNecromancer.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNecromancer.java @@ -32,7 +32,9 @@ public class KitNecromancer extends ProgressingKit }; private static final String DOUBLE_JUMP = "Double Jump"; - + private static final String ULTIMATE = "Ultimate"; + private static final String DURATION = "Duration"; + private static final Perk[][] PERKS = { { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), @@ -65,7 +67,25 @@ public class KitNecromancer extends ProgressingKit new UltimateNecromancer(12500, 3) } }; - + + private static final String[][] UPGRADE_DETAILS = { + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + }; + private static final ItemStack IN_HAND = new ItemStack(Material.BONE); private static final ItemStack[] PLAYER_ITEMS = { @@ -75,7 +95,7 @@ public class KitNecromancer extends ProgressingKit public KitNecromancer(ArcadeManager manager) { - super(manager, "Necromancer", "quivernecromancer", KitAvailability.Free, DESCRIPTION, PERKS, EntityType.ZOMBIE, IN_HAND); + super(manager, "Necromancer", "quivernecromancer", KitAvailability.Free, DESCRIPTION, PERKS, UPGRADE_DETAILS, EntityType.ZOMBIE, IN_HAND); } @@ -92,5 +112,9 @@ public class KitNecromancer extends ProgressingKit } } - + @Override + public boolean showUpgrades() + { + return true; + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNewNinja.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNewNinja.java index 768f154b3..beb0db171 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNewNinja.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitNewNinja.java @@ -35,7 +35,9 @@ public class KitNewNinja extends ProgressingKit }; private static final String DOUBLE_JUMP = "Double Jump"; - + private static final String ULTIMATE = "Ultimate"; + private static final String DURATION = "Duration"; + private static final Perk[][] PERKS = { { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), @@ -68,7 +70,25 @@ public class KitNewNinja extends ProgressingKit new UltimateNinja(8500) } }; - + + private static final String[][] UPGRADE_DETAILS = { + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + }; + private static final ItemStack IN_HAND = new ItemStack(Material.GOLD_SWORD); private static final ItemStack[] PLAYER_ITEMS = { @@ -78,7 +98,7 @@ public class KitNewNinja extends ProgressingKit public KitNewNinja(ArcadeManager manager) { - super(manager, "Ninja", "quivernewninja", KitAvailability.Free, DESCRIPTION, PERKS, EntityType.ZOMBIE, IN_HAND); + super(manager, "Ninja", "quivernewninja", KitAvailability.Free, DESCRIPTION, PERKS, UPGRADE_DETAILS, EntityType.ZOMBIE, IN_HAND); } @Override @@ -101,4 +121,10 @@ public class KitNewNinja extends ProgressingKit quiverPayload.resetUltimate(Bukkit.getPlayer(player), true); } + + @Override + public boolean showUpgrades() + { + return true; + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitPyromancer.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitPyromancer.java index d4b0c00d8..98734d735 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitPyromancer.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitPyromancer.java @@ -39,7 +39,9 @@ public class KitPyromancer extends ProgressingKit }; private static final String DOUBLE_JUMP = "Double Jump"; - + private static final String ULTIMATE = "Ultimate"; + private static final String DURATION = "Duration"; + private static final Perk[][] PERKS = { { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), @@ -72,6 +74,24 @@ public class KitPyromancer extends ProgressingKit new UltimatePyromancer() } }; + + private static final String[][] UPGRADE_DETAILS = { + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + { + increase(ULTIMATE, DURATION, 10) + }, + }; private static final ItemStack IN_HAND = new ItemStack(Material.BLAZE_POWDER); @@ -82,7 +102,7 @@ public class KitPyromancer extends ProgressingKit public KitPyromancer(ArcadeManager manager) { - super(manager, "Pyromancer", "quiverpyromancer", KitAvailability.Free, DESCRIPTION, PERKS, EntityType.ZOMBIE, IN_HAND); + super(manager, "Pyromancer", "quiverpyromancer", KitAvailability.Free, DESCRIPTION, PERKS, UPGRADE_DETAILS, EntityType.ZOMBIE, IN_HAND); } @@ -113,4 +133,10 @@ public class KitPyromancer extends ProgressingKit quiverPayload.resetUltimate(Bukkit.getPlayer(player), true); } + + @Override + public boolean showUpgrades() + { + return true; + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitHeadHunter.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitSkyWarrior.java similarity index 54% rename from Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitHeadHunter.java rename to Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitSkyWarrior.java index 370d50417..1b6ed984c 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitHeadHunter.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitSkyWarrior.java @@ -16,70 +16,107 @@ import nautilus.game.arcade.ArcadeManager; import nautilus.game.arcade.game.Game.GameState; import nautilus.game.arcade.game.games.quiver.Quiver; import nautilus.game.arcade.game.games.quiver.QuiverPayload; -import nautilus.game.arcade.game.games.quiver.ultimates.UltimateHeadHunter; +import nautilus.game.arcade.game.games.quiver.ultimates.UltimateSkyWarrior; import nautilus.game.arcade.kit.KitAvailability; import nautilus.game.arcade.kit.Perk; import nautilus.game.arcade.kit.ProgressingKit; import nautilus.game.arcade.kit.perks.PerkDoubleJump; +import nautilus.game.arcade.kit.perks.PerkSpeed; -public class KitHeadHunter extends ProgressingKit +public class KitSkyWarrior extends ProgressingKit { + private static final String[] DESCRIPTION = { - "You can\'t hide from me.", + "Something to do with the kit", "", - C.cYellow + "Double tap " + C.cWhite + "your jump key to " + C.cGreen + "Double Jump", + "Gain permanent Speed I", "", C.cGreenB + "ULTIMATE", - "All players are outlined with " + C.cGreen + "Spectral Vision" + C.cWhite + ".", - "Lasts for " + C.cGreen + "3" + C.cWhite + " seconds." + "You fly up into the air and are given a launcher.", + "Clicking the launcher fires a Astral Arrow.", + "When it hits a block a pulse of energy is fired", + "damaging all players within " + C.cGreen + "5" + C.cWhite + " blocks", + "for " + C.cGreen + "10" + C.cWhite + " damage.", + "", + "Total of " + C.cRed + "3" + C.cWhite + " uses!", + "", + "Once all arrows are fired you teleport to a random", + "teammate dealing damage to all players within", + C.cGreen + "10" + C.cWhite + " blocks for " + C.cGreen + "2" + C.cWhite + " damage." }; private static final String DOUBLE_JUMP = "Double Jump"; - + private static final String ULTIMATE = "Ultimate"; + private static final String DURATION = "Duration"; + private static final Perk[][] PERKS = { { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new UltimateHeadHunter(10000), + new PerkSpeed(1), + new UltimateSkyWarrior(2, 10, 10, 5, 30) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new UltimateHeadHunter(11000), + new PerkSpeed(1), + new UltimateSkyWarrior(2, 10, 10, 5, 30) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new UltimateHeadHunter(12000), + new PerkSpeed(1), + new UltimateSkyWarrior(2, 10, 10, 5, 30) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new UltimateHeadHunter(13000), + new PerkSpeed(1), + new UltimateSkyWarrior(2, 10, 10, 5, 30) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new UltimateHeadHunter(14000), + new PerkSpeed(1), + new UltimateSkyWarrior(2, 10, 10, 5, 30) }, { new PerkDoubleJump(DOUBLE_JUMP, 0.9, 0.9, true), - new UltimateHeadHunter(15000), + new PerkSpeed(1), + new UltimateSkyWarrior(2, 10, 10, 5, 30) } }; - - private static final ItemStack IN_HAND = new ItemStack(Material.STONE_SWORD); + + private static final String[][] UPGRADE_DETAILS = { + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + { + increase(ULTIMATE, DURATION, 12) + }, + }; + + private static final ItemStack IN_HAND = new ItemStack(Material.FEATHER); private static final ItemStack[] PLAYER_ITEMS = { - new ItemBuilder(Material.STONE_SWORD).setUnbreakable(true).build(), + new ItemBuilder(Material.IRON_AXE).setUnbreakable(true).build(), new ItemBuilder(Material.BOW).setUnbreakable(true).build(), }; - public KitHeadHunter(ArcadeManager manager) + public KitSkyWarrior(ArcadeManager manager) { - super(manager, "Head Hunter", "quiverheadhunter", KitAvailability.Free, DESCRIPTION, PERKS, EntityType.ZOMBIE, IN_HAND); + super(manager, "Sky Warrior", "quiverskywarrior", KitAvailability.Free, DESCRIPTION, PERKS, UPGRADE_DETAILS, EntityType.ZOMBIE, IN_HAND); } @Override public void GiveItems(Player player) { player.getInventory().addItem(PLAYER_ITEMS); - + if (Manager.GetGame().GetState() == GameState.Live) { player.getInventory().addItem(Quiver.SUPER_ARROW); @@ -87,7 +124,7 @@ public class KitHeadHunter extends ProgressingKit UtilServer.getServer().getScheduler().scheduleSyncDelayedTask(Manager.getPlugin(), () -> UtilInv.Update(player), 10); } } - + @Override public void onSelected(UUID player) { @@ -102,4 +139,10 @@ public class KitHeadHunter extends ProgressingKit quiverPayload.resetUltimate(Bukkit.getPlayer(player), true); } + + @Override + public boolean showUpgrades() + { + return true; + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitSlamShot.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitSlamShot.java index 6a609c55f..94adb1832 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitSlamShot.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/quiver/kits/KitSlamShot.java @@ -24,27 +24,10 @@ public class KitSlamShot extends ProgressingKit C.cYellow + "Right-Click" + C.cWhite + " with your " + C.cGreen + "Diamond Shovel" + C.cWhite + " to " + C.cGreen + "Ground Pound" }; - private static final Perk[][] PERKS = { - { - new PerkSeismicSlamOITQ(10000) - }, - { - new PerkSeismicSlamOITQ(9500) - }, - { - new PerkSeismicSlamOITQ(9000) - }, - { - new PerkSeismicSlamOITQ(8500) - }, - { - new PerkSeismicSlamOITQ(8000) - }, - { - new PerkSeismicSlamOITQ(7500) - }, + private static final Perk[] PERKS = { + new PerkSeismicSlamOITQ() }; - + private static final ItemStack IN_HAND = new ItemStack(Material.DIAMOND_SPADE); private static final ItemStack[] PLAYER_ITEMS = {