From 2e0965a0640e50e7b00c27ccacabad4b3afc3f65 Mon Sep 17 00:00:00 2001 From: TadahTech Date: Thu, 16 Jun 2016 19:35:36 -0500 Subject: [PATCH] Fix Infestor kit Fix rare occurrence of players getting a GUI they shouldn't (reported) --- .../arcade/game/games/hideseek/HideSeek.java | 108 ++++++------------ .../game/games/hideseek/kits/KitHider.java | 6 - .../games/hideseek/kits/KitHiderQuick.java | 9 +- .../games/hideseek/kits/KitHiderShocker.java | 7 ++ .../games/hideseek/kits/KitHiderSwapper.java | 9 +- .../hideseek/kits/KitHiderTeleporter.java | 67 ----------- .../game/arcade/kit/ProgressingKit.java | 14 --- 7 files changed, 56 insertions(+), 164 deletions(-) delete mode 100644 Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderTeleporter.java diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/HideSeek.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/HideSeek.java index e283ad0fa..55535e846 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/HideSeek.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/HideSeek.java @@ -1,74 +1,9 @@ package nautilus.game.arcade.game.games.hideseek; -import java.util.ArrayList; -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; -import java.util.Map.Entry; - -import org.bukkit.Bukkit; -import org.bukkit.ChatColor; -import org.bukkit.Color; -import org.bukkit.FireworkEffect; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.FireworkEffect.Type; -import org.bukkit.block.Block; -import org.bukkit.block.BlockFace; -import org.bukkit.craftbukkit.v1_8_R3.entity.CraftCreature; -import org.bukkit.enchantments.Enchantment; -import org.bukkit.entity.Arrow; -import org.bukkit.entity.Chicken; -import org.bukkit.entity.Cow; -import org.bukkit.entity.Creature; -import org.bukkit.entity.Entity; -import org.bukkit.entity.EntityType; -import org.bukkit.entity.FallingBlock; -import org.bukkit.entity.FallingSand; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Pig; -import org.bukkit.entity.Player; -import org.bukkit.entity.Projectile; -import org.bukkit.entity.Sheep; -import org.bukkit.entity.Slime; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.HandlerList; -import org.bukkit.event.block.BlockDamageEvent; -import org.bukkit.event.entity.EntityChangeBlockEvent; -import org.bukkit.event.entity.EntityDamageByEntityEvent; -import org.bukkit.event.entity.EntityDamageEvent; -import org.bukkit.event.entity.EntityShootBowEvent; -import org.bukkit.event.entity.ItemSpawnEvent; -import org.bukkit.event.entity.PlayerDeathEvent; -import org.bukkit.event.entity.EntityDamageEvent.DamageCause; -import org.bukkit.event.player.PlayerEvent; -import org.bukkit.event.player.PlayerInteractEntityEvent; -import org.bukkit.event.player.PlayerInteractEvent; -import org.bukkit.event.player.PlayerQuitEvent; -import org.bukkit.event.vehicle.VehicleExitEvent; -import org.bukkit.inventory.ItemStack; -import org.bukkit.inventory.meta.FireworkMeta; -import org.bukkit.util.Vector; - -import mineplex.core.common.util.C; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilBlock; -import mineplex.core.common.util.UtilEvent; +import mineplex.core.common.util.*; import mineplex.core.common.util.UtilEvent.ActionType; -import mineplex.core.common.util.UtilInv; import mineplex.core.common.util.UtilParticle.ParticleType; import mineplex.core.common.util.UtilParticle.ViewDist; -import mineplex.core.common.util.UtilAlg; -import mineplex.core.common.util.UtilEnt; -import mineplex.core.common.util.UtilFirework; -import mineplex.core.common.util.UtilGear; -import mineplex.core.common.util.UtilMath; -import mineplex.core.common.util.UtilParticle; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.UtilServer; -import mineplex.core.common.util.UtilTime; import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.packethandler.IPacketHandler; import mineplex.core.packethandler.PacketInfo; @@ -83,8 +18,8 @@ import nautilus.game.arcade.GameType; import nautilus.game.arcade.events.GameStateChangeEvent; import nautilus.game.arcade.events.PlayerPrepareTeleportEvent; import nautilus.game.arcade.game.GameTeam; -import nautilus.game.arcade.game.TeamGame; import nautilus.game.arcade.game.GameTeam.PlayerState; +import nautilus.game.arcade.game.TeamGame; import nautilus.game.arcade.game.games.hideseek.forms.BlockForm; import nautilus.game.arcade.game.games.hideseek.forms.CreatureForm; import nautilus.game.arcade.game.games.hideseek.forms.Form; @@ -96,13 +31,36 @@ import nautilus.game.arcade.stats.BadHiderStatTracker; import nautilus.game.arcade.stats.HunterKillerStatTracker; import nautilus.game.arcade.stats.HunterOfTheYearStatTracker; import nautilus.game.arcade.stats.MeowStatTracker; -import net.minecraft.server.v1_8_R3.EntityCreature; -import net.minecraft.server.v1_8_R3.Navigation; -import net.minecraft.server.v1_8_R3.NavigationAbstract; -import net.minecraft.server.v1_8_R3.PacketPlayInUseEntity; -import net.minecraft.server.v1_8_R3.PacketPlayOutEntityDestroy; -import net.minecraft.server.v1_8_R3.PacketPlayOutSpawnEntity; -import net.minecraft.server.v1_8_R3.PacketPlayOutSpawnEntityLiving; +import net.minecraft.server.v1_8_R3.*; +import org.bukkit.*; +import org.bukkit.FireworkEffect.Type; +import org.bukkit.Material; +import org.bukkit.block.Block; +import org.bukkit.block.BlockFace; +import org.bukkit.craftbukkit.v1_8_R3.entity.CraftCreature; +import org.bukkit.enchantments.Enchantment; +import org.bukkit.entity.*; +import org.bukkit.entity.Entity; +import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.HandlerList; +import org.bukkit.event.block.BlockDamageEvent; +import org.bukkit.event.entity.*; +import org.bukkit.event.entity.EntityDamageEvent.DamageCause; +import org.bukkit.event.player.PlayerEvent; +import org.bukkit.event.player.PlayerInteractEntityEvent; +import org.bukkit.event.player.PlayerInteractEvent; +import org.bukkit.event.player.PlayerQuitEvent; +import org.bukkit.event.vehicle.VehicleExitEvent; +import org.bukkit.inventory.ItemStack; +import org.bukkit.inventory.meta.FireworkMeta; +import org.bukkit.util.Vector; + +import java.util.ArrayList; +import java.util.HashMap; +import java.util.HashSet; +import java.util.Iterator; +import java.util.Map.Entry; @SuppressWarnings("deprecation") public class HideSeek extends TeamGame @@ -1613,7 +1571,7 @@ public class HideSeek extends TeamGame // Invisible for (Player player : GetPlayers(true)) { - if (!(GetKit(player) instanceof KitHiderTeleporter)) + if (!(GetKit(player) instanceof KitHiderInfestor)) continue; if (_infested.containsKey(player) || player.getVehicle() != null) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHider.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHider.java index ba07f5c6c..68392f56b 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHider.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHider.java @@ -8,7 +8,6 @@ import nautilus.game.arcade.kit.Perk; import nautilus.game.arcade.kit.ProgressingKit; import org.bukkit.Material; import org.bukkit.entity.EntityType; -import org.bukkit.entity.Player; import org.bukkit.inventory.ItemStack; public abstract class KitHider extends ProgressingKit @@ -28,9 +27,4 @@ public abstract class KitHider extends ProgressingKit super(manager, name, "hideseek" + name.toLowerCase().replace(" ", ""), kitAvailability, cost, kitDesc, kitPerks, entityType, itemInHand); } - @Override - public void GiveItems(Player player) - { - player.getInventory().setItem(3, PLAYER_ITEM); - } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderQuick.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderQuick.java index 6ad3185c5..274d510a5 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderQuick.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderQuick.java @@ -6,6 +6,7 @@ import nautilus.game.arcade.kit.Perk; import org.bukkit.Material; import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; import org.bukkit.entity.Slime; import org.bukkit.inventory.ItemStack; @@ -26,7 +27,13 @@ public class KitHiderQuick extends KitHider { super(manager, "Instant Hider", KitAvailability.Gem, DESCRIPTION, PERKS, EntityType.SLIME, IN_HAND); } - + + @Override + public void GiveItems(Player player) + { + player.getInventory().setItem(3, PLAYER_ITEM); + } + @Override public void SpawnCustom(LivingEntity ent) { diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderShocker.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderShocker.java index 1d820bc7e..94849e48c 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderShocker.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderShocker.java @@ -7,6 +7,7 @@ import nautilus.game.arcade.kit.perks.PerkShockingStrike; import org.bukkit.Material; import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; import org.bukkit.entity.Slime; import org.bukkit.inventory.ItemStack; @@ -27,6 +28,12 @@ public class KitHiderShocker extends KitHider { super(manager, "Shocking Hider", KitAvailability.Gem, 5000, DESCRIPTION, PERKS, EntityType.SLIME, IN_HAND); } + + @Override + public void GiveItems(Player player) + { + player.getInventory().setItem(3, PLAYER_ITEM); + } @Override public void SpawnCustom(LivingEntity ent) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderSwapper.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderSwapper.java index d720ada47..157354c17 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderSwapper.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderSwapper.java @@ -6,6 +6,7 @@ import nautilus.game.arcade.kit.Perk; import org.bukkit.Material; import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; +import org.bukkit.entity.Player; import org.bukkit.entity.Slime; import org.bukkit.inventory.ItemStack; @@ -25,7 +26,13 @@ public class KitHiderSwapper extends KitHider { super(manager, "Swapper Hider", KitAvailability.Free, DESCRIPTION, PERKS, EntityType.SLIME, IN_HAND); } - + + @Override + public void GiveItems(Player player) + { + player.getInventory().setItem(3, PLAYER_ITEM); + } + @Override public void SpawnCustom(LivingEntity ent) { diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderTeleporter.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderTeleporter.java deleted file mode 100644 index 21ed7eb6e..000000000 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitHiderTeleporter.java +++ /dev/null @@ -1,67 +0,0 @@ -package nautilus.game.arcade.game.games.hideseek.kits; - -import org.bukkit.Material; -import org.bukkit.entity.EntityType; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; -import org.bukkit.entity.Slime; -import org.bukkit.inventory.ItemStack; - -import mineplex.core.achievement.Achievement; -import mineplex.core.common.util.C; -import mineplex.core.common.util.UtilServer; -import mineplex.core.disguise.disguises.DisguiseSlime; -import mineplex.core.itemstack.ItemStackFactory; -import nautilus.game.arcade.ArcadeManager; -import nautilus.game.arcade.kit.Kit; -import nautilus.game.arcade.kit.KitAvailability; -import nautilus.game.arcade.kit.Perk; - -public class KitHiderTeleporter extends Kit -{ - public KitHiderTeleporter(ArcadeManager manager) - { - super(manager, "Infestor Hider", KitAvailability.Achievement, - - new String[] - { - "Can instantly infest a target block.", - "This is the only way you can hide." - - }, - - new Perk[] - { - - }, - EntityType.SLIME, - new ItemStack(Material.SLIME_BALL)); - - this.setAchievementRequirements(new Achievement[] - { - Achievement.BLOCK_HUNT_BAD_HIDER, - Achievement.BLOCK_HUNT_HUNTER_KILLER, - Achievement.BLOCK_HUNT_HUNTER_OF_THE_YEAR, - Achievement.BLOCK_HUNT_MEOW, - Achievement.BLOCK_HUNT_WINS, - }); - } - - @Override - public void GiveItems(Player player) - { - //Swap - player.getInventory().setItem(3, ItemStackFactory.Instance.CreateStack(Material.MAGMA_CREAM, (byte)0, 1, C.cYellow + C.Bold + "Click Block" + C.cWhite + C.Bold + " - " + C.cGreen + C.Bold + "Infest Block/Animal")); - - DisguiseSlime slime = new DisguiseSlime(player); - slime.SetSize(2); - slime.setName(C.cAqua + player.getName()); - Manager.GetDisguise().disguise(slime); - } - - @Override - public void SpawnCustom(LivingEntity ent) - { - ((Slime)ent).setSize(2); - } -} diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/ProgressingKit.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/ProgressingKit.java index 910464f8b..e5fae0623 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/ProgressingKit.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/ProgressingKit.java @@ -170,15 +170,6 @@ public abstract class ProgressingKit extends Kit implements ProgressiveKit @Override public void onSelected(UUID player) { - if(!canEquipKit(Bukkit.getPlayer(player))) - { - return; - } - if(Manager.GetGame().GetType() == GameType.Evolution) - { - Evolution evolution = (Evolution) Manager.GetGame(); - evolution.select(player, this); - } _dataManager.get(player).setCurrentKit(getInternalName()); Manager.GetGame().SetKit(Bukkit.getPlayer(player), this, true); Manager.getProgressionKitManager().displayParticles(this, player); @@ -187,11 +178,6 @@ public abstract class ProgressingKit extends Kit implements ProgressiveKit @Override public void onSetDefault(UUID player) { - if(!canEquipKit(Bukkit.getPlayer(player))) - { - return; - } - setDefault(!isDefault(player), player); Player bukkitPlayer = Bukkit.getPlayer(player);