Work. Deemed unsuitable due to an issue with the paintballs flying wide.

This commit is contained in:
Mysticate 2015-10-28 21:42:41 -04:00
parent d0e49280a4
commit a707006558
7 changed files with 233 additions and 141 deletions

View File

@ -7,6 +7,10 @@ import java.util.Iterator;
import mineplex.core.common.util.F;
import mineplex.core.common.util.UtilAction;
import mineplex.core.common.util.UtilBlock;
import mineplex.core.common.util.UtilEvent;
import mineplex.core.common.util.UtilEvent.ActionType;
import mineplex.core.common.util.UtilGear;
import mineplex.core.common.util.UtilInv;
import mineplex.core.common.util.UtilMath;
import mineplex.core.common.util.UtilPlayer;
import mineplex.core.common.util.UtilServer;
@ -56,6 +60,7 @@ import org.bukkit.event.entity.EntityRegainHealthEvent.RegainReason;
import org.bukkit.event.entity.ProjectileHitEvent;
import org.bukkit.event.inventory.InventoryClickEvent;
import org.bukkit.event.player.PlayerEvent;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.event.player.PlayerQuitEvent;
import org.bukkit.event.player.PlayerTeleportEvent;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
@ -98,6 +103,7 @@ public class Paintball extends TeamGame
private HashMap<Player, PlayerCopy> _doubles = new HashMap<Player, PlayerCopy>();
@SuppressWarnings("unchecked")
public Paintball(ArcadeManager manager)
{
super(manager, GameType.Paintball,
@ -107,6 +113,7 @@ public class Paintball extends TeamGame
new KitRifle(manager),
new KitShotgun(manager),
new KitMachineGun(manager),
new KitSniper(manager),
},
new String[]
@ -162,6 +169,7 @@ public class Paintball extends TeamGame
event.setCancelled(true);
}
@SuppressWarnings("deprecation")
@EventHandler
public void Paint(ProjectileHitEvent event)
{
@ -265,7 +273,10 @@ public class Paintball extends TeamGame
}
if (GetKit(damager) instanceof KitSniper)
{
count = ((KitSniper) GetKit(damager)).getPaintDamage(damager);
count = ((KitSniper) GetKit(damager)).getPaintDamage(event.GetProjectile());
if (count == -1)
count = 1;
}
}
@ -517,4 +528,22 @@ public class Paintball extends TeamGame
for (Player player : GetPlayers(true))
player.removePotionEffect(PotionEffectType.WATER_BREATHING);
}
@EventHandler
public void onHeal(PlayerInteractEvent event)
{
if (!IsLive())
return;
if (!UtilEvent.isAction(event, ActionType.R))
return;
if (!UtilGear.isMat(event.getItem(), Material.POTION))
return;
if (!IsAlive(event.getPlayer()) || UtilPlayer.isSpectator(event.getPlayer()))
event.setCancelled(true);
UtilInv.Update(event.getPlayer());
}
}

View File

@ -2,12 +2,9 @@ package nautilus.game.arcade.game.games.paintball;
import mineplex.core.common.util.C;
import mineplex.core.common.util.UtilEnt;
import mineplex.core.disguise.disguises.DisguisePlayer;
import nautilus.game.arcade.game.Game;
import org.bukkit.ChatColor;
import org.bukkit.EntityEffect;
import org.bukkit.craftbukkit.v1_7_R4.entity.CraftPlayer;
import org.bukkit.entity.LivingEntity;
import org.bukkit.entity.Player;
import org.bukkit.entity.Skeleton;

View File

@ -1,21 +1,22 @@
package nautilus.game.arcade.game.games.paintball.kits;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.LeatherArmorMeta;
import org.bukkit.inventory.meta.PotionMeta;
import mineplex.core.common.util.C;
import mineplex.core.common.util.F;
import mineplex.core.common.util.UtilInv;
import mineplex.core.itemstack.ItemBuilder;
import mineplex.core.itemstack.ItemStackFactory;
import nautilus.game.arcade.ArcadeManager;
import nautilus.game.arcade.game.games.paintball.kits.perks.PerkPaintballMachineGun;
import nautilus.game.arcade.kit.Kit;
import nautilus.game.arcade.kit.KitAvailability;
import nautilus.game.arcade.kit.Perk;
import nautilus.game.arcade.kit.perks.*;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.PotionMeta;
public class KitMachineGun extends Kit
{
@ -40,36 +41,17 @@ public class KitMachineGun extends Kit
@Override
public void GiveItems(Player player)
{
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.DIAMOND_BARDING, (byte)0, 1, "Paintball Machine Gun"));
UtilInv.insert(player, ItemStackFactory.Instance.CreateStack(Material.DIAMOND_BARDING, (byte)0, 1, F.item("Paintball Machine Gun")));
ItemStack potion = new ItemStack(Material.POTION, 3, (short)16429); // 16422
PotionMeta potionMeta = (PotionMeta)potion.getItemMeta();
potionMeta.setDisplayName("Water Bomb");
potionMeta.setDisplayName(F.item("Water Bomb"));
potion.setItemMeta(potionMeta);
player.getInventory().addItem(potion);
ItemStack helm = new ItemStack(Material.LEATHER_HELMET);
LeatherArmorMeta metaHelm = (LeatherArmorMeta)helm.getItemMeta();
metaHelm.setColor(Color.WHITE);
helm.setItemMeta(metaHelm);
player.getInventory().setHelmet(helm);
UtilInv.insert(player, potion);
ItemStack armor = new ItemStack(Material.LEATHER_CHESTPLATE);
LeatherArmorMeta meta = (LeatherArmorMeta)armor.getItemMeta();
meta.setColor(Color.WHITE);
armor.setItemMeta(meta);
player.getInventory().setChestplate(armor);
ItemStack legs = new ItemStack(Material.LEATHER_LEGGINGS);
LeatherArmorMeta metaLegs = (LeatherArmorMeta)armor.getItemMeta();
metaLegs.setColor(Color.WHITE);
legs.setItemMeta(metaLegs);
player.getInventory().setLeggings(legs);
ItemStack boots = new ItemStack(Material.LEATHER_BOOTS);
LeatherArmorMeta metaBoots = (LeatherArmorMeta)armor.getItemMeta();
metaBoots.setColor(Color.WHITE);
boots.setItemMeta(metaBoots);
player.getInventory().setBoots(boots);
player.getInventory().setHelmet(new ItemBuilder(Material.LEATHER_HELMET).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setChestplate(new ItemBuilder(Material.LEATHER_CHESTPLATE).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setLeggings(new ItemBuilder(Material.LEATHER_LEGGINGS).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setBoots(new ItemBuilder(Material.LEATHER_BOOTS).setUnbreakable(true).setColor(Color.WHITE).build());
}
}

View File

@ -1,22 +1,23 @@
package nautilus.game.arcade.game.games.paintball.kits;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.LeatherArmorMeta;
import org.bukkit.inventory.meta.PotionMeta;
import org.bukkit.potion.PotionEffectType;
import mineplex.core.common.util.C;
import mineplex.core.common.util.F;
import mineplex.core.common.util.UtilInv;
import mineplex.core.itemstack.ItemBuilder;
import mineplex.core.itemstack.ItemStackFactory;
import nautilus.game.arcade.ArcadeManager;
import nautilus.game.arcade.game.games.paintball.kits.perks.PerkPaintballRifle;
import nautilus.game.arcade.kit.Kit;
import nautilus.game.arcade.kit.KitAvailability;
import nautilus.game.arcade.kit.Perk;
import nautilus.game.arcade.kit.perks.*;
import nautilus.game.arcade.kit.perks.PerkSpeed;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.PotionMeta;
public class KitRifle extends Kit
{
@ -42,37 +43,17 @@ public class KitRifle extends Kit
@Override
public void GiveItems(Player player)
{
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.IRON_BARDING, (byte)0, 1, "Paintball Rifle"));
//Potion
UtilInv.insert(player, ItemStackFactory.Instance.CreateStack(Material.IRON_BARDING, (byte)0, 1, F.item("Paintball Rifle")));
ItemStack potion = new ItemStack(Material.POTION, 3, (short)16429); // 16422
PotionMeta potionMeta = (PotionMeta)potion.getItemMeta();
potionMeta.setDisplayName("Water Bomb");
potionMeta.setDisplayName(F.item("Water Bomb"));
potion.setItemMeta(potionMeta);
player.getInventory().addItem(potion);
ItemStack helm = new ItemStack(Material.LEATHER_HELMET);
LeatherArmorMeta metaHelm = (LeatherArmorMeta)helm.getItemMeta();
metaHelm.setColor(Color.WHITE);
helm.setItemMeta(metaHelm);
player.getInventory().setHelmet(helm);
UtilInv.insert(player, potion);
ItemStack armor = new ItemStack(Material.LEATHER_CHESTPLATE);
LeatherArmorMeta meta = (LeatherArmorMeta)armor.getItemMeta();
meta.setColor(Color.WHITE);
armor.setItemMeta(meta);
player.getInventory().setChestplate(armor);
ItemStack legs = new ItemStack(Material.LEATHER_LEGGINGS);
LeatherArmorMeta metaLegs = (LeatherArmorMeta)armor.getItemMeta();
metaLegs.setColor(Color.WHITE);
legs.setItemMeta(metaLegs);
player.getInventory().setLeggings(legs);
ItemStack boots = new ItemStack(Material.LEATHER_BOOTS);
LeatherArmorMeta metaBoots = (LeatherArmorMeta)armor.getItemMeta();
metaBoots.setColor(Color.WHITE);
boots.setItemMeta(metaBoots);
player.getInventory().setBoots(boots);
player.getInventory().setHelmet(new ItemBuilder(Material.LEATHER_HELMET).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setChestplate(new ItemBuilder(Material.LEATHER_CHESTPLATE).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setLeggings(new ItemBuilder(Material.LEATHER_LEGGINGS).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setBoots(new ItemBuilder(Material.LEATHER_BOOTS).setUnbreakable(true).setColor(Color.WHITE).build());
}
}

View File

@ -1,21 +1,23 @@
package nautilus.game.arcade.game.games.paintball.kits;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.LeatherArmorMeta;
import org.bukkit.inventory.meta.PotionMeta;
import mineplex.core.common.util.C;
import mineplex.core.common.util.F;
import mineplex.core.common.util.UtilInv;
import mineplex.core.itemstack.ItemBuilder;
import mineplex.core.itemstack.ItemStackFactory;
import nautilus.game.arcade.ArcadeManager;
import nautilus.game.arcade.game.games.paintball.kits.perks.PerkPaintballShotgun;
import nautilus.game.arcade.kit.Kit;
import nautilus.game.arcade.kit.KitAvailability;
import nautilus.game.arcade.kit.Perk;
import nautilus.game.arcade.kit.perks.*;
import nautilus.game.arcade.kit.perks.PerkSpeed;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.PotionMeta;
public class KitShotgun extends Kit
{
@ -41,36 +43,17 @@ public class KitShotgun extends Kit
@Override
public void GiveItems(Player player)
{
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.GOLD_BARDING, (byte)0, 1, "Paintball Shotgun"));
UtilInv.insert(player, ItemStackFactory.Instance.CreateStack(Material.GOLD_BARDING, (byte)0, 1, F.item("Paintball Shotgun")));
ItemStack potion = new ItemStack(Material.POTION, 3, (short)16429); // 16422
PotionMeta potionMeta = (PotionMeta)potion.getItemMeta();
potionMeta.setDisplayName("Water Bomb");
potionMeta.setDisplayName(F.item("Water Bomb"));
potion.setItemMeta(potionMeta);
player.getInventory().addItem(potion);
UtilInv.insert(player, potion);
ItemStack helm = new ItemStack(Material.LEATHER_HELMET);
LeatherArmorMeta metaHelm = (LeatherArmorMeta)helm.getItemMeta();
metaHelm.setColor(Color.WHITE);
helm.setItemMeta(metaHelm);
player.getInventory().setHelmet(helm);
ItemStack armor = new ItemStack(Material.LEATHER_CHESTPLATE);
LeatherArmorMeta meta = (LeatherArmorMeta)armor.getItemMeta();
meta.setColor(Color.WHITE);
armor.setItemMeta(meta);
player.getInventory().setChestplate(armor);
ItemStack legs = new ItemStack(Material.LEATHER_LEGGINGS);
LeatherArmorMeta metaLegs = (LeatherArmorMeta)armor.getItemMeta();
metaLegs.setColor(Color.WHITE);
legs.setItemMeta(metaLegs);
player.getInventory().setLeggings(legs);
ItemStack boots = new ItemStack(Material.LEATHER_BOOTS);
LeatherArmorMeta metaBoots = (LeatherArmorMeta)armor.getItemMeta();
metaBoots.setColor(Color.WHITE);
boots.setItemMeta(metaBoots);
player.getInventory().setBoots(boots);
player.getInventory().setHelmet(new ItemBuilder(Material.LEATHER_HELMET).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setChestplate(new ItemBuilder(Material.LEATHER_CHESTPLATE).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setLeggings(new ItemBuilder(Material.LEATHER_LEGGINGS).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setBoots(new ItemBuilder(Material.LEATHER_BOOTS).setUnbreakable(true).setColor(Color.WHITE).build());
}
}

View File

@ -2,22 +2,23 @@ package nautilus.game.arcade.game.games.paintball.kits;
import mineplex.core.achievement.Achievement;
import mineplex.core.common.util.C;
import mineplex.core.common.util.F;
import mineplex.core.common.util.UtilInv;
import mineplex.core.itemstack.ItemBuilder;
import mineplex.core.itemstack.ItemStackFactory;
import nautilus.game.arcade.ArcadeManager;
import nautilus.game.arcade.game.games.paintball.kits.perks.PerkPaintballShotgun;
import nautilus.game.arcade.game.games.paintball.kits.perks.PerkPaintballSniper;
import nautilus.game.arcade.kit.Kit;
import nautilus.game.arcade.kit.KitAvailability;
import nautilus.game.arcade.kit.Perk;
import nautilus.game.arcade.kit.perks.PerkSlow;
import org.bukkit.Color;
import org.bukkit.Material;
import org.bukkit.entity.EntityType;
import org.bukkit.entity.Player;
import org.bukkit.entity.Projectile;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.meta.PotionMeta;
public class KitSniper extends Kit
{
@ -33,8 +34,7 @@ public class KitSniper extends Kit
new Perk[]
{
new PerkPaintballShotgun(),
new PerkSlow(0)
new PerkPaintballSniper(),
},
EntityType.ZOMBIE,
new ItemStack(Material.STONE_HOE));
@ -51,27 +51,31 @@ public class KitSniper extends Kit
}
@Override
public void GiveItems(Player player)
public void GiveItems(Player player)
{
player.getInventory().addItem(ItemStackFactory.Instance.CreateStack(Material.STONE_HOE, (byte)0, 1, C.cWhite + "Paintball Sniper Rifle"));
UtilInv.insert(player, ItemStackFactory.Instance.CreateStack(Material.POTION, (byte) 16429, 1, "Water Bomb"));
ItemStack potion = new ItemStack(Material.POTION, 2, (short)16429); // 16422
PotionMeta potionMeta = (PotionMeta)potion.getItemMeta();
potionMeta.setDisplayName(F.item("Water Bomb"));
potion.setItemMeta(potionMeta);
UtilInv.insert(player, potion);
player.getInventory().setHelmet(new ItemBuilder(Material.LEATHER_HELMET).setColor(Color.WHITE).build());
player.getInventory().setChestplate(new ItemBuilder(Material.LEATHER_CHESTPLATE).setColor(Color.WHITE).build());
player.getInventory().setLeggings(new ItemBuilder(Material.LEATHER_LEGGINGS).setColor(Color.WHITE).build());
player.getInventory().setBoots(new ItemBuilder(Material.LEATHER_BOOTS).setColor(Color.WHITE).build());
player.getInventory().setHelmet(new ItemBuilder(Material.LEATHER_HELMET).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setChestplate(new ItemBuilder(Material.LEATHER_CHESTPLATE).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setLeggings(new ItemBuilder(Material.LEATHER_LEGGINGS).setUnbreakable(true).setColor(Color.WHITE).build());
player.getInventory().setBoots(new ItemBuilder(Material.LEATHER_BOOTS).setUnbreakable(true).setColor(Color.WHITE).build());
}
public int getPaintDamage(Player player)
public int getPaintDamage(Projectile proj)
{
for (Perk perk : this.GetPerks())
for (Perk perk : GetPerks())
{
if (perk instanceof PerkPaintballSniper)
{
return ((PerkPaintballSniper) perk).getPaintDamage(player);
return ((PerkPaintballSniper) perk).getPaintDamage(proj);
}
}
return 0;
return -1;
}
}

View File

@ -1,8 +1,10 @@
package nautilus.game.arcade.game.games.paintball.kits.perks;
import java.util.HashMap;
import java.util.HashSet;
import mineplex.core.common.util.C;
import mineplex.core.common.util.NautHashMap;
import mineplex.core.common.util.UtilBlock;
import mineplex.core.common.util.UtilEvent;
import mineplex.core.common.util.UtilEvent.ActionType;
@ -10,8 +12,11 @@ import mineplex.core.common.util.UtilGear;
import mineplex.core.common.util.UtilPlayer;
import mineplex.core.recharge.Recharge;
import mineplex.core.recharge.RechargedEvent;
import mineplex.core.updater.UpdateType;
import mineplex.core.updater.event.UpdateEvent;
import mineplex.minecraft.game.core.condition.Condition.ConditionType;
import nautilus.game.arcade.events.GameStateChangeEvent;
import nautilus.game.arcade.game.Game.GameState;
import nautilus.game.arcade.kit.Perk;
import org.bukkit.ChatColor;
@ -22,18 +27,25 @@ import org.bukkit.entity.Player;
import org.bukkit.entity.Projectile;
import org.bukkit.entity.Snowball;
import org.bukkit.event.EventHandler;
import org.bukkit.event.EventPriority;
import org.bukkit.event.player.PlayerInteractEvent;
import org.bukkit.util.Vector;
public class PerkPaintballSniper extends Perk
{
private HashMap<Player, Long> _crouching = new HashMap<Player, Long>();
private HashMap<Projectile, Vector> _fired = new HashMap<Projectile, Vector>();
private NautHashMap<Projectile, Integer> _damage = new NautHashMap<Projectile, Integer>();
private double _velocity = 8;
public PerkPaintballSniper()
{
super("Sniper Rifle", new String[]
{
C.cYellow + "Crouch" + C.cGray + " to use " + C.cGreen + "Scope",
C.cYellow + "Right-Click" + C.cGray + " to use " + C.cGreen + "Shotgun"
C.cYellow + "Right-Click" + C.cGray + " to use " + C.cGreen + "Sniper Rifle",
"Experience Bar represents damage."
});
}
@ -75,45 +87,63 @@ public class PerkPaintballSniper extends Perk
event.setCancelled(true);
if (!Recharge.Instance.use(player, GetName(), 1400, true, false))
if (!Recharge.Instance.use(player, GetName(), 1000, true, true))
return;
Projectile proj = player.launchProjectile(Manager.GetGame().GetTeam(player).GetColor() == ChatColor.AQUA ? Snowball.class : EnderPearl.class);
proj.setVelocity(proj.getVelocity().normalize().multiply(4));
Projectile proj = player.launchProjectile(Manager.GetGame().GetTeam(player).GetColor() == ChatColor.AQUA ? Snowball.class : EnderPearl.class, player.getEyeLocation().getDirection().clone().multiply(_velocity));
_fired.put(proj, proj.getVelocity());
_damage.put(proj, getPaintDamage(player));
//Sound
player.getWorld().playSound(player.getLocation(), Sound.CHICKEN_EGG_POP, 0.8f, 1f);
player.setSneaking(false);
//Effects
removeEffects(player);
}
@EventHandler
public void onUpdate(UpdateEvent event)
{
if (!Manager.GetGame().IsLive())
if (event.getType() != UpdateType.TICK)
return;
if (!Manager.GetGame().IsLive())
return;
//Cleanup check
HashMap<Player, Long> copyMap = new HashMap<Player, Long>();
copyMap.putAll(_crouching);
for (Player player : copyMap.keySet())
{
boolean remove = false;
if (!player.isOnline())
remove = true;
if (!Manager.GetGame().IsAlive(player))
remove = true;
if (UtilPlayer.isSpectator(player))
remove = true;
if (!player.isSneaking())
remove = true;
if (!Recharge.Instance.usable(player, GetName()))
remove = true;
if (remove)
{
_crouching.remove(player);
if (_crouching.containsKey(player))
_crouching.remove(player);
player.setExp(0F);
player.setSneaking(false);
// Zoom
if (Manager.GetCondition().HasCondition(player, ConditionType.SLOW, GetName()))
Manager.GetCondition().EndCondition(player, ConditionType.SLOW, GetName());
removeEffects(player);
}
}
@ -123,6 +153,9 @@ public class PerkPaintballSniper extends Perk
if (UtilPlayer.isSpectator(player))
continue;
if (!Kit.HasKit(player))
continue;
if (!player.isSneaking())
continue;
@ -132,12 +165,95 @@ public class PerkPaintballSniper extends Perk
_crouching.put(player, System.currentTimeMillis());
// Zoom
if (!Manager.GetCondition().HasCondition(player, ConditionType.SLOW, GetName()))
Manager.GetCondition().Factory().Slow(GetName(), player, null, Double.MAX_VALUE, 5, false, false, false, false);
}
addEffects(player);
}
// Exp check
for (Player player : Manager.GetGame().GetPlayers(true))
{
if (UtilPlayer.isSpectator(player))
continue;
if (!Kit.HasKit(player))
continue;
if (!_crouching.containsKey(player))
continue;
player.setExp((float) Math.min(.999F, player.getExp() + .0125));
}
}
public int getPaintDamage(Player player)
@EventHandler
public void updateProjectiles(UpdateEvent event)
{
if (event.getType() != UpdateType.TICK)
return;
if (!Manager.GetGame().IsLive())
return;
HashSet<Projectile> copySet = new HashSet<Projectile>(_fired.keySet());
for (Projectile proj : copySet)
{
if (!proj.isValid())
{
_fired.remove(proj);
if (_damage.containsKey(proj))
_damage.remove(proj);
continue;
}
proj.setVelocity(_fired.get(proj).clone().normalize().multiply(_velocity));
}
}
@EventHandler(priority = EventPriority.LOWEST, ignoreCancelled = true)
public void removeEffects(GameStateChangeEvent event)
{
if (event.GetState() != GameState.End)
return;
for (Player player : _crouching.keySet())
{
removeEffects(player);
}
_crouching.clear();
}
private void removeEffects(Player player)
{
// Zoom
if (Manager.GetCondition().HasCondition(player, ConditionType.SLOW, GetName()))
Manager.GetCondition().EndCondition(player, ConditionType.SLOW, GetName());
if (Manager.GetCondition().HasCondition(player, ConditionType.JUMP, GetName()))
Manager.GetCondition().EndCondition(player, ConditionType.JUMP, GetName());
}
private void addEffects(Player player)
{
// Zoom
if (!Manager.GetCondition().HasCondition(player, ConditionType.SLOW, GetName()))
Manager.GetCondition().Factory().Slow(GetName(), player, null, Double.MAX_VALUE, 8, false, false, false, false);
// if (!Manager.GetCondition().HasCondition(player, ConditionType.JUMP, GetName()))
// Manager.GetCondition().Factory().Jump(GetName(), player, null, 9999999, 250, true, false, false);
}
public int getPaintDamage(Projectile proj)
{
if (!_damage.containsKey(proj))
return 1;
return _damage.remove(proj);
}
private int getPaintDamage(Player player)
{
if (!_crouching.containsKey(player))
return 1;