From 21d851fd69597b7b70ca39d0fcfc958377798e7b Mon Sep 17 00:00:00 2001 From: StrangeOne101 Date: Wed, 25 Nov 2015 12:38:36 +1300 Subject: [PATCH 01/10] Fix Op Permissions MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit • Fixes Ops not having all bending permissions (bloodbending, etc) --- src/plugin.yml | 8 +++----- 1 file changed, 3 insertions(+), 5 deletions(-) diff --git a/src/plugin.yml b/src/plugin.yml index 9da8f9da..22cd542f 100644 --- a/src/plugin.yml +++ b/src/plugin.yml @@ -21,10 +21,12 @@ permissions: bending.command.rechoose: true bending.admin.choose: true bending.ability.AvatarState: true - bending.water.Bloodbending.anytime: true + bending.water.bloodbending.anytime: true + bending.water.bloodbending: true bending.ability.Flight: true bending.ability.MetalClips.loot: true bending.ability.MetalClips.4clips: true + bending.ability.MetalClips.throw: true bending.command.import: true bending.command.toggle.all: true bending.admin.toggle: true @@ -96,7 +98,6 @@ permissions: bending.ability.PlantArmor: true bending.water.plantbending: true bending.message.nightmessage: true - bending.water.bloodbending: false bending.water.passive: true bending.water.icebending: true bending.water.healing: true @@ -124,9 +125,6 @@ permissions: bending.ability.Tremorsense: true bending.ability.Extraction: true bending.ability.MetalClips: true - bending.ability.MetalClips.loot: false - bending.ability.MetalClips.4clips: false - bending.ability.MetalClips.throw: false bending.earth.passive: true bending.earth.metalbending: true bending.earth.lavabending: true From ed131156ce70ae668239fc2c5f767120504455d8 Mon Sep 17 00:00:00 2001 From: StrangeOne101 Date: Wed, 25 Nov 2015 12:57:14 +1300 Subject: [PATCH 02/10] Fix Bloodbending in Non-Solid Blocks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit • Fixes Bloodbending not moving mobs in non-solid blocks --- .../projectkorra/projectkorra/waterbending/Bloodbending.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/com/projectkorra/projectkorra/waterbending/Bloodbending.java b/src/com/projectkorra/projectkorra/waterbending/Bloodbending.java index 1ea67aea..928f183a 100644 --- a/src/com/projectkorra/projectkorra/waterbending/Bloodbending.java +++ b/src/com/projectkorra/projectkorra/waterbending/Bloodbending.java @@ -225,7 +225,7 @@ public class Bloodbending { targetentities.remove(entity); continue; } - Location location = GeneralMethods.getTargetedLocation(player, 6); + Location location = GeneralMethods.getTargetedLocation(player, 6, 0, 6, 8, 9, 10, 11, 27, 28, 30, 31, 32, 37, 38, 39, 40, 50, 51, 55, 59, 63, 64, 65, 66, 68, 69, 70, 71, 72, 75, 76, 77, 78, 83, 93, 94, 104, 105, 111, 115, 117, 132, 141, 142, 143, 147, 148, 149, 150, 157, 175, 176, 177, 183, 184, 185, 187, 193, 194, 195, 196, 197); double distance = location.distance(newlocation); double dx, dy, dz; dx = location.getX() - newlocation.getX(); From d1d60910614fc489e4723f5aa4c10a61bf7a1a30 Mon Sep 17 00:00:00 2001 From: jedk1 Date: Tue, 1 Dec 2015 00:49:51 +0000 Subject: [PATCH 03/10] Fix NPE on update --- .../projectkorra/object/HorizontalVelocityTracker.java | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/src/com/projectkorra/projectkorra/object/HorizontalVelocityTracker.java b/src/com/projectkorra/projectkorra/object/HorizontalVelocityTracker.java index 9b1a1b68..fbef8570 100644 --- a/src/com/projectkorra/projectkorra/object/HorizontalVelocityTracker.java +++ b/src/com/projectkorra/projectkorra/object/HorizontalVelocityTracker.java @@ -102,7 +102,11 @@ public class HorizontalVelocityTracker { public static void updateAll() { for (Entity e : instances.keySet()) - instances.get(e).update(); + if (e != null) { + instances.get(e).update(); + } else { + instances.remove(e); + } } public void remove() { From bd1065daa12a47ba9d47793b0cd95f95f94563e4 Mon Sep 17 00:00:00 2001 From: Benford Date: Tue, 1 Dec 2015 00:12:28 -0500 Subject: [PATCH 04/10] Change /bending who list - /bending who list now shows appropriate elements and staff title --- .../projectkorra/command/WhoCommand.java | 61 ++++++++++++------- 1 file changed, 39 insertions(+), 22 deletions(-) diff --git a/src/com/projectkorra/projectkorra/command/WhoCommand.java b/src/com/projectkorra/projectkorra/command/WhoCommand.java index b4eab80b..f234f685 100644 --- a/src/com/projectkorra/projectkorra/command/WhoCommand.java +++ b/src/com/projectkorra/projectkorra/command/WhoCommand.java @@ -76,34 +76,51 @@ public class WhoCommand extends PKCommand { List players = new ArrayList(); for (Player player : Bukkit.getOnlinePlayers()) { String playerName = player.getName(); - + String result = ""; BendingPlayer bp = GeneralMethods.getBendingPlayer(playerName); if (bp == null) { GeneralMethods.createBendingPlayer(player.getUniqueId(), player.getName()); bp = GeneralMethods.getBendingPlayer(player.getName()); } - if (bp.getElements().size() > 1) { - players.add(GeneralMethods.getAvatarColor() + playerName); - continue; - } else if (bp.getElements().size() == 0) { - players.add(playerName); - continue; - } else if (GeneralMethods.isBender(playerName, Element.Air)) { - players.add(AirMethods.getAirColor() + playerName); - continue; - } else if (GeneralMethods.isBender(playerName, Element.Water)) { - players.add(WaterMethods.getWaterColor() + playerName); - continue; - } else if (GeneralMethods.isBender(playerName, Element.Earth)) { - players.add(EarthMethods.getEarthColor() + playerName); - continue; - } else if (GeneralMethods.isBender(playerName, Element.Chi)) { - players.add(ChiMethods.getChiColor() + playerName); - continue; - } else if (GeneralMethods.isBender(playerName, Element.Fire)) { - players.add(FireMethods.getFireColor() + playerName); - continue; + if (bp.hasElement(Element.Air)) { + result = ChatColor.WHITE + playerName + " - " + AirMethods.getAirColor() + "A"; } + if (bp.hasElement(Element.Earth)) { + if (result == "") { + result = ChatColor.WHITE + playerName + " - " + EarthMethods.getEarthColor() + "E"; + } else { + result = result + ChatColor.WHITE + " | " + EarthMethods.getEarthColor() + "E"; + } + } + if (bp.hasElement(Element.Fire)) { + if (result == "") { + result = ChatColor.WHITE + playerName + " - " + FireMethods.getFireColor() + "F"; + } else { + result = result + ChatColor.WHITE + " | " + FireMethods.getFireColor() + "F"; + } + } + if (bp.hasElement(Element.Water)) { + if (result == "") { + result = ChatColor.WHITE + playerName + " - " + WaterMethods.getWaterColor() + "W"; + } else { + result = result + ChatColor.WHITE + " | " + WaterMethods.getWaterColor() + "W"; + } + } + if (bp.hasElement(Element.Chi)) { + if (result == "") { + result = ChatColor.WHITE + playerName + " - " + ChiMethods.getChiColor() + "C"; + } else { + result = result + ChatColor.WHITE + " | " + ChiMethods.getChiColor() + "C"; + } + } + if (staff.containsKey(player.getUniqueId().toString())) { + if (result == "") { + result = ChatColor.WHITE + playerName + staff.get(player.getUniqueId().toString()); + } else { + result = result + ChatColor.WHITE + " | " + staff.get(player.getUniqueId().toString()); + } + } + players.add(result); } if (players.isEmpty()) { sender.sendMessage(ChatColor.RED + "There is no one online."); From 2ec5849e734099d324d1d5e9434da636980cb49a Mon Sep 17 00:00:00 2001 From: Benford Date: Tue, 1 Dec 2015 00:18:14 -0500 Subject: [PATCH 05/10] Auto Tab fix - Changed two instances of canBend to canBind --- .../projectkorra/projectkorra/command/BendingTabComplete.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/src/com/projectkorra/projectkorra/command/BendingTabComplete.java b/src/com/projectkorra/projectkorra/command/BendingTabComplete.java index 329f28d0..5a129cef 100644 --- a/src/com/projectkorra/projectkorra/command/BendingTabComplete.java +++ b/src/com/projectkorra/projectkorra/command/BendingTabComplete.java @@ -109,12 +109,12 @@ public class BendingTabComplete implements TabCompleter { } List abils = new ArrayList(); for (String abil : AbilityModuleManager.abilities) { - if (GeneralMethods.canBend(sender.getName(), abil)) { + if (GeneralMethods.canBind(sender.getName(), abil)) { abils.add(abil); } } for (ComboAbilityModule abil : ComboModuleManager.combo) { - if (GeneralMethods.canBend(sender.getName(), abil.getName())) { + if (GeneralMethods.canBind(sender.getName(), abil.getName())) { abils.add(abil.getName()); } } From ef9166a64d95639dede09c54cbb8b4f86c095125 Mon Sep 17 00:00:00 2001 From: Benford Date: Tue, 1 Dec 2015 23:42:40 -0500 Subject: [PATCH 06/10] Changes to bending who - Added different display for toggled bending/elements - Commented out staff that aren't staff anymore --- .../projectkorra/command/WhoCommand.java | 30 +++++++++---------- 1 file changed, 15 insertions(+), 15 deletions(-) diff --git a/src/com/projectkorra/projectkorra/command/WhoCommand.java b/src/com/projectkorra/projectkorra/command/WhoCommand.java index 31a3cf4e..f68019f5 100644 --- a/src/com/projectkorra/projectkorra/command/WhoCommand.java +++ b/src/com/projectkorra/projectkorra/command/WhoCommand.java @@ -55,15 +55,15 @@ public class WhoCommand extends PKCommand { staff.put("dedf335b-d282-47ab-8ffc-a80121661cd1", ChatColor.DARK_PURPLE + "ProjectKorra Developer"); // grasshopperMatt staff.put("623df34e-9cd4-438d-b07c-1905e1fc46b6", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Loony - staff.put("80f9072f-e37e-4adc-8675-1ba6af87d63b", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Cross - staff.put("57205eec-96bd-4aa3-b73f-c6627429beb2", ChatColor.GREEN + "ProjectKorra Concept Designer"); // ashe36 - staff.put("7daead36-d285-4640-848a-2f105334b792", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Fuzzy - staff.put("f30c871e-cd60-446b-b219-e31e00e16857", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Gangksta - staff.put("38217173-8a32-4ba7-9fe1-dd4fed031a74", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Fly + //staff.put("80f9072f-e37e-4adc-8675-1ba6af87d63b", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Cross + //staff.put("57205eec-96bd-4aa3-b73f-c6627429beb2", ChatColor.GREEN + "ProjectKorra Concept Designer"); // ashe36 + //staff.put("7daead36-d285-4640-848a-2f105334b792", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Fuzzy + //staff.put("f30c871e-cd60-446b-b219-e31e00e16857", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Gangksta + staff.put("38217173-8a32-4ba7-9fe1-dd4fed031a74", ChatColor.GREEN + "ProjectKorra Concept Designer"); // Easte staff.put("3d5bc713-ab8b-4125-b5ba-a1c1c2400b2c", ChatColor.GOLD + "ProjectKorra Community Moderator"); // Gold - staff.put("2ab334d1-9691-4994-a624-209c7b4f220b", ChatColor.BLUE + "ProjectKorra Digital Team"); // Austygen + //staff.put("2ab334d1-9691-4994-a624-209c7b4f220b", ChatColor.BLUE + "ProjectKorra Digital Team"); // Austygen } @Override @@ -83,34 +83,34 @@ public class WhoCommand extends PKCommand { bp = GeneralMethods.getBendingPlayer(player.getName()); } if (bp.hasElement(Element.Air)) { - result = ChatColor.WHITE + playerName + " - " + AirMethods.getAirColor() + "A"; + result = ChatColor.WHITE + playerName + " - " + ((!bp.isElementToggled(Element.Air) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&7&mA") : AirMethods.getAirColor() + "A"); } if (bp.hasElement(Element.Earth)) { if (result == "") { - result = ChatColor.WHITE + playerName + " - " + EarthMethods.getEarthColor() + "E"; + result = ChatColor.WHITE + playerName + " - " + ((!bp.isElementToggled(Element.Earth) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&a&mE") : EarthMethods.getEarthColor() + "E"); } else { - result = result + ChatColor.WHITE + " | " + EarthMethods.getEarthColor() + "E"; + result = result + ChatColor.WHITE + " | " + ((!bp.isElementToggled(Element.Earth) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&a&mE") : EarthMethods.getEarthColor() + "E"); } } if (bp.hasElement(Element.Fire)) { if (result == "") { - result = ChatColor.WHITE + playerName + " - " + FireMethods.getFireColor() + "F"; + result = ChatColor.WHITE + playerName + " - " + ((!bp.isElementToggled(Element.Fire) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&c&mF") : FireMethods.getFireColor() + "F"); } else { - result = result + ChatColor.WHITE + " | " + FireMethods.getFireColor() + "F"; + result = result + ChatColor.WHITE + " | " + ((!bp.isElementToggled(Element.Fire) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&c&mF") : FireMethods.getFireColor() + "F"); } } if (bp.hasElement(Element.Water)) { if (result == "") { - result = ChatColor.WHITE + playerName + " - " + WaterMethods.getWaterColor() + "W"; + result = ChatColor.WHITE + playerName + " - " + ((!bp.isElementToggled(Element.Water) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&b&mW") : WaterMethods.getWaterColor() + "W"); } else { - result = result + ChatColor.WHITE + " | " + WaterMethods.getWaterColor() + "W"; + result = result + ChatColor.WHITE + " | " + ((!bp.isElementToggled(Element.Water) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&b&mW") : WaterMethods.getWaterColor() + "W"); } } if (bp.hasElement(Element.Chi)) { if (result == "") { - result = ChatColor.WHITE + playerName + " - " + ChiMethods.getChiColor() + "C"; + result = ChatColor.WHITE + playerName + " - " + ((!bp.isElementToggled(Element.Chi) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&6&mC") : ChiMethods.getChiColor() + "C"); } else { - result = result + ChatColor.WHITE + " | " + ChiMethods.getChiColor() + "C"; + result = result + ChatColor.WHITE + " | " + ((!bp.isElementToggled(Element.Chi) || !bp.isToggled()) ? ChatColor.translateAlternateColorCodes('&', "&6&mC") : ChiMethods.getChiColor() + "C"); } } if (staff.containsKey(player.getUniqueId().toString())) { From 669ef4f73bc592e69ded13d7823e641a0f65b51f Mon Sep 17 00:00:00 2001 From: Jack Lin Date: Sun, 6 Dec 2015 15:18:50 +1300 Subject: [PATCH 07/10] Add 30 second timeout to Updater --- src/com/projectkorra/projectkorra/util/Updater.java | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/src/com/projectkorra/projectkorra/util/Updater.java b/src/com/projectkorra/projectkorra/util/Updater.java index c4cdcee1..02deed17 100644 --- a/src/com/projectkorra/projectkorra/util/Updater.java +++ b/src/com/projectkorra/projectkorra/util/Updater.java @@ -7,6 +7,7 @@ import org.w3c.dom.NodeList; import org.xml.sax.SAXException; import java.io.IOException; +import java.net.SocketTimeoutException; import java.net.URL; import java.net.URLConnection; import java.net.UnknownHostException; @@ -57,8 +58,9 @@ public class Updater { url = new URL(URL); urlc = url.openConnection(); urlc.setRequestProperty("User-Agent", ""); // Must be used or face 403 + urlc.setConnectTimeout(30000); // 30 second time out, throws SocketTimeoutException document = DocumentBuilderFactory.newInstance().newDocumentBuilder().parse(urlc.getInputStream()); - } catch (UnknownHostException e) { + } catch (UnknownHostException | SocketTimeoutException e) { plugin.getLogger().info("Could not connect to ProjectKorra.com to check for updates"); } catch (IOException | SAXException | ParserConfigurationException e) { e.printStackTrace(); From 04a006cac91c265938b3794a71e5f35fea4fae4d Mon Sep 17 00:00:00 2001 From: jedk1 Date: Sun, 6 Dec 2015 19:25:10 +0000 Subject: [PATCH 08/10] Fix getEntitiesAroundPoint getting spectator players. --- src/com/projectkorra/projectkorra/GeneralMethods.java | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/com/projectkorra/projectkorra/GeneralMethods.java b/src/com/projectkorra/projectkorra/GeneralMethods.java index 6a3941c5..7de23816 100644 --- a/src/com/projectkorra/projectkorra/GeneralMethods.java +++ b/src/com/projectkorra/projectkorra/GeneralMethods.java @@ -1147,6 +1147,8 @@ public class GeneralMethods { for (Entity entity : entities) { if (entity.getWorld() != location.getWorld()) { list.remove(entity); + } else if (entity instanceof Player && ((Player) entity).getGameMode().equals(GameMode.SPECTATOR)) { + list.remove(entity); } else if (entity.getLocation().distance(location) > radius) { list.remove(entity); } From 85cb6e372041d8e6eecddf1990e30d5172b9ffb0 Mon Sep 17 00:00:00 2001 From: StrangeOne101 Date: Tue, 8 Dec 2015 23:28:17 +1300 Subject: [PATCH 09/10] Fix Fireball NPE MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit • Fixes NPE in Fireball • Fixes measuring distance across worlds --- .../projectkorra/firebending/Fireball.java | 10 ++++++++++ 1 file changed, 10 insertions(+) diff --git a/src/com/projectkorra/projectkorra/firebending/Fireball.java b/src/com/projectkorra/projectkorra/firebending/Fireball.java index a583377f..8858d25b 100644 --- a/src/com/projectkorra/projectkorra/firebending/Fireball.java +++ b/src/com/projectkorra/projectkorra/firebending/Fireball.java @@ -261,6 +261,16 @@ public class Fireball implements ConfigLoadable { } public boolean progress() { + if (player.isDead() || !player.isOnline()) { + remove(); + return false; + } + + if (!player.getWorld().equals(location.getWorld())) { + remove(); + return false; + } + if (GeneralMethods.getBoundAbility(player) == null) { remove(); return false; From b7bb87c10c5bc5137a68fbe942c131bc7090eaa8 Mon Sep 17 00:00:00 2001 From: jedk1 Date: Tue, 8 Dec 2015 23:40:03 +0000 Subject: [PATCH 10/10] Fix bending player NPE in FireBurst --- src/com/projectkorra/projectkorra/firebending/FireBurst.java | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/com/projectkorra/projectkorra/firebending/FireBurst.java b/src/com/projectkorra/projectkorra/firebending/FireBurst.java index c4eed5ed..77b82ed7 100644 --- a/src/com/projectkorra/projectkorra/firebending/FireBurst.java +++ b/src/com/projectkorra/projectkorra/firebending/FireBurst.java @@ -144,6 +144,10 @@ public class FireBurst implements ConfigLoadable { } public boolean progress() { + if (player.isDead() || !player.isOnline()) { + remove(); + return false; + } if (!GeneralMethods.canBend(player.getName(), "FireBurst")) { remove(); return false;