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 2e6e3867e..0220ae5b8 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 @@ -44,7 +44,7 @@ public class HideSeek extends TeamGame private GameTeam _hiders; private GameTeam _seekers; - private long _hideTime = 15000; + private long _hideTime = 20000; private long _gameTime = 300000; private boolean _started = false; @@ -92,6 +92,8 @@ public class HideSeek extends TeamGame _allowedBlocks.add(Material.ANVIL); _allowedBlocks.add(Material.HAY_BLOCK); _allowedBlocks.add(Material.CAKE); + + Manager.GetExplosion().SetRegenerate(true); } public Material GetItemEquivilent(Material mat) @@ -164,7 +166,7 @@ public class HideSeek extends TeamGame { DisguiseBlock disguise = new DisguiseBlock(player, type.getId(), 0); _disguises.put(player, disguise); - //Manager.GetDisguise().disguise(disguise); + Manager.GetDisguise().disguise(disguise); //Inform UtilPlayer.message(player, F.main("Game", C.cWhite + "You are now a " + F.elem(ItemStackFactory.Instance.GetName(type, (byte)0, false) + " Block") + "!")); @@ -388,6 +390,12 @@ public class HideSeek extends TeamGame AddGems(player, 10, "Participation", false); } } + + @Override + public double GetKillsGems(Player killer, Player killed, boolean assist) + { + return 4; + } @EventHandler public void Timer(UpdateEvent event) @@ -401,29 +409,29 @@ public class HideSeek extends TeamGame //Hide Time if (!_started) { - long timeLeft = _gameTime - (System.currentTimeMillis() - GetStateTime()); + long timeLeft = _hideTime - (System.currentTimeMillis() - GetStateTime()); if (timeLeft > 0) - { + { GetObjectiveSide().setDisplayName( - ChatColor.WHITE + "§lSeek Time: " + C.cGreen + "§l" + ChatColor.AQUA + "§lHide Time: " + C.cGreen + "§l" + UtilTime.MakeStr(timeLeft)); } else { _started = true; - Announce(C.Bold + "The " + F.elem(C.cRed + C.Bold + "Seekers") + " have been released!"); + Announce(C.Bold + "The " + F.elem(C.cRed + C.Bold + "Seekers") + ChatColor.RESET + C.Bold + " have been released!"); } } //Seek Time else { - long timeLeft = _gameTime - (System.currentTimeMillis() - GetStateTime()); + long timeLeft = _gameTime - (System.currentTimeMillis() - GetStateTime() - _hideTime); if (timeLeft > 0) { GetObjectiveSide().setDisplayName( - ChatColor.WHITE + "§lSeek Time: " + C.cGreen + "§l" + ChatColor.RED + "§lSeek Time: " + C.cGreen + "§l" + UtilTime.MakeStr(timeLeft)); } else diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerArcher.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerArcher.java index 81c9adb9a..d17900f8b 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerArcher.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerArcher.java @@ -5,11 +5,14 @@ import org.bukkit.entity.EntityType; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; import org.bukkit.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.entity.EntityDamageEvent.DamageCause; import org.bukkit.inventory.ItemStack; import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.updater.UpdateType; import mineplex.core.updater.event.UpdateEvent; +import mineplex.minecraft.game.core.damage.CustomDamageEvent; import nautilus.game.arcade.ArcadeManager; import nautilus.game.arcade.kit.Kit; import nautilus.game.arcade.kit.KitAvailability; @@ -35,34 +38,12 @@ public class KitSeekerArcher extends Kit new ItemStack(Material.BOW)); } - - @EventHandler - public void FireItemResist(UpdateEvent event) - { - if (event.getType() != UpdateType.FAST) - return; - if (Manager.GetGame() == null) - return; - - for (Player player : Manager.GetGame().GetPlayers(true)) - { - if (!HasKit(player)) - continue; - - Manager.GetCondition().Factory().FireItemImmunity(GetName(), player, player, 1.9, false); - } - } - @Override public void GiveItems(Player player) { - player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.STONE_SWORD)); + player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.IRON_SWORD)); player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.BOW)); - player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.ARROW, 32)); - player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.MUSHROOM_SOUP)); - player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.MUSHROOM_SOUP)); - player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.MUSHROOM_SOUP)); player.getInventory().setHelmet(ItemStackFactory.Instance.CreateStack(Material.CHAINMAIL_HELMET)); player.getInventory().setChestplate(ItemStackFactory.Instance.CreateStack(Material.CHAINMAIL_CHESTPLATE)); @@ -78,4 +59,20 @@ public class KitSeekerArcher extends Kit ent.getEquipment().setLeggings(new ItemStack(Material.CHAINMAIL_LEGGINGS)); ent.getEquipment().setBoots(new ItemStack(Material.CHAINMAIL_BOOTS)); } + + @EventHandler(priority = EventPriority.LOW) + public void Damage(CustomDamageEvent event) + { + if (event.IsCancelled()) + return; + + if (event.GetCause() != DamageCause.ENTITY_EXPLOSION) + return; + + Player damagee = event.GetDamageePlayer(); + if (damagee == null) return; + + if (HasKit(damagee)) + event.SetCancelled("TNT Resistant"); + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerRadar.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerRadar.java index 70f17b4ce..7ce948b0c 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerRadar.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerRadar.java @@ -2,10 +2,15 @@ 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.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.entity.EntityDamageEvent.DamageCause; import org.bukkit.inventory.ItemStack; import mineplex.core.itemstack.ItemStackFactory; +import mineplex.minecraft.game.core.damage.CustomDamageEvent; import nautilus.game.arcade.ArcadeManager; import nautilus.game.arcade.kit.Kit; import nautilus.game.arcade.kit.KitAvailability; @@ -43,5 +48,28 @@ public class KitSeekerRadar extends Kit player.getInventory().setBoots(ItemStackFactory.Instance.CreateStack(Material.DIAMOND_BOOTS)); } + @Override + public void SpawnCustom(LivingEntity ent) + { + ent.getEquipment().setHelmet(new ItemStack(Material.DIAMOND_HELMET)); + ent.getEquipment().setChestplate(new ItemStack(Material.DIAMOND_CHESTPLATE)); + ent.getEquipment().setLeggings(new ItemStack(Material.DIAMOND_LEGGINGS)); + ent.getEquipment().setBoots(new ItemStack(Material.DIAMOND_BOOTS)); + } + @EventHandler(priority = EventPriority.LOW) + public void Damage(CustomDamageEvent event) + { + if (event.IsCancelled()) + return; + + if (event.GetCause() != DamageCause.ENTITY_EXPLOSION) + return; + + Player damagee = event.GetDamageePlayer(); + if (damagee == null) return; + + if (HasKit(damagee)) + event.SetCancelled("TNT Resistant"); + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerTNT.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerTNT.java index f9ae13aad..67ee981ac 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerTNT.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/hideseek/kits/KitSeekerTNT.java @@ -2,10 +2,15 @@ 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.event.EventHandler; +import org.bukkit.event.EventPriority; +import org.bukkit.event.entity.EntityDamageEvent.DamageCause; import org.bukkit.inventory.ItemStack; import mineplex.core.itemstack.ItemStackFactory; +import mineplex.minecraft.game.core.damage.CustomDamageEvent; import nautilus.game.arcade.ArcadeManager; import nautilus.game.arcade.kit.Kit; import nautilus.game.arcade.kit.KitAvailability; @@ -41,4 +46,29 @@ public class KitSeekerTNT extends Kit player.getInventory().setLeggings(ItemStackFactory.Instance.CreateStack(Material.GOLD_LEGGINGS)); player.getInventory().setBoots(ItemStackFactory.Instance.CreateStack(Material.GOLD_BOOTS)); } + + @Override + public void SpawnCustom(LivingEntity ent) + { + ent.getEquipment().setHelmet(new ItemStack(Material.GOLD_HELMET)); + ent.getEquipment().setChestplate(new ItemStack(Material.GOLD_CHESTPLATE)); + ent.getEquipment().setLeggings(new ItemStack(Material.GOLD_LEGGINGS)); + ent.getEquipment().setBoots(new ItemStack(Material.GOLD_BOOTS)); + } + + @EventHandler(priority = EventPriority.LOW) + public void Damage(CustomDamageEvent event) + { + if (event.IsCancelled()) + return; + + if (event.GetCause() != DamageCause.ENTITY_EXPLOSION) + return; + + Player damagee = event.GetDamageePlayer(); + if (damagee == null) return; + + if (HasKit(damagee)) + event.SetCancelled("TNT Resistant"); + } } diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/perks/PerkRadar.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/perks/PerkRadar.java index 5eb21939c..3448c4a56 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/perks/PerkRadar.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/kit/perks/PerkRadar.java @@ -62,7 +62,7 @@ public class PerkRadar extends Perk closest = dist; } - double scale = Math.max(0, Math.min(1, (closest - 2) / 8d)); + double scale = Math.max(0, Math.min(1, (closest - 3) / 10d)); //Bi-Directional Cooldown if (_lastTick.containsKey(player) && !UtilTime.elapsed(_lastTick.get(player), (long)(2000 * scale)) && !Recharge.Instance.usable(player, "Radar")) diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameCreationManager.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameCreationManager.java index 652ea2a0a..e213ded56 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameCreationManager.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/managers/GameCreationManager.java @@ -143,6 +143,7 @@ public class GameCreationManager implements Listener Manager.GetDamage().DisableDamageChanges = false; Manager.GetCreature().SetDisableCustomDrops(false); Manager.GetDamage().SetEnabled(true); + Manager.GetExplosion().SetRegenerate(false); HashMap pastTeams = null; diff --git a/Plugins/Nautilus.Game.CaptureThePig/.project b/Plugins/Nautilus.Game.CaptureThePig/.project new file mode 100644 index 000000000..5342dbc0b --- /dev/null +++ b/Plugins/Nautilus.Game.CaptureThePig/.project @@ -0,0 +1,27 @@ + + + Nautilus.Game.CaptureThePig + + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.ui.externaltools.ExternalToolBuilder + auto,full,incremental, + + + LaunchConfigHandle + <project>/.externalToolBuilders/CaptureThePig.launch + + + + + + org.eclipse.jdt.core.javanature + + diff --git a/Plugins/Nautilus.Game.Deathmatch/.project b/Plugins/Nautilus.Game.Deathmatch/.project new file mode 100644 index 000000000..eaef7055f --- /dev/null +++ b/Plugins/Nautilus.Game.Deathmatch/.project @@ -0,0 +1,17 @@ + + + Nautilus.Game.Deathmatch + + + + + + org.eclipse.jdt.core.javabuilder + + + + + + org.eclipse.jdt.core.javanature + +