diff --git a/.gitignore b/.gitignore index 17bce2dce..8c942dcac 100644 --- a/.gitignore +++ b/.gitignore @@ -16,6 +16,5 @@ update Reference -/Plugins/Test /Plugins/.idea/workspace.xml /Plugins/out \ No newline at end of file diff --git a/Plugins/.idea/artifacts/Mineplex_Hub_test.xml b/Plugins/.idea/artifacts/Mineplex_Hub_test.xml new file mode 100644 index 000000000..39a87c356 --- /dev/null +++ b/Plugins/.idea/artifacts/Mineplex_Hub_test.xml @@ -0,0 +1,10 @@ + + + $PROJECT_DIR$/../Testing/Hub + + + + + + + \ No newline at end of file diff --git a/Plugins/.idea/artifacts/Nautilus_Game_Arcade_test.xml b/Plugins/.idea/artifacts/Nautilus_Game_Arcade_test.xml new file mode 100644 index 000000000..b2f276236 --- /dev/null +++ b/Plugins/.idea/artifacts/Nautilus_Game_Arcade_test.xml @@ -0,0 +1,10 @@ + + + $PROJECT_DIR$/../Testing/Arcade + + + + + + + \ No newline at end of file diff --git a/Plugins/Libraries/bukkit.jar b/Plugins/Libraries/bukkit.jar index c5a36ece7..4aadd1b77 100644 Binary files a/Plugins/Libraries/bukkit.jar and b/Plugins/Libraries/bukkit.jar differ diff --git a/Plugins/Libraries/craftbukkit_official.jar b/Plugins/Libraries/craftbukkit_official.jar index 09f678f87..29f8cef9e 100644 Binary files a/Plugins/Libraries/craftbukkit_official.jar and b/Plugins/Libraries/craftbukkit_official.jar differ diff --git a/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java b/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java index f23beafa0..0326b2831 100644 --- a/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java +++ b/Plugins/Mineplex.Hub/src/mineplex/hub/HubManager.java @@ -80,9 +80,9 @@ import mineplex.minecraft.game.core.condition.ConditionManager; public class HubManager extends MiniClientPlugin { public String Mode = "Normal"; - + private BlockRestore _blockRestore; - private CoreClientManager _clientManager; + private CoreClientManager _clientManager; private ConditionManager _conditionManager; private DonationManager _donationManager; private DisguiseManager _disguiseManager; @@ -98,30 +98,30 @@ public class HubManager extends MiniClientPlugin private Location _spawn; private int _scoreboardTick = 0; - + private HashMap _scoreboards = new HashMap(); private String _pigStacker = "0 - Nobody"; - + private boolean _shuttingDown; private HashMap _portalTime = new HashMap(); - + private int _slot = 7; private HashSet _disabled = new HashSet(); - + //Admin private boolean _gadgetsEnabled = true; private HashSet _forcefield = new HashSet(); - public HubManager(JavaPlugin plugin, BlockRestore blockRestore, CoreClientManager clientManager, DonationManager donationManager, ConditionManager conditionManager, DisguiseManager disguiseManager, TaskManager taskManager, Portal portal, PartyManager partyManager) + public HubManager(JavaPlugin plugin, BlockRestore blockRestore, CoreClientManager clientManager, DonationManager donationManager, ConditionManager conditionManager, DisguiseManager disguiseManager, TaskManager taskManager, Portal portal, PartyManager partyManager) { super("Hub Manager", plugin); _blockRestore = blockRestore; _clientManager = clientManager; _conditionManager = conditionManager; - _donationManager = donationManager; + _donationManager = donationManager; _disguiseManager = disguiseManager; _portal = portal; @@ -135,26 +135,26 @@ public class HubManager extends MiniClientPlugin new WorldManager(this); new JumpManager(this); new NewsManager(this); - + _mountManager = new MountManager(this); _gadgetManager = new GadgetManager(this, _mountManager); _partyManager = partyManager; _tutorialManager = new TutorialManager(this, donationManager, taskManager, _textCreator); _visibilityManager = new VisibilityManager(this); - + _statsManager = new StatsManager(plugin); ((CraftWorld)Bukkit.getWorlds().get(0)).getHandle().pvpMode = true; } - + @Override - public void AddCommands() + public void AddCommands() { AddCommand(new GadgetToggle(this)); AddCommand(new ForcefieldToggle(this)); } - + @EventHandler(priority = EventPriority.HIGHEST) public void reflectMotd(ServerListPingEvent event) { @@ -167,54 +167,54 @@ public class HubManager extends MiniClientPlugin @EventHandler public void BumpJoin(PlayerJoinEvent event) { - event.getPlayer().getInventory().setItem(_slot, ItemStackFactory.Instance.CreateStack(Material.SLIME_BALL, (byte)0, 1, + event.getPlayer().getInventory().setItem(_slot, ItemStackFactory.Instance.CreateStack(Material.SLIME_BALL, (byte)0, 1, C.cYellow + "Stacker" + C.cWhite + " - " + C.cGreen + "Enabled")); } - + @EventHandler public void BumpQuit(PlayerQuitEvent event) { _disabled.remove(event.getPlayer()); } - + public boolean BumpDisabled(Entity ent) { if (ent == null) return false; - + return _disabled.contains(ent); } - + @EventHandler public void BumpToggle(PlayerInteractEvent event) { if (event.getAction() == Action.PHYSICAL) return; - + Player player = event.getPlayer(); - + if (player.getInventory().getHeldItemSlot() != _slot) return; - + event.setCancelled(true); - + if (_disabled.remove(player)) { UtilPlayer.message(player, F.main("Hub Games", "You are back in the Hub Games!")); - - player.getInventory().setItem(_slot, ItemStackFactory.Instance.CreateStack(Material.SLIME_BALL, (byte)0, 1, + + player.getInventory().setItem(_slot, ItemStackFactory.Instance.CreateStack(Material.SLIME_BALL, (byte)0, 1, C.cYellow + "Stacker" + C.cWhite + " - " + C.cGreen + "Enabled")); } else { _disabled.add(player); UtilPlayer.message(player, F.main("Hub Games", "You are no longer partaking in Hub Games.")); - - player.getInventory().setItem(_slot, ItemStackFactory.Instance.CreateStack(Material.MAGMA_CREAM, (byte)0, 1, + + player.getInventory().setItem(_slot, ItemStackFactory.Instance.CreateStack(Material.MAGMA_CREAM, (byte)0, 1, C.cYellow + "Stacker" + C.cWhite + " - " + C.cRed + "Disabled")); } } - + @EventHandler public void orderThatItem(final PlayerDropItemEvent event) { @@ -234,20 +234,20 @@ public class HubManager extends MiniClientPlugin }); } } - + @EventHandler public void redirectStopCommand(PlayerCommandPreprocessEvent event) { if (event.getPlayer().isOp() && event.getMessage().equalsIgnoreCase("/stop")) { _shuttingDown = true; - + Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(_plugin, new Runnable() { public void run() { _portal.SendAllPlayers("Lobby"); - + Bukkit.getServer().getScheduler().scheduleSyncDelayedTask(_plugin, new Runnable() { public void run() @@ -257,11 +257,11 @@ public class HubManager extends MiniClientPlugin }, 40L); } }, 60L); - + event.setCancelled(true); } } - + @EventHandler public void preventEggSpawn(ItemSpawnEvent event) { @@ -302,12 +302,12 @@ public class HubManager extends MiniClientPlugin } } } - + @EventHandler(priority = EventPriority.LOW) public void login(final PlayerLoginEvent event) { CoreClient client = _clientManager.Get(event.getPlayer().getName()); - + // Reserved Slot Check if (Bukkit.getOnlinePlayers().length >= Bukkit.getServer().getMaxPlayers()) { @@ -332,31 +332,31 @@ public class HubManager extends MiniClientPlugin try { final Player player = event.getPlayer(); - + //Survival player.setGameMode(GameMode.SURVIVAL); - + //Public Message event.setJoinMessage(null); - + //Teleport player.teleport(GetSpawn()); - + //Allow Double Jump player.setAllowFlight(true); - + UtilInv.Clear(player); - + //Scoreboard Scoreboard board = Bukkit.getScoreboardManager().getNewScoreboard(); player.setScoreboard(board); _scoreboards.put(player, board); - + //Objective Objective obj = board.registerNewObjective(C.Bold + "Player Data", "dummy"); obj.setDisplaySlot(DisplaySlot.SIDEBAR); - - + + for (Rank rank : Rank.values()) { if (rank != Rank.ALL) @@ -364,32 +364,32 @@ public class HubManager extends MiniClientPlugin else board.registerNewTeam(rank.Name).setPrefix(""); } - + for (Player otherPlayer : Bukkit.getOnlinePlayers()) { if (_clientManager.Get(otherPlayer) == null) continue; - + String rankName = _clientManager.Get(player).GetRank().Name; String otherRankName = _clientManager.Get(otherPlayer).GetRank().Name; - + if (!_clientManager.Get(player).GetRank().Has(Rank.ULTRA) && _donationManager.Get(player.getName()).OwnsUltraPackage()) { rankName = Rank.ULTRA.Name; } - + if (!_clientManager.Get(otherPlayer).GetRank().Has(Rank.ULTRA) && _donationManager.Get(otherPlayer.getName()).OwnsUltraPackage()) { otherRankName = Rank.ULTRA.Name; } - + //Add Other to Self board.getTeam(otherRankName).addPlayer(otherPlayer); - + //Add Self to Other otherPlayer.getScoreboard().getTeam(rankName).addPlayer(player); } - + } catch (Exception ex) { @@ -451,9 +451,9 @@ public class HubManager extends MiniClientPlugin for (Player player : UtilServer.getPlayers()) player.getScoreboard().resetScores(event.getPlayer().getName()); - + _scoreboards.remove(event.getPlayer()); - + _portalTime.remove(event.getPlayer().getName()); } @@ -487,13 +487,13 @@ public class HubManager extends MiniClientPlugin event.setMessage(event.getMessage().substring(1, event.getMessage().length())); event.setFormat(C.cDPurple + C.Bold + "Party " + C.cWhite + C.Bold + "%1$s " + C.cPurple + "%2$s"); - + for (String name : party.GetPlayers()) { Player other = UtilPlayer.searchExact(name); - + if (other != null) - event.getRecipients().add(other); + event.getRecipients().add(other); } } else @@ -501,7 +501,7 @@ public class HubManager extends MiniClientPlugin UtilPlayer.message(player, F.main("Party", "You are not in a Party.")); event.setCancelled(true); } - + return; } else @@ -513,7 +513,7 @@ public class HubManager extends MiniClientPlugin event.getRecipients().remove(other); continue; } - + event.setMessage(event.getMessage()); event.setFormat(rankStr + C.cYellow + "%1$s " + C.cWhite + "%2$s"); } @@ -530,7 +530,7 @@ public class HubManager extends MiniClientPlugin event.getEntity().leaveVehicle(); event.getEntity().teleport(GetSpawn()); } - + else event.getEntity().remove(); @@ -607,11 +607,11 @@ public class HubManager extends MiniClientPlugin //Dont Waste Time if (_partyManager.GetParty(player) != null) continue; - + //Return to Main Scoreboard if (!player.getScoreboard().equals(_scoreboards.get(player))) player.setScoreboard(_scoreboards.get(player)); - + //Objective Objective obj = player.getScoreboard().getObjective(DisplaySlot.SIDEBAR); @@ -705,11 +705,11 @@ public class HubManager extends MiniClientPlugin } @Override - protected HubClient AddPlayer(String player) - { + protected HubClient AddPlayer(String player) + { return new HubClient(player); } - + public BlockRestore GetBlockRestore() { return _blockRestore; @@ -719,7 +719,7 @@ public class HubManager extends MiniClientPlugin { return _clientManager; } - + public ConditionManager GetCondition() { return _conditionManager; @@ -729,22 +729,22 @@ public class HubManager extends MiniClientPlugin { return _donationManager; } - + public DisguiseManager GetDisguise() { return _disguiseManager; } - + public GadgetManager GetGadget() { return _gadgetManager; } - + public MountManager GetMount() { return _mountManager; } - + public ParkourManager GetParkour() { return _parkour; @@ -755,17 +755,17 @@ public class HubManager extends MiniClientPlugin return _spawn.clone(); } - public TutorialManager GetTutorial() + public TutorialManager GetTutorial() { return _tutorialManager; } - + public StatsManager GetStats() { return _statsManager; } - public VisibilityManager GetVisibility() + public VisibilityManager GetVisibility() { return _visibilityManager; } @@ -788,61 +788,61 @@ public class HubManager extends MiniClientPlugin return UtilTime.elapsed(_portalTime.get(player.getName()), 5000); } - + public boolean CanBump(LivingEntity ent) { if (!(ent instanceof Player)) return true; - + if (BumpDisabled(ent)) return false; - + if (GetVisibility().IsHiding(ent)) return false; - + return true; } - + @EventHandler public void HeartDisplay(UpdateEvent event) { if (event.getType() != UpdateType.FASTER) return; - + for (Player player : UtilServer.getPlayers()) { if (!player.isOp()) continue; - + for (Player other : UtilServer.getPlayers()) { if (player.getName().equalsIgnoreCase("Chiss")) UtilParticle.PlayParticle(other, ParticleType.HEART, player.getLocation().add(0, 1, 0), 0.25f, 0.5f, 0.25f, 0, 1); - + else if (player.getName().equalsIgnoreCase("defek7")) UtilParticle.PlayParticle(other, ParticleType.FIREWORKS_SPARK, player.getLocation().add(0, 1, 0), 0.25f, 0.5f, 0.25f, 0, 2); - + else if (player.getName().equalsIgnoreCase("Spu_")) UtilParticle.PlayParticle(other, ParticleType.FLAME, player.getLocation().add(0, 1, 0), 0.25f, 0.5f, 0.25f, 0, 2); - + else if (player.getName().equalsIgnoreCase("sterling_")) UtilParticle.PlayParticle(other, ParticleType.WITCH_MAGIC, player.getLocation().add(0, 1, 0), 0.25f, 0.5f, 0.25f, 0, 2); } } } - + @EventHandler public void SkillTrigger(SkillTriggerEvent event) { event.SetCancelled(true); } - + @EventHandler public void ItemTrigger(ItemTriggerEvent event) { event.SetCancelled(true); } - + public boolean IsGadgetEnabled() { return _gadgetsEnabled; @@ -857,30 +857,30 @@ public class HubManager extends MiniClientPlugin { if (_forcefield.add(caller)) return true; - + _forcefield.remove(caller); return false; } - + @EventHandler public void ForcefieldUpdate(UpdateEvent event) { if (event.getType() != UpdateType.FAST) return; - + for (Player player : _forcefield) { for (Player other : UtilServer.getPlayers()) { if (player.equals(other)) continue; - + if (UtilMath.offset(other, player) > 5) continue; - + if (GetClients().Get(other).GetRank().Has(Rank.ADMIN)) continue; - + if (Recharge.Instance.use(other, "Forcefield Bump", 500, false, false)) { UtilAction.velocity(other, UtilAlg.getTrajectory2d(player, other), 1.6, true, 0.8, 0, 10, true); diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/ChickenForm.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/ChickenForm.java deleted file mode 100644 index 735638f22..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/ChickenForm.java +++ /dev/null @@ -1,92 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Chicken; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.FormBase; - -import org.bukkit.ChatColor; -import org.bukkit.entity.EntityType; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.entity.EntityDamageEvent.DamageCause; - -public class ChickenForm extends FormBase -{ - public ChickenForm(SkillFactory skills, String name, ClassType classType, - SkillType skillType, int cost, int levels) - { - super(skills, name, classType, skillType, cost, levels, - EntityType.CHICKEN, new String[] - { - "Flap" - }); - - SetDesc(new String[] - { - ChatColor.WHITE + "Passives:", - "* Slow I", - "* +10 Damage taken from Arrows", - "", - "", - ChatColor.WHITE + "Attack: " + ChatColor.GREEN + "None", - "", - "", - ChatColor.WHITE + "Sword Skill: " + ChatColor.GREEN + "Fly", - "Push Block to Flap;", - "* Velocity of 0.5 + 0.05pL", - "", - "Hold Block to Glide;", - "* Min speed of 0.3 + 0.03pL", - "* Max speed of 0.7 + 0.07pL", - "", - "Glide through enemies to pick them up.", - "Stop gliding to drop them.", - "", - "", - ChatColor.WHITE + "Axe Skill: " + ChatColor.GREEN + "Spin Web", - "Spin a temporary web;", - "* Lasts 5 + 1pL seconds", - }); - } - - @Override - public void UnapplyMorph(Player player) - { - Flap flap = (Flap)Factory.GetSkill("Flap"); - flap.GetGrab().Release(player); - - Factory.Condition().EndCondition(player, null, GetName()); - } - - @EventHandler(priority = EventPriority.HIGH) - public void Attack(CustomDamageEvent event) - { - if (event.IsCancelled()) - return; - - if (event.GetCause() != DamageCause.ENTITY_ATTACK) - return; - - Player damager = event.GetDamagerPlayer(false); - if (damager == null) return; - - if (!IsMorphed(damager)) - return; - - event.SetCancelled(GetName()); - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() != UpdateType.FAST) - return; - - for (Player cur : GetMorphedUsers()) - Factory.Condition().Factory().Slow(GetName(), cur, cur, 1.9, 0, false, false, false); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/Flap.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/Flap.java deleted file mode 100644 index 3ba2b631c..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/Flap.java +++ /dev/null @@ -1,262 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Chicken; - -import java.util.HashMap; - -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Entity; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.block.Action; -import org.bukkit.util.Vector; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilEnt; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilAlg; -import mineplex.core.common.util.UtilTime; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class Flap extends SkillActive -{ - private HashMap _active = new HashMap(); - private HashMap _damaged = new HashMap(); - - private long _damageDisableTime = 6000; - - private double _flap = 0.5; - private double _min = 0.3; - private double _max = 0.7; - - private FlapGrab _grab = null; - - private int _tick = 0; - - public Flap(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - - _grab = new FlapGrab(this); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (player.getLocation().getBlock().getTypeId() == 8 || player.getLocation().getBlock().getTypeId() == 9) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in water.")); - return false; - } - - //Wings Damaged - if (_damaged.containsKey(player)) - { - long damageTime = _damaged.get(player); - - if (!UtilTime.elapsed(damageTime, _damageDisableTime)) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " for " + - F.time(UtilTime.MakeStr(_damageDisableTime - (System.currentTimeMillis() - damageTime))) + ".")); - - return false; - } - } - - return true; - } - - @Override - public void Skill(Player player, int level) - { - //Initial Flap - Vector vel = player.getLocation().getDirection(); - vel.multiply(_flap + ((_flap/10d) * level)); - vel.add(new Vector(0,0.1,0)); - - //Clutch Penalty - if (player.getVehicle() != null) - vel.multiply(0.5 + (level * 0.05)); - - _active.put(player, vel); - - //Apply Velocity - player.setVelocity(vel); - - //Sound - player.getWorld().playSound(player.getLocation(), Sound.BAT_TAKEOFF, 1f, 1f); - } - - @EventHandler(priority = EventPriority.HIGH) - public void Damage(CustomDamageEvent event) - { - if (event.GetProjectile() == null) - return; - - if (event.GetDamageePlayer() == null) - return; - - if (!GetUsers().containsKey(event.GetDamageePlayer())) - return; - - event.AddMod(UtilEnt.getName(event.GetDamagerEntity(true)), "Chicken Weakness", 10, false); - - _damaged.put(event.GetDamageePlayer(), System.currentTimeMillis()); - } - - @EventHandler - public void Glide(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - _tick = (_tick + 1)%12; - - for (Player cur : GetUsers()) - { - if (!_active.containsKey(cur)) - { - GetGrab().Release(cur); - continue; - } - - if (!cur.isBlocking()) - { - _active.remove(cur); - continue; - } - - //Level - int level = getLevel(cur); - if (level == 0) - { - _active.remove(cur); - continue; - } - - //Clutch Penalty - if (cur.getVehicle() != null) - { - //Energy - if (!Factory.Energy().Use(cur, "Glide", 1.2 - (0.02 * level), true, true)) - { - _active.remove(cur); - continue; - } - } - else - { - //Energy - if (!Factory.Energy().Use(cur, "Glide", 0.6 - (0.02 * level), true, true)) - { - _active.remove(cur); - continue; - } - } - - //Target to apply velocity to - Entity target = cur; - if (cur.getVehicle() != null) - target = cur.getVehicle(); - - //Get Velocity - Vector vel = _active.get(cur); - - if (UtilEnt.isGrounded(target) && vel.getY() < 0) - { - _active.remove(cur); - continue; - } - - //Turn - double speed = vel.length(); - Vector turn = cur.getLocation().getDirection(); - turn.subtract(UtilAlg.Normalize(UtilAlg.Clone(vel))); - turn.multiply(0.1); - vel.add(turn); - UtilAlg.Normalize(vel).multiply(speed); - - //Gravity - vel.setX(vel.getX() * (1 - (vel.getY() / 6))); - vel.setZ(vel.getZ() * (1 - (vel.getY() / 6))); - if (vel.getY() > 0) vel.setY(vel.getY() * (1 - (vel.getY() / 6))); - - //Air Friction - vel.multiply(0.998); - - double minSpeed = _min + ((_min/10d) * level); - double maxSpeed = _max + ((_max/10d) * level); - - //Speed Min - if (vel.length() < minSpeed) - vel.normalize().multiply(minSpeed); - - //Speed Max - if (vel.length() > maxSpeed) - vel.normalize().multiply(maxSpeed); - - //Apply Velocity - target.setVelocity(vel); - - //Fall Dist - target.setFallDistance(0f); - - //Hit Others (only if not carrying) - if (cur.equals(target)) - { - for (Player other : UtilPlayer.getNearby(cur.getLocation(), 2)) - { - if (other.equals(cur)) - continue; - - if (!Factory.Relation().CanHurt(cur, other)) - continue; - - _grab.Grab(cur, other); - - if (vel.getY() < 0.1) - vel.setY(0.1); - } - } - - //Sound - if (_tick == 0) - cur.getWorld().playSound(cur.getLocation(), Sound.BAT_TAKEOFF, 0.4f, 1f); - } - } - - @EventHandler - public void DamageRelease(CustomDamageEvent event) - { - GetGrab().DamageRelease(event); - } - - public FlapGrab GetGrab() - { - return _grab; - } - - @Override - public void Reset(Player player) - { - _grab.Reset(player); - - _active.remove(player); - _damaged.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/FlapGrab.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/FlapGrab.java deleted file mode 100644 index be4f69219..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Chicken/FlapGrab.java +++ /dev/null @@ -1,99 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Chicken; - -import java.util.HashMap; - -import org.bukkit.EntityEffect; -import org.bukkit.Sound; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; - -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.common.util.UtilEnt; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; - -public class FlapGrab -{ - public Flap Host; - - private HashMap _clutch = new HashMap(); - - public FlapGrab(Flap host) - { - Host = host; - } - - public void Grab(Player player, LivingEntity ent) - { - if (_clutch.containsKey(player)) - return; - - if (ent == null) - return; - - //Ent already has LE passenger - if (ent.getPassenger() != null) - if (ent.getPassenger() instanceof LivingEntity) - return; - - //Player on something - if (player.getVehicle() != null) - return; - - //Condition Indicators - Host.Factory.Condition().SetIndicatorVisibility((LivingEntity)ent, false); - - //Action - player.leaveVehicle(); - ent.eject(); - ent.setPassenger(player); - _clutch.put(player, (LivingEntity)ent); - - //Inform - UtilPlayer.message(player, F.main(Host.GetClassType().name(), "You picked up " + F.name(UtilEnt.getName(ent)) + ".")); - UtilPlayer.message(ent, F.main(Host.GetClassType().name(), F.name(player.getName()) + " picked you up.")); - - //Effect - ent.playEffect(EntityEffect.HURT); - - //Sound - player.getWorld().playSound(player.getLocation(), Sound.CHICKEN_HURT, 2f, 1.5f); - } - - public void Release(Player player) - { - LivingEntity ent = _clutch.remove(player); - if (ent == null) return; - - player.leaveVehicle(); - ent.eject(); - - //Condition Indicators - Host.Factory.Condition().SetIndicatorVisibility(ent, true); - - //Inform - UtilPlayer.message(player, F.main(Host.GetClassType().name(), "You released " + F.name(UtilEnt.getName(ent)) + ".")); - UtilPlayer.message(ent, F.main(Host.GetClassType().name(), F.name(player.getName()) + " released you.")); - - //Effect - ent.playEffect(EntityEffect.HURT); - } - - public void DamageRelease(CustomDamageEvent event) - { - Player damagee = event.GetDamageePlayer(); - if (damagee == null) return; - - Release(damagee); - } - - public void Reset(Player player) - { - LivingEntity ent = _clutch.remove(player); - if (ent != null) - { - ent.eject(); - Host.Factory.Condition().SetIndicatorVisibility(ent, true); - } - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Creeper/CreeperForm.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Creeper/CreeperForm.java deleted file mode 100644 index e8040c6b2..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Creeper/CreeperForm.java +++ /dev/null @@ -1,5 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Creeper; - -public class CreeperForm { - -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/FormBase.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/FormBase.java deleted file mode 100644 index d62fd84ec..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/FormBase.java +++ /dev/null @@ -1,186 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms; - -import java.util.ArrayList; -import java.util.Collection; -import java.util.HashMap; -import java.util.Map.Entry; - -import mineplex.minecraft.game.classcombat.Class.ClientClass; -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.common.util.UtilGear; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.minecraft.game.classcombat.Skill.ISkill; -import mineplex.minecraft.game.classcombat.Skill.Skill; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -import org.bukkit.entity.EntityType; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.player.PlayerDropItemEvent; - -public abstract class FormBase extends Skill -{ - private EntityType _type; - private ArrayList _formSkills = new ArrayList(); - private String[] _formSkillNames; - - private HashMap> _savedSkills = new HashMap>(); - - public FormBase(SkillFactory skills, String name, ClassType classType, - SkillType skillType, int cost, int levels, EntityType type, String[] formSkillNames) - { - super(skills, name, classType, skillType, cost, levels); - - _type = type; - _formSkillNames = formSkillNames; - } - - @EventHandler - public void Use(PlayerDropItemEvent event) - { - Player player = event.getPlayer(); - - int level = getLevel(player); - if (level == 0) return; - - if (!UtilGear.isWeapon(event.getItemDrop().getItemStack())) - return; - - //Shift/Non-Shift for A/B - if (!IsMorphed(player)) - { - if (this.GetSkillType() == SkillType.PassiveA) - if (player.isSneaking()) - return; - - if (this.GetSkillType() == SkillType.PassiveB) - if (!player.isSneaking()) - return; - } - - event.setCancelled(true); - - if (_savedSkills.containsKey(player)) - Unmorph(player); - else - Morph(player); - } - - public EntityType GetType() - { - return _type; - } - - public void Morph(Player player) - { - SaveHumanSkills(player); - - //Set Skills - ClientClass cc = Factory.ClassManager().Get(player); - - for (ISkill skill : GetFormSkills()) - cc.AddSkill(skill, getLevel(player)); - - - //Inform - UtilPlayer.message(player, F.main(GetClassType().name(), "You shapeshifted into " + F.skill(GetName() + " " + getLevel(player)))); - } - - public void Unmorph(Player player) - { - //Reset Skills - for (ISkill skill : GetFormSkills()) - skill.Reset(player); - - UnapplyMorph(player); - RestoreHumanSkills(player); - - //Inform - UtilPlayer.message(player, F.main(GetClassType().name(), "You returned to " + F.skill("Human Form"))); - } - - public boolean IsMorphed(Player player) - { - return _savedSkills.containsKey(player); - } - - public Collection GetMorphedUsers() - { - return _savedSkills.keySet(); - } - - public ArrayList GetFormSkills() - { - if (_formSkills.isEmpty()) - for (String name : _formSkillNames) - { - ISkill skill = Factory.GetSkill(name); - - if (skill != null) - _formSkills.add(skill); - - else - System.out.println("Invalid Skill [" + name + "] for [" + GetName() + "]."); - } - - - return _formSkills; - } - - public abstract void UnapplyMorph(Player player); - - private void SaveHumanSkills(Player player) - { - ClientClass cc = Factory.ClassManager().Get(player); - - //Save Current - _savedSkills.put(player, new HashMap()); - - for (Entry skill : cc.GetSkills()) - { - //Save Sword/Axe - if (skill.getKey().GetSkillType() == SkillType.Sword || - skill.getKey().GetSkillType() == SkillType.Axe || - skill.getKey().GetSkillType() == SkillType.Class) - _savedSkills.get(player).put(skill.getKey(), skill.getValue()); - - //Save OTHER Morph - if (this.GetSkillType() == SkillType.PassiveA) - if (skill.getKey().GetSkillType() == SkillType.PassiveB) - _savedSkills.get(player).put(skill.getKey(), skill.getValue()); - - if (this.GetSkillType() == SkillType.PassiveB) - if (skill.getKey().GetSkillType() == SkillType.PassiveA) - _savedSkills.get(player).put(skill.getKey(), skill.getValue()); - } - - //Remove Saved - for (ISkill skill : _savedSkills.get(player).keySet()) - cc.RemoveSkill(cc.GetSkillByType(skill.GetSkillType())); - } - - private void RestoreHumanSkills(Player player) - { - ClientClass cc = Factory.ClassManager().Get(player); - - //Remove Morph Skills - cc.RemoveSkill(cc.GetSkillByType(SkillType.Sword)); - cc.RemoveSkill(cc.GetSkillByType(SkillType.Axe)); - - //Restore Old - if (!_savedSkills.containsKey(player)) - return; - - for (ISkill skill : _savedSkills.get(player).keySet()) - cc.AddSkill(skill, _savedSkills.get(player).get(skill)); - - _savedSkills.remove(player); - } - - @Override - public void Reset(Player player) - { - _savedSkills.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/GolemForm.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/GolemForm.java deleted file mode 100644 index e88d90ade..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/GolemForm.java +++ /dev/null @@ -1,127 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Golem; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.common.util.UtilGear; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.FormBase; - -import org.bukkit.ChatColor; -import org.bukkit.Sound; -import org.bukkit.entity.EntityType; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.entity.EntityDamageEvent.DamageCause; - -public class GolemForm extends FormBase -{ - public GolemForm(SkillFactory skills, String name, ClassType classType, - SkillType skillType, int cost, int levels) - { - super(skills, name, classType, skillType, cost, levels, - EntityType.IRON_GOLEM, new String[] - { - "Magnetic Pull", - "Magnetic Repel" - }); - - SetDesc(new String[] - { - ChatColor.WHITE + "Passives:", - "* Slow II", - "* Protection III", - "* -4 Damage Dealt", - "", - ChatColor.WHITE + "Sword Attack: " + ChatColor.GREEN + "Iron Crush", - "* No Knockback", - "* Slow V for 0.5 seconds", - "", - "", - ChatColor.WHITE + "Axe Attack: " + ChatColor.GREEN + "Iron Smash", - "* Strong Knockback", - "", - "", - ChatColor.WHITE + "Sword Skill: " + ChatColor.GREEN + "Magnetic Pull", - "Pull in enemies infront of you;", - "* Range of 4 + 2pL", - "* Radius of 2 + 0.5pL", - "", - "", - ChatColor.WHITE + "Axe Skill: " + ChatColor.GREEN + "Magnetic Repel", - "Repel all nearby enemies;", - "* Range of 4 + 2pL", - "* Velocity of 1.2 + 0.2pL" - }); - } - - @Override - public void UnapplyMorph(Player player) - { - Factory.Condition().EndCondition(player, null, GetName()); - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() != UpdateType.FAST) - return; - - for (Player cur : GetMorphedUsers()) - { - Factory.Condition().Factory().Protection(GetName(), cur, cur, 1.9, 2, false, false); - Factory.Condition().Factory().Slow(GetName(), cur, cur, 1.9, 1, false, false, false); - } - } - - @EventHandler(priority = EventPriority.HIGH) - public void KnockbackTaken(CustomDamageEvent event) - { - if (event.IsCancelled()) - return; - - if (event.GetCause() != DamageCause.ENTITY_ATTACK) - return; - - Player damagee = event.GetDamageePlayer(); - if (damagee == null) return; - - if (!IsMorphed(damagee)) - return; - - event.SetKnockback(false); - damagee.getWorld().playSound(damagee.getLocation(), Sound.ZOMBIE_METAL, 0.8f, 1.8f); - } - - @EventHandler(priority = EventPriority.HIGH) - public void KnockbackGiven(CustomDamageEvent event) - { - if (event.IsCancelled()) - return; - - if (event.GetCause() != DamageCause.ENTITY_ATTACK) - return; - - Player damager = event.GetDamagerPlayer(false); - if (damager == null) return; - - if (!IsMorphed(damager)) - return; - - event.AddMod(damager.getName(), GetName(), -4, false); - - if (UtilGear.isSword(damager.getItemInHand())) - { - damager.getWorld().playSound(damager.getLocation(), Sound.IRONGOLEM_HIT, 1f, 1.6f); - Factory.Condition().Factory().Slow(GetName(), event.GetDamageeEntity(), damager, 0.5, 4, false, false, true); - event.SetKnockback(false); - } - else if (UtilGear.isAxe(damager.getItemInHand())) - { - damager.getWorld().playSound(damager.getLocation(), Sound.IRONGOLEM_HIT, 1f, 0.8f); - event.AddKnockback(GetName(), 4d); - } - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticPull.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticPull.java deleted file mode 100644 index b96f64454..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticPull.java +++ /dev/null @@ -1,142 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Golem; - -import java.util.HashSet; - -import org.bukkit.Effect; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Entity; -import org.bukkit.entity.Item; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.block.Action; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilAction; -import mineplex.core.common.util.UtilAlg; -import mineplex.core.common.util.UtilMath; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class MagneticPull extends SkillActive -{ - private HashSet _active = new HashSet(); - - public MagneticPull(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - public String GetEnergyString() - { - return "Energy: 16 per Second"; - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (player.getLocation().getBlock().getTypeId() == 8 || player.getLocation().getBlock().getTypeId() == 9) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in water.")); - return false; - } - - return true; - } - - @Override - public void Skill(Player player, int level) - { - _active.add(player); - - player.getWorld().playSound(player.getLocation(), Sound.IRONGOLEM_DEATH, 0.6f, 0.6f); - } - - - @EventHandler - public void Energy(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - for (Player cur : GetUsers()) - { - if (!_active.contains(cur)) - continue; - - if (!cur.isBlocking()) - { - _active.remove(cur); - continue; - } - - //Level - int level = getLevel(cur); - if (level == 0) - { - _active.remove(cur); - continue; - } - - if (!Factory.Energy().Use(cur, GetName(), 2 - (level * 0.1), true, true)) - { - _active.remove(cur); - continue; - } - - //Effect - cur.getWorld().playEffect(cur.getLocation(), Effect.STEP_SOUND, 42); - - //Pull - for (int i=0 ; i<=4 + (2*level) ; i++) - Pull(cur, cur.getEyeLocation().add(cur.getLocation().getDirection().multiply(i))); - } - } - - public void Pull(Player player, Location loc) - { - for (Entity other : player.getWorld().getEntities()) - { - if (!(other instanceof LivingEntity) && !(other instanceof Item)) - continue; - - if (player.equals(other)) - continue; - - if (UtilMath.offset(player, other) < 2 || UtilMath.offset(loc, other.getLocation()) > 2 + ((getLevel(player) * 0.5))) - continue; - - if (other instanceof Player) - { - if (!Factory.Relation().CanHurt(player, (Player)other)) - continue; - } - - UtilAction.velocity(other, UtilAlg.getTrajectory2d(other, player), - 0.2, false, 0, 0, 1, true); - } - } - - @Override - public void Reset(Player player) - { - _active.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticPull.java.orig b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticPull.java.orig deleted file mode 100644 index c03db462e..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticPull.java.orig +++ /dev/null @@ -1,142 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Golem; - -import java.util.HashSet; - -import org.bukkit.Effect; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Entity; -import org.bukkit.entity.Item; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.block.Action; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilAction; -import mineplex.core.common.util.UtilAlg; -import mineplex.core.common.util.UtilMath; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class MagneticPull extends SkillActive -{ - private HashSet _active = new HashSet(); - - public MagneticPull(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - public String GetEnergyString() - { - return "Energy: 16 per Second"; - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (player.getLocation().getBlock().getTypeId() == 8 || player.getLocation().getBlock().getTypeId() == 9) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in water.")); - return false; - } - - return true; - } - - @Override - public void Skill(Player player, int level) - { - _active.add(player); - - player.getWorld().playSound(player.getLocation(), Sound.IRONGOLEM_DEATH, 0.6f, 0.6f); - } - - - @EventHandler - public void Energy(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - for (Player cur : GetUsers()) - { - if (!_active.contains(cur)) - continue; - - if (!cur.isBlocking()) - { - _active.remove(cur); - continue; - } - - //Level - int level = GetLevel(cur); - if (level == 0) - { - _active.remove(cur); - continue; - } - - if (!Factory.Energy().use(cur, GetName(), 2 - (level * 0.1), true, true)) - { - _active.remove(cur); - continue; - } - - //Effect - cur.getWorld().playEffect(cur.getLocation(), Effect.STEP_SOUND, 42); - - //Pull - for (int i=0 ; i<=4 + (2*level) ; i++) - Pull(cur, cur.getEyeLocation().add(cur.getLocation().getDirection().multiply(i))); - } - } - - public void Pull(Player player, Location loc) - { - for (Entity other : player.getWorld().getEntities()) - { - if (!(other instanceof LivingEntity) && !(other instanceof Item)) - continue; - - if (player.equals(other)) - continue; - - if (UtilMath.offset(player, other) < 2 || UtilMath.offset(loc, other.getLocation()) > 2 + ((GetLevel(player) * 0.5))) - continue; - - if (other instanceof Player) - { - if (!Factory.Relation().CanHurt(player, (Player)other)) - continue; - } - - UtilAction.velocity(other, UtilAlg.getTrajectory2d(other, player), - 0.2, false, 0, 0, 1, true); - } - } - - @Override - public void Reset(Player player) - { - _active.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticRepel.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticRepel.java deleted file mode 100644 index e4d0c8293..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Golem/MagneticRepel.java +++ /dev/null @@ -1,98 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Golem; - -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Entity; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; -import org.bukkit.event.block.Action; -import org.bukkit.util.Vector; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilAction; -import mineplex.core.common.util.UtilAlg; -import mineplex.core.common.util.UtilMath; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class MagneticRepel extends SkillActive -{ - public MagneticRepel(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (player.getLocation().getBlock().getTypeId() == 8 || player.getLocation().getBlock().getTypeId() == 9) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in water.")); - return false; - } - - return true; - } - - @Override - public void Skill(Player player, int level) - { - //Repel - for (Entity other : player.getWorld().getEntities()) - { - if (!(other instanceof LivingEntity)) - continue; - - if (player.equals(other)) - continue; - - double offset = UtilMath.offset(player, other); - double maxOffset = 6 + (level * 2); - - if (offset > maxOffset) - continue; - - if (other instanceof Player) - { - if (!Factory.Relation().CanHurt(player, (Player)other)) - continue; - } - - double power = 0.5 + (0.5 *((maxOffset - offset) / maxOffset)); - - Vector vel = UtilAlg.getTrajectory(player, other); - vel.setY(Math.min(0.3, vel.getY())); - vel.normalize(); - - UtilAction.velocity(other, vel, - power * (2 + (level * 0.5)), false, 0, 0.8, 0.8, true); - } - - //Inform - UtilPlayer.message(player, F.main(GetClassType().name(), "You used " + F.skill(GetName(level)) + ".")); - - //Sound - for (int i=0 ; i<3 ; i++) - player.getWorld().playSound(player.getLocation(), Sound.FIZZ, 2f, 0.6f); - - player.getWorld().playSound(player.getLocation(), Sound.IRONGOLEM_DEATH, 2f, 2f); - } - - @Override - public void Reset(Player player) - { - - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Needler.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Needler.java deleted file mode 100644 index 84d549949..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Needler.java +++ /dev/null @@ -1,211 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider; - -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; - -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Arrow; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; -import org.bukkit.entity.Projectile; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.block.Action; -import org.bukkit.event.entity.EntityDamageEvent.DamageCause; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.recharge.Recharge; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilTime; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class Needler extends SkillActive -{ - private HashMap _stored = new HashMap(); - private HashMap _fired = new HashMap(); - - private HashSet _arrows = new HashSet(); - - private boolean _tick = false; - - public Needler(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - return true; - } - - @Override - public void Skill(Player player, int level) - { - - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - _tick = !_tick; - - if (_tick) - return; - - for (Player cur : GetUsers()) - { - if (!cur.isBlocking()) - continue; - - //Level - int level = getLevel(cur); - if (level == 0) - continue; - //Water - if (cur.getLocation().getBlock().isLiquid()) - { - UtilPlayer.message(cur, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in liquids.")); - continue; - } - - //Use Charge - if (!UseCharge(cur)) - continue; - - //Use Energy - Factory.Energy().Use(cur, GetName(), 3 - (0.2 * level), true, false); - - Arrow arrow = cur.getWorld().spawnArrow(cur.getEyeLocation().add(cur.getLocation().getDirection()), - cur.getLocation().getDirection(), 1.6f + (level * 0.4f), 2); - arrow.setShooter(cur); - _arrows.add(arrow); - - //Set Fired - _fired.put(cur, System.currentTimeMillis()); - - //Sound - cur.getWorld().playSound(cur.getLocation(), Sound.SPIDER_IDLE, 0.8f, 2f); - } - } - - @EventHandler(priority = EventPriority.LOW) - public void Damage(CustomDamageEvent event) - { - if (event.GetCause() != DamageCause.PROJECTILE) - return; - - Projectile projectile = event.GetProjectile(); - if (projectile == null) return; - - if (!_arrows.remove(projectile)) - return; - - Player damager = event.GetDamagerPlayer(true); - if (damager == null) return; - - LivingEntity damagee = event.GetDamageeEntity(); - if (damagee == null) return; - - event.SetCancelled(GetName()); - - //Damage Event - Factory.Damage().NewDamageEvent(damagee, damager, null, - DamageCause.THORNS, 2, true, true, false, - damager.getName(), GetName()); - - Factory.Condition().Factory().Poison(GetName(), damagee, damager, 2, 0, false, true); - } - - public boolean UseCharge(Player player) - { - if (!_stored.containsKey(player)) - return false; - - int charges = _stored.get(player); - - if (charges <= 0) - return false; - - _stored.put(player, charges-1); - player.setLevel(charges-1); - - return true; - } - - @EventHandler - public void Recharge(UpdateEvent event) - { - for (Player cur : GetUsers()) - if (!_stored.containsKey(cur)) - { - _stored.put(cur, 0); - } - else - { - //Dont recharge while firing - if (_fired.containsKey(cur)) - if (!UtilTime.elapsed(_fired.get(cur), 1000 - (getLevel(cur) * 50))) - continue; - - int charges = _stored.get(cur); - - if (charges >= 3 + (1 * getLevel(cur))) - continue; - - if (!Recharge.Instance.use(cur, GetName() + " Recharge", 100 - (getLevel(cur) * 10), false)) - continue; - - charges += 1; - - _stored.put(cur, charges); - - cur.setLevel(charges); - } - } - - @EventHandler - public void Clean(UpdateEvent event) - { - if (event.getType() != UpdateType.SEC) - return; - - for (Iterator arrowIterator = _arrows.iterator(); arrowIterator.hasNext();) - { - Arrow arrow = arrowIterator.next(); - - if (arrow.isDead() || !arrow.isValid() || arrow.getTicksLived() > 300) - { - arrowIterator.remove(); - arrow.remove(); - } - } - } - - @Override - public void Reset(Player player) - { - _stored.remove(player); - _fired.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Needler.java.orig b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Needler.java.orig deleted file mode 100644 index 539bfb439..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Needler.java.orig +++ /dev/null @@ -1,211 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider; - -import java.util.HashMap; -import java.util.HashSet; -import java.util.Iterator; - -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Arrow; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; -import org.bukkit.entity.Projectile; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.block.Action; -import org.bukkit.event.entity.EntityDamageEvent.DamageCause; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.recharge.Recharge; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilTime; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class Needler extends SkillActive -{ - private HashMap _stored = new HashMap(); - private HashMap _fired = new HashMap(); - - private HashSet _arrows = new HashSet(); - - private boolean _tick = false; - - public Needler(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - return true; - } - - @Override - public void Skill(Player player, int level) - { - - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - _tick = !_tick; - - if (_tick) - return; - - for (Player cur : GetUsers()) - { - if (!cur.isBlocking()) - continue; - - //Level - int level = GetLevel(cur); - if (level == 0) - continue; - //Water - if (cur.getLocation().getBlock().isLiquid()) - { - UtilPlayer.message(cur, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in liquids.")); - continue; - } - - //Use Charge - if (!UseCharge(cur)) - continue; - - //Use Energy - Factory.Energy().use(cur, GetName(), 3 - (0.2 * level), true, false); - - Arrow arrow = cur.getWorld().spawnArrow(cur.getEyeLocation().add(cur.getLocation().getDirection()), - cur.getLocation().getDirection(), 1.6f + (level * 0.4f), 2); - arrow.setShooter(cur); - _arrows.add(arrow); - - //Set Fired - _fired.put(cur, System.currentTimeMillis()); - - //Sound - cur.getWorld().playSound(cur.getLocation(), Sound.SPIDER_IDLE, 0.8f, 2f); - } - } - - @EventHandler(priority = EventPriority.LOW) - public void Damage(CustomDamageEvent event) - { - if (event.GetCause() != DamageCause.PROJECTILE) - return; - - Projectile projectile = event.GetProjectile(); - if (projectile == null) return; - - if (!_arrows.remove(projectile)) - return; - - Player damager = event.GetDamagerPlayer(true); - if (damager == null) return; - - LivingEntity damagee = event.GetDamageeEntity(); - if (damagee == null) return; - - event.SetCancelled(GetName()); - - //Damage Event - Factory.Damage().NewDamageEvent(damagee, damager, null, - DamageCause.THORNS, 2, true, true, false, - damager.getName(), GetName()); - - Factory.Condition().Factory().Poison(GetName(), damagee, damager, 2, 0, false, true); - } - - public boolean UseCharge(Player player) - { - if (!_stored.containsKey(player)) - return false; - - int charges = _stored.get(player); - - if (charges <= 0) - return false; - - _stored.put(player, charges-1); - player.setLevel(charges-1); - - return true; - } - - @EventHandler - public void Recharge(UpdateEvent event) - { - for (Player cur : GetUsers()) - if (!_stored.containsKey(cur)) - { - _stored.put(cur, 0); - } - else - { - //Dont recharge while firing - if (_fired.containsKey(cur)) - if (!UtilTime.elapsed(_fired.get(cur), 1000 - (GetLevel(cur) * 50))) - continue; - - int charges = _stored.get(cur); - - if (charges >= 3 + (1 * GetLevel(cur))) - continue; - - if (!Recharge.Instance.use(cur, GetName() + " Recharge", 100 - (GetLevel(cur) * 10), false)) - continue; - - charges += 1; - - _stored.put(cur, charges); - - cur.setLevel(charges); - } - } - - @EventHandler - public void Clean(UpdateEvent event) - { - if (event.getType() != UpdateType.SEC) - return; - - for (Iterator arrowIterator = _arrows.iterator(); arrowIterator.hasNext();) - { - Arrow arrow = arrowIterator.next(); - - if (arrow.isDead() || !arrow.isValid() || arrow.getTicksLived() > 300) - { - arrowIterator.remove(); - arrow.remove(); - } - } - } - - @Override - public void Reset(Player player) - { - _stored.remove(player); - _fired.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Pounce.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Pounce.java deleted file mode 100644 index c6f9e6b79..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/Pounce.java +++ /dev/null @@ -1,89 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider; - -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.block.Action; -import org.bukkit.event.entity.EntityDamageEvent.DamageCause; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilAction; -import mineplex.core.common.util.UtilTime; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class Pounce extends SkillActive -{ - public Pounce(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - return true; - } - - @EventHandler(priority = EventPriority.LOW) - public void EndDamager(CustomDamageEvent event) - { - if (event.IsCancelled()) - return; - - if (event.GetCause() != DamageCause.ENTITY_ATTACK) - return; - - Player damager = event.GetDamagerPlayer(true); - if (damager == null) return; - - int level = getLevel(damager); - if (level == 0) return; - - event.SetCancelled(GetName()); - - Skill(damager, level); - } - - @Override - public void Skill(Player player, int level) - { - if (player.getLocation().getBlock().isLiquid()) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in liquids.")); - return; - } - - if (UtilTime.elapsed(Factory.Movement().Get(player).LastGrounded, 1000)) - { - UtilPlayer.message(player, F.main(GetClassType().name(), "You cannot use " + F.skill(GetName()) + " while airborne.")); - } - - //Action - UtilAction.velocity(player, 0.7 + (0.1 * level), 0.2, 0.8, true); - - //Effect - player.getWorld().playSound(player.getLocation(), Sound.SPIDER_DEATH, 0.5f, 2f); - } - - @Override - public void Reset(Player player) - { - - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/SpiderForm.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/SpiderForm.java deleted file mode 100644 index 29bc76b73..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/SpiderForm.java +++ /dev/null @@ -1,66 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.FormBase; - -import org.bukkit.ChatColor; -import org.bukkit.entity.EntityType; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; - -public class SpiderForm extends FormBase -{ - public SpiderForm(SkillFactory skills, String name, ClassType classType, - SkillType skillType, int cost, int levels) - { - super(skills, name, classType, skillType, cost, levels, - EntityType.SPIDER, new String[] - { - "Venomous Spines", - "Spin Web", - "Pounce" - }); - - SetDesc(new String[] - { - ChatColor.WHITE + "Passives:", - "* Slow II", - "", - "", - ChatColor.WHITE + "Attack: " + ChatColor.GREEN + "Pounce", - "Pounce with 0.7 + 0.1pL Velocity", - "", - "", - ChatColor.WHITE + "Sword Skill: " + ChatColor.GREEN + "Needler", - "Spit out a flurry of needles;", - "* Capacity of 3 + 1pL", - "", - "", - ChatColor.WHITE + "Axe Skill: " + ChatColor.GREEN + "Spin Web", - "Spin a temporary web;", - "* Lasts 5 + 1pL seconds" - }); - } - - @Override - public void UnapplyMorph(Player player) - { - Factory.Condition().EndCondition(player, null, GetName()); - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() != UpdateType.FAST) - return; - - for (Player cur : GetMorphedUsers()) - { - Factory.Condition().Factory().Protection(GetName(), cur, cur, 1.9, 0, false, false); - Factory.Condition().Factory().Slow(GetName(), cur, cur, 1.9, 0, false, false, false); - } - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/SpinWeb.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/SpinWeb.java deleted file mode 100644 index 230b78ec5..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Spider/SpinWeb.java +++ /dev/null @@ -1,110 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider; - -import org.bukkit.Effect; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.block.Block; -import org.bukkit.enchantments.Enchantment; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.block.Action; -import org.bukkit.event.player.PlayerInteractEvent; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilBlock; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class SpinWeb extends SkillActive -{ - public SpinWeb(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - @EventHandler(priority = EventPriority.LOW) - public void Interact(PlayerInteractEvent event) - { - Player player = event.getPlayer(); - - //Check Block - if (UtilBlock.usable(event.getClickedBlock())) - return; - - //Check Action - if (!_actionSet.contains(event.getAction())) - return; - - //Check Material - if (!_itemSet.contains(player.getItemInHand().getType())) - return; - - //Level - int level = getLevel(player); - if (level <= 0) return; - - if (!CustomCheck(player, level)) - return; - - //Unique Weapon - if (player.getItemInHand().getEnchantments().containsKey(Enchantment.ARROW_DAMAGE)) - return; - - //Block - Block block = event.getClickedBlock(); - if (block == null) return; - - block = block.getRelative(event.getBlockFace()); - - //Check Energy - if (!Factory.Energy().Use(player, GetName(), 20 - (level * 2), true, true)) - return; - - //Block - Factory.BlockRestore().Add(block, 30, (byte)0, 5000 + (1000 * level)); - - //Effect - block.getWorld().playEffect(block.getLocation(), Effect.STEP_SOUND, 30); - - //Sound - player.getWorld().playSound(player.getLocation(), Sound.SPIDER_IDLE, 1f, 0.3f); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (player.getLocation().getBlock().getTypeId() == 8 || player.getLocation().getBlock().getTypeId() == 9) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in water.")); - return false; - } - - return true; - } - - @Override - public void Skill(Player player, int level) - { - - } - - @Override - public void Reset(Player player) - { - - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/Construction.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/Construction.java deleted file mode 100644 index 18ba3b99d..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/Construction.java +++ /dev/null @@ -1,119 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Squid; - -import org.bukkit.Effect; -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.block.Block; -import org.bukkit.enchantments.Enchantment; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.EventPriority; -import org.bukkit.event.block.Action; -import org.bukkit.event.player.PlayerInteractEvent; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.common.util.UtilBlock; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class Construction extends SkillActive -{ - public Construction(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - } - - @Override - @EventHandler(priority = EventPriority.LOW) - public void Interact(PlayerInteractEvent event) - { - Player player = event.getPlayer(); - - //Check Block - if (UtilBlock.usable(event.getClickedBlock())) - return; - - //Check Action - if (!_actionSet.contains(event.getAction())) - return; - - //Check Material - if (!_itemSet.contains(player.getItemInHand().getType())) - return; - - //Level - int level = getLevel(player); - if (level <= 0) return; - - if (!CustomCheck(player, level)) - return; - - //Unique Weapon - if (player.getItemInHand().getEnchantments().containsKey(Enchantment.ARROW_DAMAGE)) - return; - - //Block - Block block = event.getClickedBlock(); - if (block == null) return; - - if (event.getAction() == Action.RIGHT_CLICK_BLOCK) - block = block.getRelative(event.getBlockFace()); - - if (block.getTypeId() != 8 && block.getTypeId() != 9 && event.getAction() == Action.RIGHT_CLICK_BLOCK) - return; - - if (block.getTypeId() != 79 && event.getAction() == Action.LEFT_CLICK_BLOCK) - return; - - //Check Energy - if (!Factory.Energy().Use(player, GetName(), 12 - (level * 2), true, true)) - return; - - //Block - if (block.getTypeId() == 79) - { - block.setTypeId(8); - - //Sound - player.getWorld().playSound(player.getLocation(), Sound.SPLASH, 0.5f, 0.5f); - } - else - { - block.setTypeId(79); - - //Sound - player.getWorld().playSound(player.getLocation(), Sound.ORB_PICKUP, 0.5f, 3f); - } - - //Effect - block.getWorld().playEffect(block.getLocation(), Effect.STEP_SOUND, 80); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - return true; - } - - @Override - public void Skill(Player player, int level) - { - - } - - @Override - public void Reset(Player player) - { - - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/Propel.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/Propel.java deleted file mode 100644 index 2ae1c2e0e..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/Propel.java +++ /dev/null @@ -1,118 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Squid; - -import java.util.HashMap; - -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.block.Action; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.F; -import mineplex.core.common.util.UtilAction; -import mineplex.core.common.util.UtilTime; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class Propel extends SkillActive -{ - private HashMap _active = new HashMap(); - - public Propel(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - - SetDesc(new String[] - { - "" - }); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (!player.getLocation().getBlock().isLiquid()) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " out of water.")); - return false; - } - - return true; - } - - @Override - public void Skill(Player player, int level) - { - //Velocity - UtilAction.velocity(player, 0.6 + (0.2 * level), 0.2, 2, false); - - //Store - _active.put(player, System.currentTimeMillis()); - - //Sound - player.getWorld().playSound(player.getLocation(), Sound.SPLASH2, 1.5f, 1.5f); - } - - @EventHandler - public void Reuse(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - for (Player cur : GetUsers()) - { - if (!_active.containsKey(cur)) - continue; - - if (!cur.isBlocking()) - { - _active.remove(cur); - continue; - } - - //Level - int level = getLevel(cur); - if (level == 0) - { - _active.remove(cur); - continue; - } - - //Time - if (!UtilTime.elapsed(_active.get(cur), 400)) - continue; - - if (!cur.getLocation().getBlock().isLiquid()) - continue; - - //Thrust - UtilAction.velocity(cur, 0.3 + (0.1 * level), 0.1, 2, false); - - //Store - _active.put(cur, System.currentTimeMillis()); - - //Sound - cur.getWorld().playSound(cur.getLocation(), Sound.SPLASH2, 0.5f, 1f); - } - } - - @Override - public void Reset(Player player) - { - _active.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/SquidForm.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/SquidForm.java deleted file mode 100644 index cfd278488..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Squid/SquidForm.java +++ /dev/null @@ -1,115 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Squid; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.minecraft.game.core.damage.CustomDamageEvent; -import mineplex.core.common.util.UtilEnt; -import mineplex.core.common.util.UtilServer; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.FormBase; - -import org.bukkit.ChatColor; -import org.bukkit.entity.EntityType; -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.util.Vector; - -public class SquidForm extends FormBase -{ - public SquidForm(SkillFactory skills, String name, ClassType classType, - SkillType skillType, int cost, int levels) - { - super(skills, name, classType, skillType, cost, levels, - EntityType.SQUID, new String[] - { - "Propel", - "Ice Construction" - }); - - SetDesc(new String[] - { - ChatColor.WHITE + "Passives:", - "* Unlimited Air", - "* Protection II", - "", - "", - ChatColor.WHITE + "Attack: " + ChatColor.GREEN + "Suffocate", - "* Target has 1.5 second of air removed", - "* Target is pushed downward slightly", - "", - "", - ChatColor.WHITE + "Sword Skill: " + ChatColor.GREEN + "Swim", - "Push Block to thrust forwards;", - "* Velocity of 0.6 + 0.2pL", - "", - "Hold Block to swim;", - "* Velocity of 0.3 + 0.1pL", - "", - "", - ChatColor.WHITE + "Axe Skill: " + ChatColor.GREEN + "Ice Construction", - "Right-Click to freeze water", - "Left-Click to melt ice" - }); - } - - - @EventHandler - public void Unmorph(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - for (Player cur : UtilServer.getPlayers()) - { - if (!IsMorphed(cur)) - continue; - - if (UtilEnt.isGrounded(cur) && !cur.getLocation().getBlock().isLiquid()) - Unmorph(cur); - } - } - - @Override - public void UnapplyMorph(Player player) - { - Factory.Condition().EndCondition(player, null, GetName()); - } - - @EventHandler(priority = EventPriority.HIGH) - public void Attack(CustomDamageEvent event) - { - if (event.IsCancelled()) - return; - - if (event.GetCause() != DamageCause.ENTITY_ATTACK) - return; - - Player damager = event.GetDamagerPlayer(false); - if (damager == null) return; - - if (!IsMorphed(damager)) - return; - - event.SetKnockback(false); - - //Attack - event.GetDamageeEntity().setRemainingAir(Math.max(0, event.GetDamageeEntity().getRemainingAir() - 30)); - event.GetDamageeEntity().setVelocity(new Vector(0, -0.5, 0)); - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() != UpdateType.FAST) - return; - - for (Player cur : GetMorphedUsers()) - { - cur.setRemainingAir(cur.getMaximumAir()); - Factory.Condition().Factory().Protection(GetName(), cur, cur, 1.9, 1, false, false); - } - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Wolf/WolfForm.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Wolf/WolfForm.java deleted file mode 100644 index 2316b09cb..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Forms/Wolf/WolfForm.java +++ /dev/null @@ -1,64 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Wolf; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.FormBase; - -import org.bukkit.entity.EntityType; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; - -public class WolfForm extends FormBase -{ - public WolfForm(SkillFactory skills, String name, ClassType classType, - SkillType skillType, int cost, int levels) - { - super(skills, name, classType, skillType, cost, levels, - EntityType.WOLF, new String[] - { - //skills.GetSkill("Magnetic Pull"), - //skills.GetSkill("Magnetic Repel") - }); - - SetDesc(new String[] - { - "Dire Wolf Form (Harass / Ganking);", - "* Speed I", - "* Protection I", - "* Regeneration I", - "", - "", - "Axe Skill: Howl", - "Nearby allies receive;", - "* Speed III for 3 + 1pL seconds", - "", - "", - "Sword Skill: Bite", - "Hold Block to bite target;", - "* Slow IV for 2 seconds", - "* You are pulled along with target" - }); - } - - @Override - public void UnapplyMorph(Player player) - { - Factory.Condition().EndCondition(player, null, GetName()); - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() != UpdateType.FAST) - return; - - for (Player cur : GetMorphedUsers()) - { - Factory.Condition().Factory().Protection(GetName(), cur, cur, 1.9, 0, false, false); - Factory.Condition().Factory().Speed(GetName(), cur, cur, 1.9, 0, false, false); - Factory.Condition().Factory().Regen(GetName(), cur, cur, 1.9, 0, false, false); - } - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Polysmash.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Polysmash.java deleted file mode 100644 index a1280a649..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Polysmash.java +++ /dev/null @@ -1,146 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter; - -import java.util.HashSet; - -import org.bukkit.Material; -import org.bukkit.Sound; -import org.bukkit.entity.LivingEntity; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.block.Action; -import org.bukkit.event.player.PlayerInteractEntityEvent; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.common.util.F; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilMath; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.UtilServer; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; -import mineplex.minecraft.game.classcombat.Skill.event.SkillTriggerEvent; - -public class Polysmash extends SkillActive -{ - private HashSet _used = new HashSet(); - - public Polysmash(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - - SetDesc(new String[] - { - "Turn target enemy into a sheep", - "for 6 seconds. While in sheep form,", - "players have Slow and Silence." - }); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (_used.contains(player)) - return false; - - return true; - } - - @Override - public void Skill(Player player, int level) - { - //Inform - UtilPlayer.message(player, F.main(GetClassType().name(), "You missed " + F.skill(GetName()) + ".")); - } - - @EventHandler - public void Miss(UpdateEvent event) - { - if (event.getType() != UpdateType.TICK) - return; - - _used.clear(); - } - - public boolean CanUse(Player player) - { - int level = getLevel(player); - if (level == 0) - return false; - - //Check Material - if (!_itemSet.contains(player.getItemInHand().getType())) - return false; - - //Check Allowed - SkillTriggerEvent trigger = new SkillTriggerEvent(player, GetName(), GetClassType()); - UtilServer.getServer().getPluginManager().callEvent(trigger); - if (trigger.IsCancelled()) - return false; - - //Check Energy/Recharge - if (!EnergyRechargeCheck(player, level)) - return false; - - //Allow - return true; - } - - @EventHandler - public void Hit(PlayerInteractEntityEvent event) - { - Player player = event.getPlayer(); - - //Level - int level = getLevel(player); - if (level == 0) return; - - if (!CanUse(player)) - return; - - if (event.getRightClicked() == null) - return; - - if (!(event.getRightClicked() instanceof LivingEntity)) - return; - - LivingEntity ent = (LivingEntity)event.getRightClicked(); - - if (UtilMath.offset(player, ent) > 3) - { - UtilPlayer.message(player, F.main(GetClassType().name(), "You missed " + F.skill(GetName()) + ".")); - return; - } - - //Set Used - _used.add(player); - - //Condition - Factory.Condition().Factory().Slow(GetName(), ent, player, 5, 0, false, true, false, false); - Factory.Condition().Factory().Silence(GetName(), ent, player, 5, false, true); - - //Effect - ent.getWorld().playSound(ent.getLocation(), Sound.SHEEP_IDLE, 2f, 1f); - ent.getWorld().playSound(ent.getLocation(), Sound.SHEEP_IDLE, 2f, 1f); - - //Inform - UtilPlayer.message(player, F.main(GetClassType().name(), "You used " + F.skill(GetName()) + ".")); - UtilPlayer.message(ent, F.main(GetClassType().name(), F.name(player.getName()) + " hit you with " + F.skill(GetName(level)) + ".")); - } - - @Override - public void Reset(Player player) - { - _used.remove(player); - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Shifter.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Shifter.java deleted file mode 100644 index 093a03cb5..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/Shifter.java +++ /dev/null @@ -1,56 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter; - -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.inventory.PlayerInventory; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.minecraft.game.classcombat.Skill.Skill; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class Shifter extends Skill -{ - public Shifter(SkillFactory skills, String name, ClassType classType, SkillType skillType, int cost, int levels) - { - super(skills, name, classType, skillType, cost, levels); - - SetDesc(new String[] - { - "Permanent Protection II." - }); - } - - @EventHandler - public void Update(UpdateEvent event) - { - if (event.getType() == UpdateType.FAST) - for (Player cur : GetUsers()) - Factory.Condition().Factory().Protection(GetName(), cur, cur, 1.9, 1, false, false, false); - - if (event.getType() == UpdateType.SLOWER) - for (Player cur : GetUsers()) - { - PlayerInventory inv = cur.getInventory(); - - if (inv.getHelmet() != null && inv.getHelmet().getDurability() > 0) - inv.getHelmet().setDurability((short) (inv.getHelmet().getDurability()-1)); - - if (inv.getChestplate() != null && inv.getChestplate().getDurability() > 0) - inv.getChestplate().setDurability((short) (inv.getChestplate().getDurability()-1)); - - if (inv.getLeggings() != null && inv.getLeggings().getDurability() > 0) - inv.getLeggings().setDurability((short) (inv.getLeggings().getDurability()-1)); - - if (inv.getBoots() != null && inv.getBoots().getDurability() > 0) - inv.getBoots().setDurability((short) (inv.getBoots().getDurability()-1)); - } - } - - @Override - public void Reset(Player player) - { - - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/TreeShift.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/TreeShift.java deleted file mode 100644 index 4fa3fe8ee..000000000 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/Shifter/TreeShift.java +++ /dev/null @@ -1,170 +0,0 @@ -package mineplex.minecraft.game.classcombat.Skill.Shifter; - -import java.util.HashMap; -import java.util.HashSet; - -import org.bukkit.Effect; -import org.bukkit.Location; -import org.bukkit.Material; -import org.bukkit.block.Block; -import org.bukkit.block.BlockFace; -import org.bukkit.entity.Player; -import org.bukkit.event.EventHandler; -import org.bukkit.event.block.Action; - -import mineplex.minecraft.game.classcombat.Class.IPvpClass.ClassType; -import mineplex.core.common.util.F; -import mineplex.core.updater.event.UpdateEvent; -import mineplex.core.updater.UpdateType; -import mineplex.core.common.util.UtilPlayer; -import mineplex.core.common.util.UtilServer; -import mineplex.core.common.util.UtilBlock; -import mineplex.core.common.util.UtilMath; -import mineplex.minecraft.game.classcombat.Skill.SkillActive; -import mineplex.minecraft.game.classcombat.Skill.SkillFactory; - -public class TreeShift extends SkillActive -{ - private HashMap trees = new HashMap(); - - public TreeShift(SkillFactory skills, String name, ClassType classType, SkillType skillType, - int cost, int levels, - int energy, int energyMod, - long recharge, long rechargeMod, boolean rechargeInform, - Material[] itemArray, - Action[] actionArray) - { - super(skills, name, classType, skillType, - cost, levels, - energy, energyMod, - recharge, rechargeMod, rechargeInform, - itemArray, - actionArray); - - SetDesc(new String[] - { - "Creates an illusionary tree at target location.", - "Other players cannot attack or see through it.", - "You view it as a sapling, and can attack over it.", - "Lasts 2 + 2pL seconds." - }); - } - - @Override - public boolean CustomCheck(Player player, int level) - { - if (player.getLocation().getBlock().getTypeId() == 8 || player.getLocation().getBlock().getTypeId() == 9) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " in water.")); - return false; - } - - Block block = player.getTargetBlock(null, 0); - if (UtilMath.offset(block.getLocation().add(0.5, 0.5, 0.5), player.getLocation()) > 8 + level) - { - UtilPlayer.message(player, F.main("Skill", "You cannot use " + F.skill(GetName()) + " so far away.")); - return false; - } - - return true; - } - - @Override - public void Skill(Player player, int level) - { - HashMap tree = new HashMap(); - - Block block = player.getTargetBlock(null, 0); - - //Show to Player - final Player fPlayer = player; - final Location fLoc = block.getLocation().add(0, 1, 0); - UtilServer.getServer().getScheduler().scheduleSyncDelayedTask(Factory.GetPlugin(), new Runnable() - { - public void run() - { - fPlayer.sendBlockChange(fLoc, 6, (byte)0); - } - }, 0); - - - - //Generate Tree - for (int i=0 ; i<6 ; i++) - { - block = block.getRelative(BlockFace.UP); - - if (block.getTypeId() != 0) - { - block = block.getRelative(BlockFace.DOWN); - break; - } - - tree.put(block.getLocation(), Material.LOG); - } - - if (tree.size() > 5) - { - for (Block leaf : UtilBlock.getInRadius(block.getLocation(), 2.5d).keySet()) - { - if (!tree.containsKey(leaf.getLocation()) && leaf.getTypeId() == 0) - { - tree.put(leaf.getLocation(), Material.LEAVES); - } - } - } - - - //Show Tree - for (Location loc : tree.keySet()) - { - trees.put(loc, System.currentTimeMillis() + (2000 + (2000 * level))); - - for (Player other : player.getWorld().getPlayers()) - { - if (other.equals(player)) - continue; - - other.sendBlockChange(loc, tree.get(loc), (byte)0); - - if (tree.get(loc) == Material.LOG) - other.playEffect(loc, Effect.STEP_SOUND, 17); - } - } - - //Inform - UtilPlayer.message(player, F.main(GetClassType().name(), "You used " + F.skill(GetName(level)) + ".")); - } - - @EventHandler - public void Detree(UpdateEvent event) - { - if (event.getType() != UpdateType.FAST) - return; - - if (trees.isEmpty()) - return; - - HashSet remove = new HashSet(); - - for (Location loc : trees.keySet()) - { - if (System.currentTimeMillis() > trees.get(loc)) - remove.add(loc); - } - - for (Location loc : remove) - { - for (Player player : loc.getWorld().getPlayers()) - player.sendBlockChange(loc, 0, (byte)0); - - trees.remove(loc); - } - } - - @Override - public void Reset(Player player) - { - - } -} diff --git a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/SkillFactory.java b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/SkillFactory.java index 23f5a6730..beac334b8 100644 --- a/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/SkillFactory.java +++ b/Plugins/Mineplex.Minecraft.Game.ClassCombat/src/mineplex/minecraft/game/classcombat/Skill/SkillFactory.java @@ -23,19 +23,6 @@ import mineplex.minecraft.game.classcombat.Skill.Knight.*; import mineplex.minecraft.game.classcombat.Skill.Mage.*; import mineplex.minecraft.game.classcombat.Skill.Mage.Void; import mineplex.minecraft.game.classcombat.Skill.Ranger.*; -import mineplex.minecraft.game.classcombat.Skill.Shifter.*; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Chicken.ChickenForm; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Chicken.Flap; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Golem.GolemForm; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Golem.MagneticPull; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Golem.MagneticRepel; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider.Needler; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider.Pounce; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider.SpiderForm; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Spider.SpinWeb; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Squid.Construction; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Squid.Propel; -import mineplex.minecraft.game.classcombat.Skill.Shifter.Forms.Squid.SquidForm; import mineplex.minecraft.game.classcombat.Skill.repository.SkillRepository; import mineplex.minecraft.game.classcombat.Skill.repository.token.SkillToken; import mineplex.minecraft.game.core.IRelation; @@ -509,99 +496,6 @@ public class SkillFactory extends MiniPlugin implements ISkillFactory //AddSkill(new Fletcher(this, "Fletcher", ClassType.Ranger, SkillType.PassiveB, 5, 3)); } - public void AddShifter() - { - AddSkill(new Shifter(this, "Shifter Class", ClassType.Shifter, SkillType.Class, 0, 1)); - - //Axe - AddSkill(new TreeShift(this, "Tree Shift", ClassType.Shifter, SkillType.Axe, - 0, 1, - 40, 0, - 4000, 0, true, - new Material[] {Material.IRON_AXE, Material.GOLD_AXE, Material.DIAMOND_AXE}, - new Action[] {Action.RIGHT_CLICK_AIR, Action.RIGHT_CLICK_BLOCK})); - - //Sword - AddSkill(new Polysmash(this, "Polysmash", ClassType.Shifter, SkillType.Sword, - 0, 1, - 30, 0, - 16000, 0, true, - new Material[] {Material.IRON_SWORD, Material.GOLD_SWORD, Material.DIAMOND_SWORD}, - new Action[] {Action.RIGHT_CLICK_AIR, Action.RIGHT_CLICK_BLOCK})); - - //CHICKEN========================================================================================= - AddSkill(new ChickenForm(this, "Chicken Form", ClassType.Shifter, SkillType.PassiveB, 0, 5)); - - AddSkill(new Flap(this, "Flap", ClassType.Shifter, SkillType.Sword, - 0, 1, - 5, 0, - 0, 0, true, - new Material[] {Material.IRON_SWORD, Material.GOLD_SWORD, Material.DIAMOND_SWORD}, - new Action[] {Action.RIGHT_CLICK_AIR, Action.RIGHT_CLICK_BLOCK})); - - - - //SQUID========================================================================================= - AddSkill(new SquidForm(this, "Squid Form", ClassType.Shifter, SkillType.PassiveB, 0, 5)); - - AddSkill(new Propel(this, "Propel", ClassType.Shifter, SkillType.Sword, - 0, 1, - 12, 0, - 250, 0, false, - new Material[] {Material.IRON_SWORD, Material.GOLD_SWORD, Material.DIAMOND_SWORD}, - new Action[] {Action.RIGHT_CLICK_AIR, Action.RIGHT_CLICK_BLOCK})); - - AddSkill(new Construction(this, "Ice Construction", ClassType.Shifter, SkillType.Axe, - 0, 1, - 8, 0, - 0, 0, true, - new Material[] {Material.IRON_AXE, Material.GOLD_AXE, Material.DIAMOND_AXE}, - new Action[] {Action.LEFT_CLICK_BLOCK, Action.RIGHT_CLICK_BLOCK})); - - - //GOLEM========================================================================================= - AddSkill(new GolemForm(this, "Magnetic Golem Form", ClassType.Shifter, SkillType.PassiveA, 0, 5)); - - AddSkill(new MagneticPull(this, "Magnetic Pull", ClassType.Shifter, SkillType.Sword, - 0, 1, - 0, 0, - 0, 0, true, - new Material[] {Material.IRON_SWORD, Material.GOLD_SWORD, Material.DIAMOND_SWORD}, - new Action[] {Action.RIGHT_CLICK_AIR, Action.RIGHT_CLICK_BLOCK})); - - AddSkill(new MagneticRepel(this, "Magnetic Repel", ClassType.Shifter, SkillType.Axe, - 0, 1, - 60, 0, - 30000, -3000, true, - new Material[] {Material.IRON_AXE, Material.GOLD_AXE, Material.DIAMOND_AXE}, - new Action[] {Action.RIGHT_CLICK_AIR, Action.RIGHT_CLICK_BLOCK})); - - - //SPIDER========================================================================================= - AddSkill(new SpiderForm(this, "Spitting Spider Form", ClassType.Shifter, SkillType.PassiveA, 0, 5)); - - AddSkill(new Needler(this, "Needler", ClassType.Shifter, SkillType.Sword, - 0, 1, - 0, 0, - 0, 0, true, - new Material[] {Material.IRON_SWORD, Material.GOLD_SWORD, Material.DIAMOND_SWORD}, - new Action[] {Action.RIGHT_CLICK_AIR, Action.RIGHT_CLICK_BLOCK})); - - AddSkill(new SpinWeb(this, "Spin Web", ClassType.Shifter, SkillType.Axe, - 0, 1, - 20, -1, - 0, 0, true, - new Material[] {Material.IRON_AXE, Material.GOLD_AXE, Material.DIAMOND_AXE}, - new Action[] {Action.RIGHT_CLICK_BLOCK})); - - AddSkill(new Pounce(this, "Pounce", ClassType.Shifter, SkillType.PassiveB, - 0, 1, - 20, 0, - 6000, 0, true, - new Material[] {Material.IRON_SWORD, Material.GOLD_SWORD, Material.DIAMOND_SWORD, Material.IRON_AXE, Material.GOLD_AXE, Material.DIAMOND_AXE}, - new Action[] {Action.LEFT_CLICK_AIR, Action.LEFT_CLICK_BLOCK})); - } - public ISkill GetSkillBySalesPackageId(int id) { return _skillSalesPackageMap.get(id); diff --git a/Plugins/Nautilus.Game.Arcade/Nautilus.Game.Arcade.iml b/Plugins/Nautilus.Game.Arcade/Nautilus.Game.Arcade.iml index a1b05bc24..fbc647369 100644 --- a/Plugins/Nautilus.Game.Arcade/Nautilus.Game.Arcade.iml +++ b/Plugins/Nautilus.Game.Arcade/Nautilus.Game.Arcade.iml @@ -9,8 +9,8 @@ - +