BH Gem Fixes

This commit is contained in:
Chiss 2013-11-17 12:30:14 +11:00
parent 85a3edc75e
commit 0aae7d24ed
2 changed files with 70 additions and 27 deletions

View File

@ -20,7 +20,6 @@ import nautilus.game.arcade.ArcadeManager;
import nautilus.game.arcade.GameType; import nautilus.game.arcade.GameType;
import nautilus.game.arcade.events.GameStateChangeEvent; import nautilus.game.arcade.events.GameStateChangeEvent;
import nautilus.game.arcade.events.PlayerStateChangeEvent; import nautilus.game.arcade.events.PlayerStateChangeEvent;
import nautilus.game.arcade.game.Game.GameState;
import nautilus.game.arcade.game.GameTeam.PlayerState; import nautilus.game.arcade.game.GameTeam.PlayerState;
import nautilus.game.arcade.kit.Kit; import nautilus.game.arcade.kit.Kit;
import nautilus.game.arcade.kit.KitAvailability; import nautilus.game.arcade.kit.KitAvailability;

View File

@ -252,7 +252,7 @@ public class HideSeek extends TeamGame
//Axe //Axe
player.getInventory().setItem(0, ItemStackFactory.Instance.CreateStack(Material.WOOD_AXE, (byte)1, 1, C.cGreen + "Speed Axe")); player.getInventory().setItem(0, ItemStackFactory.Instance.CreateStack(Material.WOOD_AXE, (byte)1, 1, C.cGreen + "Speed Axe"));
//Bow //Bow
ItemStack bow = ItemStackFactory.Instance.CreateStack(Material.BOW, (byte)0, 1, C.cYellow + C.Bold + "Shoot Hunters" + C.cWhite + C.Bold + " - " + C.cGreen + C.Bold + "Upgrades Axe"); ItemStack bow = ItemStackFactory.Instance.CreateStack(Material.BOW, (byte)0, 1, C.cYellow + C.Bold + "Shoot Hunters" + C.cWhite + C.Bold + " - " + C.cGreen + C.Bold + "Upgrades Axe");
bow.addEnchantment(Enchantment.ARROW_INFINITE, 1); bow.addEnchantment(Enchantment.ARROW_INFINITE, 1);
@ -266,7 +266,7 @@ public class HideSeek extends TeamGame
ItemStack firework = ItemStackFactory.Instance.CreateStack(Material.FIREWORK, (byte)0, 5, C.cYellow + C.Bold + "Firework" + C.cWhite + C.Bold + " - " + C.cGreen + C.Bold + "+2 Gems"); ItemStack firework = ItemStackFactory.Instance.CreateStack(Material.FIREWORK, (byte)0, 5, C.cYellow + C.Bold + "Firework" + C.cWhite + C.Bold + " - " + C.cGreen + C.Bold + "+2 Gems");
FireworkMeta metaData = (FireworkMeta) firework.getItemMeta(); FireworkMeta metaData = (FireworkMeta) firework.getItemMeta();
metaData.setPower(1); metaData.setPower(1);
metaData.addEffect(FireworkEffect.builder().flicker(true).withColor(Color.AQUA).with(Type.BALL).trail(true).build()); metaData.addEffect(FireworkEffect.builder().flicker(true).withColor(Color.AQUA).with(Type.BALL_LARGE).trail(true).build());
firework.setItemMeta(metaData); firework.setItemMeta(metaData);
player.getInventory().setItem(5, firework); player.getInventory().setItem(5, firework);
@ -347,7 +347,7 @@ public class HideSeek extends TeamGame
//Set New //Set New
_forms.put(player, new CreatureForm(this, player, event.getRightClicked().getType())); _forms.put(player, new CreatureForm(this, player, event.getRightClicked().getType()));
} }
@EventHandler @EventHandler
public void ChangeDisguise(CustomDamageEvent event) public void ChangeDisguise(CustomDamageEvent event)
{ {
@ -472,10 +472,10 @@ public class HideSeek extends TeamGame
LivingEntity damagee = (LivingEntity)event.getEntity().getVehicle(); LivingEntity damagee = (LivingEntity)event.getEntity().getVehicle();
EntityDamageByEntityEvent eventEE = (EntityDamageByEntityEvent)event; EntityDamageByEntityEvent eventEE = (EntityDamageByEntityEvent)event;
LivingEntity damager = null; LivingEntity damager = null;
Projectile proj = null; Projectile proj = null;
if (eventEE.getDamager() instanceof Projectile) if (eventEE.getDamager() instanceof Projectile)
{ {
proj = (Projectile)eventEE.getDamager(); proj = (Projectile)eventEE.getDamager();
@ -567,20 +567,20 @@ public class HideSeek extends TeamGame
{ {
if (!(event.getEntity() instanceof Player)) if (!(event.getEntity() instanceof Player))
return; return;
Player shooter = (Player)event.getEntity(); Player shooter = (Player)event.getEntity();
if (!_hiders.HasPlayer(shooter)) if (!_hiders.HasPlayer(shooter))
return; return;
Arrow arrow = shooter.getWorld().spawnArrow( Arrow arrow = shooter.getWorld().spawnArrow(
shooter.getEyeLocation().add(shooter.getLocation().getDirection().multiply(1.5)), shooter.getEyeLocation().add(shooter.getLocation().getDirection().multiply(1.5)),
shooter.getLocation().getDirection(), (float) event.getProjectile().getVelocity().length(), 0f); shooter.getLocation().getDirection(), (float) event.getProjectile().getVelocity().length(), 0f);
arrow.setShooter(shooter); arrow.setShooter(shooter);
event.setCancelled(true); event.setCancelled(true);
} }
@EventHandler @EventHandler
public void ArrowHit(CustomDamageEvent event) public void ArrowHit(CustomDamageEvent event)
{ {
@ -589,10 +589,10 @@ public class HideSeek extends TeamGame
if (event.GetProjectile() == null) if (event.GetProjectile() == null)
return; return;
Player damagee = event.GetDamageePlayer(); Player damagee = event.GetDamageePlayer();
if (damagee == null) return; if (damagee == null) return;
if (!_seekers.HasPlayer(damagee)) if (!_seekers.HasPlayer(damagee))
return; return;
@ -670,7 +670,7 @@ public class HideSeek extends TeamGame
if (!player.getItemInHand().getType().toString().contains("_AXE")) if (!player.getItemInHand().getType().toString().contains("_AXE"))
return; return;
if (!_hiders.HasPlayer(player)) if (!_hiders.HasPlayer(player))
return; return;
@ -750,7 +750,7 @@ public class HideSeek extends TeamGame
{ {
Player player = event.getPlayer(); Player player = event.getPlayer();
if (!UtilEvent.isAction(event, ActionType.R)) if (!UtilEvent.isAction(event, ActionType.R_BLOCK))
return; return;
if (!UtilGear.isMat(player.getItemInHand(), Material.FIREWORK)) if (!UtilGear.isMat(player.getItemInHand(), Material.FIREWORK))
@ -762,9 +762,9 @@ public class HideSeek extends TeamGame
return; return;
} }
this.AddGems(player, 4, "Fireworks", true); this.AddGems(player, 3, "Fireworks", true);
} }
@EventHandler @EventHandler
public void HiderTimeGems(UpdateEvent event) public void HiderTimeGems(UpdateEvent event)
{ {
@ -773,10 +773,10 @@ public class HideSeek extends TeamGame
if (event.getType() != UpdateType.SEC) if (event.getType() != UpdateType.SEC)
return; return;
for (Player player : _hiders.GetPlayers(true)) for (Player player : _hiders.GetPlayers(true))
{ {
this.AddGems(player, 5d/60d, "Seconds Alive", true); this.AddGems(player, 0.05, "Seconds Alive", true);
} }
} }
@ -798,6 +798,39 @@ public class HideSeek extends TeamGame
} }
} }
@EventHandler
public void WaterDamage(UpdateEvent event)
{
if (!IsLive())
return;
if (event.getType() != UpdateType.FAST)
return;
}
@EventHandler
public void WorldWaterDamage(UpdateEvent event)
{
if (!IsLive())
return;
if (event.getType() != UpdateType.SEC)
return;
for (Player player : _hiders.GetPlayers(true))
if (player.getLocation().getBlock().getTypeId() == 8 || player.getLocation().getBlock().getTypeId() == 9)
{
//Damage Event
Manager.GetDamage().NewDamageEvent(player, null, null,
DamageCause.DROWNING, 1, false, false, false,
"Water", "Water Damage");
player.getWorld().playSound(player.getLocation(),
Sound.SPLASH, 0.8f,
1f + (float) Math.random() / 2);
}
}
@EventHandler @EventHandler
public void PlayerDeath(PlayerQuitEvent event) public void PlayerDeath(PlayerQuitEvent event)
{ {
@ -848,7 +881,7 @@ public class HideSeek extends TeamGame
} }
UtilPlayer.message(player, C.cRed + C.Bold + "You are now a Hunter!"); UtilPlayer.message(player, C.cRed + C.Bold + "You are now a Hunter!");
player.eject(); player.eject();
player.leaveVehicle(); player.leaveVehicle();
player.teleport(_seekers.GetSpawn()); player.teleport(_seekers.GetSpawn());
@ -880,7 +913,18 @@ public class HideSeek extends TeamGame
@Override @Override
public double GetKillsGems(Player killer, Player killed, boolean assist) public double GetKillsGems(Player killer, Player killed, boolean assist)
{ {
return 4; if (_hiders.HasPlayer(killed))
{
if (!assist)
return 4;
else
return 1;
}
if (!assist)
return 1;
return 0;
} }
@EventHandler @EventHandler
@ -891,8 +935,8 @@ public class HideSeek extends TeamGame
Announce(C.cAqua + C.Bold + "Hiders have 20 Seconds to hide!"); Announce(C.cAqua + C.Bold + "Hiders have 20 Seconds to hide!");
} }
@EventHandler @EventHandler
public void Timer(UpdateEvent event) public void Timer(UpdateEvent event)
@ -957,13 +1001,13 @@ public class HideSeek extends TeamGame
} }
} }
} }
@Override @Override
public GameTeam ChooseTeam(Player player) public GameTeam ChooseTeam(Player player)
{ {
if (CanJoinTeam(_seekers)) if (CanJoinTeam(_seekers))
return _seekers; return _seekers;
return _hiders; return _hiders;
} }
@ -984,10 +1028,10 @@ public class HideSeek extends TeamGame
for (Location loc : _seekers.GetSpawns()) for (Location loc : _seekers.GetSpawns())
if (UtilMath.offset(loc, location) < 24) if (UtilMath.offset(loc, location) < 24)
return false; return false;
return true; return true;
} }
@Override @Override
public DeathMessageType GetDeathMessageType() public DeathMessageType GetDeathMessageType()
{ {