From 5aabd0097227232158d5e474c071b5f7221aec2e Mon Sep 17 00:00:00 2001 From: Cheese Date: Sun, 6 Dec 2015 14:55:28 +1100 Subject: [PATCH] set hub to christmas removed snowball pickup disabled arrows sticking into players from ALL projectiles --- .../src/mineplex/hub/HubManager.java | 79 +------------------ .../game/core/damage/DamageManager.java | 2 +- .../game/games/snowfight/SnowFight.java | 78 ++++++++---------- 3 files changed, 35 insertions(+), 124 deletions(-) diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java b/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java index 4ae6eea74..c86b5b1fc 100644 --- a/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java @@ -119,7 +119,7 @@ import org.bukkit.scoreboard.Scoreboard; public class HubManager extends MiniClientPlugin { // ☃❅ Snowman! - public HubType Type = HubType.Normal; + public HubType Type = HubType.Christmas; private BlockRestore _blockRestore; private CoreClientManager _clientManager; @@ -267,50 +267,6 @@ public class HubManager extends MiniClientPlugin return true; } - - @EventHandler - public void SnowballPickup(BlockDamageEvent event) - { - if (Type != HubType.Christmas) - return; - - if (event.getBlock().getType() != Material.SNOW) - return; - - Player player = event.getPlayer(); - - _gadgetManager.RemoveItem(player); - - player.getInventory().setItem(3, new ItemStack(Material.SNOW_BALL, 16)); - } - - @EventHandler - public void SnowballHit(CustomDamageEvent event) - { - if (Type != HubType.Christmas) - return; - - Projectile proj = event.GetProjectile(); - if (proj == null) return; - - if (!(proj instanceof Snowball)) - return; - - event.SetCancelled("Snowball Cancel"); - - if (BumpDisabled(event.GetDamageeEntity())) - return; - - if (BumpDisabled(event.GetDamagerEntity(true))) - return; - - UtilAction.velocity(event.GetDamageeEntity(), UtilAlg.getTrajectory2d(event.GetDamagerEntity(true), event.GetDamageeEntity()), - 0.4, false, 0, 0.2, 1, false); - - //No Portal - SetPortalDelay(event.GetDamageeEntity()); - } - @EventHandler public void redirectStopCommand(PlayerCommandPreprocessEvent event) { @@ -663,39 +619,6 @@ public class HubManager extends MiniClientPlugin if (_scoreboardTick != 0) return; -// int bestPig = 0; -// for (Player player : UtilServer.getPlayers()) -// { -// if (player.getVehicle() != null) -// continue; -// -// int count = 0; -// -// Entity ent = player; -// while (ent.getPassenger() != null) -// { -// ent = ent.getPassenger(); -// count++; -// } -// -// if (count > bestPig) -// { -// _pigStacker = player.getName(); -// bestPig = count; -// } -// } -// if (bestPig == 0) -// { -// _pigStacker = "0 - Nobody"; -// } -// else -// { -// _pigStacker = bestPig + " - " + _pigStacker; -// -// if (_pigStacker.length() > 16) -// _pigStacker = _pigStacker.substring(0, 16); -// } - for (Player player : UtilServer.getPlayers()) { //Dont Waste Time diff --git a/Plugins/Mineplex.Minecraft.Game.Core/src/mineplex/minecraft/game/core/damage/DamageManager.java b/Plugins/Mineplex.Minecraft.Game.Core/src/mineplex/minecraft/game/core/damage/DamageManager.java index d60c22a9a..af1525e2a 100644 --- a/Plugins/Mineplex.Minecraft.Game.Core/src/mineplex/minecraft/game/core/damage/DamageManager.java +++ b/Plugins/Mineplex.Minecraft.Game.Core/src/mineplex/minecraft/game/core/damage/DamageManager.java @@ -378,7 +378,7 @@ public class DamageManager extends MiniPlugin event.GetDamageeEntity().playEffect(EntityEffect.HURT); //Sticky Arrow - if (event.GetCause() == DamageCause.PROJECTILE) + if (event.GetCause() == DamageCause.PROJECTILE && event.GetProjectile() != null && event.GetProjectile() instanceof Arrow) ((CraftLivingEntity)event.GetDamageeEntity()).getHandle().o(((CraftLivingEntity)event.GetDamageeEntity()).getHandle().bv() + 1); //Knockback diff --git a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/snowfight/SnowFight.java b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/snowfight/SnowFight.java index bf1e6ce2f..492f82da9 100644 --- a/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/snowfight/SnowFight.java +++ b/Plugins/Nautilus.Game.Arcade/src/nautilus/game/arcade/game/games/snowfight/SnowFight.java @@ -13,15 +13,11 @@ 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.UtilSound; -import mineplex.core.common.util.UtilText; import mineplex.core.common.util.UtilTextMiddle; import mineplex.core.common.util.UtilTime; import mineplex.core.common.util.UtilWorld; import mineplex.core.common.util.UtilParticle.ParticleType; import mineplex.core.common.util.UtilParticle.ViewDist; -import mineplex.core.explosion.ExplosionEvent; -import mineplex.core.itemstack.ItemStackFactory; import mineplex.core.updater.UpdateType; import mineplex.core.updater.event.UpdateEvent; import mineplex.minecraft.game.core.damage.CustomDamageEvent; @@ -35,8 +31,6 @@ import nautilus.game.arcade.game.games.snowfight.kits.KitTactician; import nautilus.game.arcade.game.games.snowfight.kits.KitMedic; import nautilus.game.arcade.game.games.snowfight.kits.KitSportsman; import nautilus.game.arcade.kit.Kit; -import nautilus.game.arcade.kit.SmashKit; -import net.minecraft.server.v1_8_R3.EntityFireball; import org.bukkit.Bukkit; import org.bukkit.ChatColor; @@ -48,10 +42,7 @@ import org.bukkit.World; import org.bukkit.World.Environment; import org.bukkit.block.Block; import org.bukkit.block.BlockFace; -import org.bukkit.craftbukkit.v1_8_R3.entity.CraftFireball; -import org.bukkit.entity.Egg; import org.bukkit.entity.Entity; -import org.bukkit.entity.EntityType; import org.bukkit.entity.FallingBlock; import org.bukkit.entity.Fireball; import org.bukkit.entity.Player; @@ -59,31 +50,23 @@ import org.bukkit.entity.Projectile; import org.bukkit.entity.Snowball; import org.bukkit.event.EventHandler; import org.bukkit.event.EventPriority; -import org.bukkit.event.block.Action; import org.bukkit.event.block.BlockDamageEvent; import org.bukkit.event.block.BlockPlaceEvent; import org.bukkit.event.entity.EntityChangeBlockEvent; import org.bukkit.event.entity.EntityRegainHealthEvent; -import org.bukkit.event.entity.ProjectileHitEvent; import org.bukkit.event.entity.EntityDamageEvent.DamageCause; import org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason; -import org.bukkit.event.player.PlayerInteractEvent; import org.bukkit.inventory.ItemStack; import org.bukkit.metadata.FixedMetadataValue; -import org.bukkit.potion.Potion; -import org.bukkit.potion.PotionEffect; -import org.bukkit.potion.PotionEffectType; -import org.bukkit.potion.PotionType; import org.bukkit.scheduler.BukkitRunnable; import org.bukkit.util.Vector; -import com.sun.xml.internal.bind.v2.runtime.unmarshaller.XsiNilLoader.Array; public class SnowFight extends TeamGame { private HashMap _tiles; - private boolean _meteoroids; + private boolean _meteors; private boolean _peace; public SnowFight(ArcadeManager manager) @@ -99,8 +82,8 @@ public class SnowFight extends TeamGame new String[] { - "Just like... kill your enemies. with snow.", - "Be careful if you are on Ice your body will freeze" + "Defeat your foes with Snowballs", + "Last team alive wins!" }); this.HungerSet = 20; @@ -111,7 +94,7 @@ public class SnowFight extends TeamGame this.BlockPlace = true; this.BlockBreakAllow = new HashSet<>(Arrays.asList(Material.FENCE.getId())); this._tiles = new HashMap(); - this._meteoroids = false; + this._meteors = false; this._peace = false; } @@ -160,39 +143,42 @@ public class SnowFight extends TeamGame } @EventHandler - public void Meteor(UpdateEvent event) { - if(event.getType() != UpdateType.TWOSEC) + public void Meteor(UpdateEvent event) + { + if(event.getType() != UpdateType.FAST) return; - if(!IsLive()) + if (!IsLive()) return; - if(System.currentTimeMillis() <= getGameLiveTime() + (15 * 1000)) + if (System.currentTimeMillis() <= getGameLiveTime() + 10000) + { + UtilTextMiddle.display(C.cGreen + "Prepare", "Battle in " + UtilTime.MakeStr((getGameLiveTime() + 10000) - System.currentTimeMillis()), 0, 60, 20, UtilServer.getPlayers()); return; + } - if(!_peace) + if (!_peace) { for(Player player : GetPlayers(false)) - { player.playSound(player.getLocation(), Sound.ENDERDRAGON_GROWL, 1F, 1F); - UtilTextMiddle.display(C.cGold + C.Bold + "Peace Phase ended", "Kill your enemies", player); - } - this.Announce(C.cRed + C.Bold + "ALERT: " + ChatColor.RESET + C.Bold + "Peace Phase ended"); + + UtilTextMiddle.display(C.cRed + "FIGHT", "Throw your Snowballs!", 0, 60, 20, UtilServer.getPlayers()); + _peace = true; } if(System.currentTimeMillis() <= getGameLiveTime() + (195 * 1000)) return; - if(!_meteoroids) + if(!_meteors) { for(Player player : GetPlayers(false)) { player.playSound(player.getLocation(), Sound.ENDERDRAGON_GROWL, 1F, 1F); - UtilTextMiddle.display(C.cGold + C.Bold + "ICE METEOROIDS!!!", "Avoid the Ice Fields", player); + UtilTextMiddle.display(C.cAqua + C.Bold + "Ice Meteors", "Avoid the Ice Fields!", player); } - this.Announce(C.cRed + C.Bold + "ALERT: " + ChatColor.RESET + C.Bold + "METEOROIDS START FALLING!"); - _meteoroids = true; + + _meteors = true; } makeMeteor(); } @@ -345,12 +331,12 @@ public class SnowFight extends TeamGame // Lower if (height >= snowLevel) { - block.setTypeIdAndData(0, (byte) 0, true); + block.setTypeIdAndData(0, (byte) 0, false); SnowDecrease(block.getRelative(BlockFace.DOWN), height - snowLevel); } else { - block.setTypeIdAndData(78, (byte) (snowLevel - height - 1), true); + block.setTypeIdAndData(78, (byte) (snowLevel - height - 1), false); } } @@ -456,7 +442,7 @@ public class SnowFight extends TeamGame if (i++ % 6 == 0) { - fallingblock.getWorld().playSound(fallingblock.getLocation(), Sound.CAT_HISS, 1.3F, 0F); + fallingblock.getWorld().playSound(fallingblock.getLocation(), Sound.CAT_HISS, 0.7F, 0F); } } else @@ -498,10 +484,11 @@ public class SnowFight extends TeamGame explosion.setDropItems(false); explosion.setBlocksDamagedEqually(true); - UtilParticle.PlayParticle(ParticleType.LARGE_EXPLODE, projectile.getLocation(), 1.0F, 1.0F, 1.0F, 1, 3, ViewDist.MAX, UtilServer.getPlayers()); - for(Player player : UtilServer.getPlayers()) { + //Effect + UtilParticle.PlayParticle(ParticleType.LARGE_EXPLODE, projectile.getLocation(), 0.5f, 0.5f, 0.5f, 0, 5, ViewDist.MAX, UtilServer.getPlayers()); + for(Player player : UtilServer.getPlayers()) player.playSound(projectile.getLocation(), Sound.EXPLODE, 1, 1); - } + boolean fall = true; @@ -510,7 +497,7 @@ public class SnowFight extends TeamGame if(player instanceof Player) { Player damagee = (Player) player; - Bukkit.getPluginManager().callEvent(new CustomDamageEvent(damagee, null, null, null, DamageCause.CUSTOM, damage, false, true, true, "Ice Meteoroid", "Ice Meteoroid", false)); + Bukkit.getPluginManager().callEvent(new CustomDamageEvent(damagee, null, null, null, DamageCause.CUSTOM, damage, false, true, true, "Ice Meteor", "Ice Meteor", false)); } } @@ -519,6 +506,7 @@ public class SnowFight extends TeamGame if(block.getType() != Material.AIR) { block.setType(Material.ICE); + if(block.getRelative(BlockFace.DOWN).getType() == Material.AIR) { // to reduce lag @@ -611,7 +599,7 @@ public class SnowFight extends TeamGame for (GameTeam team : this.GetTeamList()) { Scoreboard.Write(team.GetColor() + C.Bold + team.GetName()); - Scoreboard.Write(team.GetColor() + "Alive " + team.GetPlayers(true).size()); + Scoreboard.Write(team.GetColor() + "" + team.GetPlayers(true).size() + " Alive"); Scoreboard.WriteBlank(); } } @@ -620,16 +608,16 @@ public class SnowFight extends TeamGame if (time > 0) { - Scoreboard.Write(C.cYellow + C.Bold + "Meteoroids:"); + Scoreboard.Write(C.cYellow + C.Bold + "Meteors"); if(IsLive()) Scoreboard.Write(UtilTime.MakeStr(time, 0)); } else { - Scoreboard.Write(C.cGold + C.Bold + "Meteoroids!"); + Scoreboard.Write(C.cGold + C.Bold + "Meteors!"); } Scoreboard.Draw(); } - + }