From 8b2d0768332f93a34c8147e75c8db07959bd74c3 Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 14:03:00 +0100 Subject: [PATCH 01/10] CB# 1467 B#1022 --- Essentials/nbproject/project.properties | 4 ++-- EssentialsChat/nbproject/project.properties | 4 ++-- EssentialsGeoIP/nbproject/project.properties | 4 ++-- EssentialsGroupBridge/nbproject/project.properties | 4 ++-- EssentialsGroupManager/nbproject/project.properties | 4 ++-- EssentialsPermissionsCommands/nbproject/project.properties | 4 ++-- EssentialsProtect/nbproject/project.properties | 4 ++-- EssentialsSpawn/nbproject/project.properties | 4 ++-- EssentialsUpdate/nbproject/project.properties | 4 ++-- EssentialsXMPP/nbproject/project.properties | 4 ++-- 10 files changed, 20 insertions(+), 20 deletions(-) diff --git a/Essentials/nbproject/project.properties b/Essentials/nbproject/project.properties index 8e7ea3314..a1d94089e 100644 --- a/Essentials/nbproject/project.properties +++ b/Essentials/nbproject/project.properties @@ -66,7 +66,7 @@ endorsed.classpath= excludes= file.reference.BOSEconomy7.jar=../lib/BOSEconomy7.jar file.reference.bPermissions.jar=../lib/bPermissions.jar -file.reference.craftbukkit-0.0.1-SNAPSHOT.jar=..\\lib\\craftbukkit-0.0.1-SNAPSHOT.jar +file.reference.craftbukkit-1.0.0-SNAPSHOT.jar=..\\lib\\craftbukkit-1.0.0-SNAPSHOT.jar file.reference.iCo4.jar=../lib/iCo4.jar file.reference.iCo5.jar=../lib/iCo5.jar file.reference.iCo6.jar=../lib/iCo6.jar @@ -92,7 +92,7 @@ javac.classpath=\ ${file.reference.PermissionsBukkit-1.2.jar}:\ ${file.reference.lombok-0.10.1.jar}:\ ${reference.EssentialsGroupManager.jar}:\ - ${file.reference.craftbukkit-0.0.1-SNAPSHOT.jar} + ${file.reference.craftbukkit-1.0.0-SNAPSHOT.jar} # Space-separated list of extra javac options javac.compilerargs= javac.deprecation=false diff --git a/EssentialsChat/nbproject/project.properties b/EssentialsChat/nbproject/project.properties index 867228a92..0d17cfa30 100644 --- a/EssentialsChat/nbproject/project.properties +++ b/EssentialsChat/nbproject/project.properties @@ -61,12 +61,12 @@ dist.jar=${dist.dir}/EssentialsChat.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.bukkit-0.0.1-SNAPSHOT.jar=../lib/bukkit-0.0.1-SNAPSHOT.jar +file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar=../lib/bukkit-1.0.0-R1-SNAPSHOT.jar includes=** jar.compress=true javac.classpath=\ ${reference.Essentials.jar}:\ - ${file.reference.bukkit-0.0.1-SNAPSHOT.jar} + ${file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar} # Space-separated list of extra javac options javac.compilerargs= javac.deprecation=false diff --git a/EssentialsGeoIP/nbproject/project.properties b/EssentialsGeoIP/nbproject/project.properties index 80cd8778f..cee848726 100644 --- a/EssentialsGeoIP/nbproject/project.properties +++ b/EssentialsGeoIP/nbproject/project.properties @@ -61,12 +61,12 @@ dist.jar=${dist.dir}/EssentialsGeoIP.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.bukkit-0.0.1-SNAPSHOT.jar=../lib/bukkit-0.0.1-SNAPSHOT.jar +file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar=../lib/bukkit-1.0.0-R1-SNAPSHOT.jar includes=** jar.compress=true javac.classpath=\ ${reference.Essentials.jar}:\ - ${file.reference.bukkit-0.0.1-SNAPSHOT.jar} + ${file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar} # Space-separated list of extra javac options javac.compilerargs= javac.deprecation=false diff --git a/EssentialsGroupBridge/nbproject/project.properties b/EssentialsGroupBridge/nbproject/project.properties index 3a2d806fb..d23aed45b 100644 --- a/EssentialsGroupBridge/nbproject/project.properties +++ b/EssentialsGroupBridge/nbproject/project.properties @@ -39,14 +39,14 @@ dist.jar=${dist.dir}/EssentialsGroupBridge.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.bukkit-0.0.1-SNAPSHOT.jar=../lib/bukkit-0.0.1-SNAPSHOT.jar +file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar=../lib/bukkit-1.0.0-R1-SNAPSHOT.jar includes=** jar.archive.disabled=${jnlp.enabled} jar.compress=true jar.index=${jnlp.enabled} javac.classpath=\ ${reference.EssentialsGroupManager.jar}:\ - ${file.reference.bukkit-0.0.1-SNAPSHOT.jar} + ${file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar} # Space-separated list of extra javac options javac.compilerargs= javac.deprecation=false diff --git a/EssentialsGroupManager/nbproject/project.properties b/EssentialsGroupManager/nbproject/project.properties index 245766661..760b4a41e 100644 --- a/EssentialsGroupManager/nbproject/project.properties +++ b/EssentialsGroupManager/nbproject/project.properties @@ -39,11 +39,11 @@ dist.jar=${dist.dir}/EssentialsGroupManager.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.craftbukkit-0.0.1-SNAPSHOT.jar=..\\lib\\craftbukkit-0.0.1-SNAPSHOT.jar +file.reference.craftbukkit-1.0.0-SNAPSHOT.jar=..\\lib\\craftbukkit-1.0.0-SNAPSHOT.jar includes=** jar.compress=true javac.classpath=\ - ${file.reference.craftbukkit-0.0.1-SNAPSHOT.jar} + ${file.reference.craftbukkit-1.0.0-SNAPSHOT.jar} # Space-separated list of extra javac options javac.compilerargs= javac.deprecation=false diff --git a/EssentialsPermissionsCommands/nbproject/project.properties b/EssentialsPermissionsCommands/nbproject/project.properties index 0a74a6dea..9ce9cd6ae 100644 --- a/EssentialsPermissionsCommands/nbproject/project.properties +++ b/EssentialsPermissionsCommands/nbproject/project.properties @@ -61,7 +61,7 @@ dist.jar=${dist.dir}/EssentialsPermissionsCommands.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.bukkit-0.0.1-SNAPSHOT.jar=../lib/bukkit-0.0.1-SNAPSHOT.jar +file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar=../lib/bukkit-1.0.0-R1-SNAPSHOT.jar file.reference.Permissions3.jar=../lib/Permissions3.jar includes=** jar.archive.disabled=${jnlp.enabled} @@ -70,7 +70,7 @@ jar.index=${jnlp.enabled} javac.classpath=\ ${reference.Essentials.jar}:\ ${file.reference.Permissions3.jar}:\ - ${file.reference.bukkit-0.0.1-SNAPSHOT.jar} + ${file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar} # Space-separated list of extra javac options javac.compilerargs= javac.deprecation=false diff --git a/EssentialsProtect/nbproject/project.properties b/EssentialsProtect/nbproject/project.properties index dd5d0fd22..22cd70494 100644 --- a/EssentialsProtect/nbproject/project.properties +++ b/EssentialsProtect/nbproject/project.properties @@ -62,14 +62,14 @@ dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= file.reference.c3p0-0.9.1.2.jar=..\\lib\\c3p0-0.9.1.2.jar -file.reference.craftbukkit-0.0.1-SNAPSHOT.jar=..\\lib\\craftbukkit-0.0.1-SNAPSHOT.jar +file.reference.craftbukkit-1.0.0-SNAPSHOT.jar=..\\lib\\craftbukkit-1.0.0-SNAPSHOT.jar includes=** jar.archive.disabled=${jnlp.enabled} jar.compress=true jar.index=${jnlp.enabled} javac.classpath=\ ${reference.Essentials.jar}:\ - ${file.reference.craftbukkit-0.0.1-SNAPSHOT.jar}:\ + ${file.reference.craftbukkit-1.0.0-SNAPSHOT.jar}:\ ${file.reference.c3p0-0.9.1.2.jar} # Space-separated list of extra javac options javac.compilerargs= diff --git a/EssentialsSpawn/nbproject/project.properties b/EssentialsSpawn/nbproject/project.properties index 27fa91493..3157d9b11 100644 --- a/EssentialsSpawn/nbproject/project.properties +++ b/EssentialsSpawn/nbproject/project.properties @@ -61,12 +61,12 @@ dist.jar=${dist.dir}/EssentialsSpawn.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.bukkit-0.0.1-SNAPSHOT.jar=../lib/bukkit-0.0.1-SNAPSHOT.jar +file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar=../lib/bukkit-1.0.0-R1-SNAPSHOT.jar includes=** jar.compress=true javac.classpath=\ ${reference.Essentials.jar}:\ - ${file.reference.bukkit-0.0.1-SNAPSHOT.jar} + ${file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar} # Space-separated list of extra javac options javac.compilerargs= javac.deprecation=false diff --git a/EssentialsUpdate/nbproject/project.properties b/EssentialsUpdate/nbproject/project.properties index fadaa4839..9f758533e 100644 --- a/EssentialsUpdate/nbproject/project.properties +++ b/EssentialsUpdate/nbproject/project.properties @@ -26,11 +26,11 @@ dist.jar=${dist.dir}/EssentialsUpdate.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.bukkit-0.0.1-SNAPSHOT.jar=../lib/bukkit-0.0.1-SNAPSHOT.jar +file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar=../lib/bukkit-1.0.0-R1-SNAPSHOT.jar includes=** jar.compress=true javac.classpath=\ - ${file.reference.bukkit-0.0.1-SNAPSHOT.jar}:\ + ${file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar}:\ ${libs.junit_4.classpath} # Space-separated list of extra javac options javac.compilerargs= diff --git a/EssentialsXMPP/nbproject/project.properties b/EssentialsXMPP/nbproject/project.properties index d2ed6daf3..2e89ab318 100644 --- a/EssentialsXMPP/nbproject/project.properties +++ b/EssentialsXMPP/nbproject/project.properties @@ -61,7 +61,7 @@ dist.jar=${dist.dir}/original-EssentialsXMPP.jar dist.javadoc.dir=${dist.dir}/javadoc endorsed.classpath= excludes= -file.reference.bukkit-0.0.1-SNAPSHOT.jar=../lib/bukkit-0.0.1-SNAPSHOT.jar +file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar=../lib/bukkit-1.0.0-R1-SNAPSHOT.jar file.reference.smack-3.2.0.jar=../lib/smack-3.2.0.jar includes=** jar.archive.disabled=${jnlp.enabled} @@ -69,7 +69,7 @@ jar.compress=true jar.index=${jnlp.enabled} javac.classpath=\ ${reference.Essentials.jar}:\ - ${file.reference.bukkit-0.0.1-SNAPSHOT.jar}:\ + ${file.reference.bukkit-1.0.0-R1-SNAPSHOT.jar}:\ ${file.reference.smack-3.2.0.jar} # Space-separated list of extra javac options javac.compilerargs=-Xlint:unchecked From 8d873907fbd9c0e30c8117007da75a720e5167c5 Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 14:30:21 +0100 Subject: [PATCH 02/10] Added the new items to items.csv --- Essentials/src/items.csv | 37 ++++++++++++++++++++++++++++++++++++- 1 file changed, 36 insertions(+), 1 deletion(-) diff --git a/Essentials/src/items.csv b/Essentials/src/items.csv index a9c2c6c43..9064837a6 100644 --- a/Essentials/src/items.csv +++ b/Essentials/src/items.csv @@ -1340,6 +1340,18 @@ cementstairs,109,0 cementbstairs,109,0 greybrickstairs,109,0 greybstairs,109,0 +mycel,110,0 +waterlily,111,0 +netherbrick,112,0 +netherfence,113,0 +netherbrickstairs,114,0 +netherwarts,115,0 +enchantmenttable,116,0 +brewingstand,117,0 +cauldron,118,0 +enderportal,119,0 +enderportalframe,120,0 +whitestone,121,0 ironshovel,256,0 ironspade,256,0 ishovel,256,0 @@ -2210,6 +2222,20 @@ pearl,368,0 epearl,368,0 bluepearl,368,0 endergem,368,0 +blazerod,369,0 +ghasttear,370,0 +goldnugget,371,0 +netherstalk,372,0 +potion,373,0 +glassbottle,374,0 +spidereye,375,0 +fermentedspidereye,376,0 +blazepowder,377,0 +magmacream,378,0 +brewingsstanditem,379,0 +cauldronitem,380,0 +eyeofender,381,0 +speckledmelon,382,0 goldmusicrecord,2256,0 goldmusicdisk,2256,0 goldmusiccd,2256,0 @@ -2245,4 +2271,13 @@ greendisk,2257,0 greencd,2257,0 grrecord,2257,0 grdisk,2257,0 -grcd,2257,0 \ No newline at end of file +grcd,2257,0 +record3,2258,0 +record4,2259,0 +record5,2260,0 +record6,2261,0 +record7,2262,0 +record8,2263,0 +record9,2264,0 +record10,2265,0 +record11,2266,0 From 56d4cb6a650436cd872083151798f590e19bf2bd Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 14:30:54 +0100 Subject: [PATCH 03/10] Added new methods to Fake classes --- Essentials/src/com/earth2me/essentials/OfflinePlayer.java | 7 +++++++ Essentials/test/com/earth2me/essentials/FakeServer.java | 6 ++++++ 2 files changed, 13 insertions(+) diff --git a/Essentials/src/com/earth2me/essentials/OfflinePlayer.java b/Essentials/src/com/earth2me/essentials/OfflinePlayer.java index 229406273..d5706e136 100644 --- a/Essentials/src/com/earth2me/essentials/OfflinePlayer.java +++ b/Essentials/src/com/earth2me/essentials/OfflinePlayer.java @@ -3,6 +3,7 @@ package com.earth2me.essentials; import java.net.InetSocketAddress; import java.util.HashSet; import java.util.List; +import java.util.Map; import java.util.Set; import java.util.UUID; import lombok.Delegate; @@ -777,4 +778,10 @@ public class OfflinePlayer implements Player { throw new UnsupportedOperationException("Not supported yet."); } + + @Override + public int getMaxHealth() + { + throw new UnsupportedOperationException("Not supported yet."); + } } diff --git a/Essentials/test/com/earth2me/essentials/FakeServer.java b/Essentials/test/com/earth2me/essentials/FakeServer.java index 7f3fb9bf2..34e60bed4 100644 --- a/Essentials/test/com/earth2me/essentials/FakeServer.java +++ b/Essentials/test/com/earth2me/essentials/FakeServer.java @@ -580,4 +580,10 @@ public class FakeServer implements Server { throw new UnsupportedOperationException("Not supported yet."); } + + @Override + public String getBukkitVersion() + { + throw new UnsupportedOperationException("Not supported yet."); + } } From 437fab8b0454fbd6468425ad579ef6b7dce835b4 Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 14:33:17 +0100 Subject: [PATCH 04/10] Added new mobs --- .../src/com/earth2me/essentials/Mob.java | 29 +++++++++++-------- .../essentials/commands/Commandspawner.java | 1 - .../essentials/commands/Commandspawnmob.java | 10 +++---- 3 files changed, 21 insertions(+), 19 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/Mob.java b/Essentials/src/com/earth2me/essentials/Mob.java index d937ba0fb..b8c7388fd 100644 --- a/Essentials/src/com/earth2me/essentials/Mob.java +++ b/Essentials/src/com/earth2me/essentials/Mob.java @@ -29,8 +29,12 @@ public enum Mob WOLF("Wolf", Enemies.NEUTRAL, CreatureType.WOLF), CAVESPIDER("CaveSpider", Enemies.ENEMY, CreatureType.CAVE_SPIDER), ENDERMAN("Enderman", Enemies.ENEMY, "", CreatureType.ENDERMAN), - SILVERFISH("Silverfish", Enemies.ENEMY, "", CreatureType.SILVERFISH); - + SILVERFISH("Silverfish", Enemies.ENEMY, "", CreatureType.SILVERFISH), + ENDERDRAGON("EnderDragon", Enemies.ENEMY, CreatureType.ENDER_DRAGON), + VILLAGER("Villager", Enemies.FRIENDLY, CreatureType.VILLAGER), + BLAZE("Blaze", Enemies.ENEMY, CreatureType.BLAZE), + MUSHROOMCOW("MushroomCow", Enemies.FRIENDLY, CreatureType.MUSHROOM_COW); + //TODO: Snowman public static final Logger logger = Logger.getLogger("Minecraft"); private Mob(String n, Enemies en, String s, CreatureType type) @@ -47,7 +51,6 @@ public enum Mob this.type = en; this.bukkitType = type; } - public String suffix = "s"; final public String name; final public Enemies type; @@ -58,7 +61,7 @@ public enum Mob { for (Mob mob : Mob.values()) { - hashMap.put(mob.name, mob); + hashMap.put(mob.name.toLowerCase(), mob); } } @@ -81,24 +84,26 @@ public enum Mob NEUTRAL("neutral"), ENEMY("enemy"); - private Enemies(final String t) + private Enemies(final String type) { - this.type = t; + this.type = type; } final protected String type; } - public CreatureType getType () { + public CreatureType getType() + { return bukkitType; } + public static Mob fromName(final String name) + { + return hashMap.get(name.toLowerCase()); + } + + public static class MobException extends Exception { private static final long serialVersionUID = 1L; } - - public static Mob fromName(String n) - { - return hashMap.get(n); - } } diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java b/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java index 18e4fb349..cbec7955d 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandspawner.java @@ -34,7 +34,6 @@ public class Commandspawner extends EssentialsCommand try { String name = args[0]; - name = name.equalsIgnoreCase("CaveSpider") ? "CaveSpider" : name.equalsIgnoreCase("PigZombie") ? "PigZombie" : Util.capitalCase(name); Mob mob = null; mob = Mob.fromName(name); diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandspawnmob.java b/Essentials/src/com/earth2me/essentials/commands/Commandspawnmob.java index 49f2a67d1..1e5682beb 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandspawnmob.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandspawnmob.java @@ -32,7 +32,6 @@ public class Commandspawnmob extends EssentialsCommand String[] mountparts = args[0].split(","); String[] parts = mountparts[0].split(":"); String mobType = parts[0]; - mobType = mobType.equalsIgnoreCase("CaveSpider") ? "CaveSpider" : mobType.equalsIgnoreCase("PigZombie") ? "PigZombie" : Util.capitalCase(mobType); String mobData = null; if (parts.length == 2) { @@ -44,7 +43,6 @@ public class Commandspawnmob extends EssentialsCommand { parts = mountparts[1].split(":"); mountType = parts[0]; - mountType = mountType.equalsIgnoreCase("CaveSpider") ? "CaveSpider" : mountType.equalsIgnoreCase("PigZombie") ? "PigZombie" : Util.capitalCase(mountType); if (parts.length == 2) { mountData = parts[1]; @@ -62,14 +60,14 @@ public class Commandspawnmob extends EssentialsCommand { throw new Exception(Util.i18n("invalidMob")); } - + if (ess.getSettings().getProtectPreventSpawn(mob.getType().toString().toLowerCase())) { throw new Exception(Util.i18n("unableToSpawnMob")); } - + final Block block = Util.getTarget(user).getBlock(); - if (block == null) + if (block == null) { throw new Exception(Util.i18n("unableToSpawnMob")); } @@ -92,7 +90,7 @@ public class Commandspawnmob extends EssentialsCommand user.sendMessage(Util.i18n("invalidMob")); return; } - + if (ess.getSettings().getProtectPreventSpawn(mobMount.getType().toString().toLowerCase())) { throw new Exception(Util.i18n("unableToSpawnMob")); From 15df345bf2770ec650a4acec34d2372a287c0f4d Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 14:34:03 +0100 Subject: [PATCH 05/10] Added option to /fireball command: /fireball small --- .../com/earth2me/essentials/commands/Commandfireball.java | 8 +++++++- Essentials/src/plugin.yml | 2 +- 2 files changed, 8 insertions(+), 2 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandfireball.java b/Essentials/src/com/earth2me/essentials/commands/Commandfireball.java index 0dc78474b..8bb172a29 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandfireball.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandfireball.java @@ -3,6 +3,7 @@ package com.earth2me.essentials.commands; import com.earth2me.essentials.User; import org.bukkit.Server; import org.bukkit.entity.Fireball; +import org.bukkit.entity.SmallFireball; import org.bukkit.util.Vector; @@ -16,7 +17,12 @@ public class Commandfireball extends EssentialsCommand @Override protected void run(final Server server, final User user, final String commandLabel, final String[] args) throws Exception { + boolean small = false; + if (args.length > 0 && args[0].equalsIgnoreCase("small")) + { + small = true; + } final Vector direction = user.getEyeLocation().getDirection().multiply(2); - user.getWorld().spawn(user.getEyeLocation().add(direction.getX(), direction.getY(), direction.getZ()), Fireball.class); + user.getWorld().spawn(user.getEyeLocation().add(direction.getX(), direction.getY(), direction.getZ()), small ? SmallFireball.class : Fireball.class); } } diff --git a/Essentials/src/plugin.yml b/Essentials/src/plugin.yml index dcbbfe767..e3f500b9e 100644 --- a/Essentials/src/plugin.yml +++ b/Essentials/src/plugin.yml @@ -88,7 +88,7 @@ commands: aliases: [extinguish,eext,eextinguish] fireball: description: Throw a fireball. - usage: / + usage: / [small] aliases: [efireball] gamemode: description: Change player gamemode. From fc2bd73688732f763ae1e9237d6b42c5312afe60 Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 15:43:39 +0100 Subject: [PATCH 06/10] Add SmallFireball to EssProtect --- .../EssentialsProtectEntityListener.java | 44 ++++++++++--------- 1 file changed, 24 insertions(+), 20 deletions(-) diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java index c0e568578..bbf67607f 100644 --- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java +++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java @@ -20,6 +20,7 @@ import org.bukkit.entity.Fireball; import org.bukkit.entity.LivingEntity; import org.bukkit.entity.Player; import org.bukkit.entity.Projectile; +import org.bukkit.entity.SmallFireball; import org.bukkit.entity.TNTPrimed; import org.bukkit.event.entity.CreatureSpawnEvent; import org.bukkit.event.entity.EndermanPickupEvent; @@ -38,13 +39,13 @@ public class EssentialsProtectEntityListener extends EntityListener { private final transient IProtect prot; private final transient IEssentials ess; - + public EssentialsProtectEntityListener(final IProtect prot) { this.prot = prot; this.ess = prot.getEssentials(); } - + @Override public void onEntityDamage(final EntityDamageEvent event) { @@ -57,7 +58,7 @@ public class EssentialsProtectEntityListener extends EntityListener if (event instanceof EntityDamageByBlockEvent) { final DamageCause cause = event.getCause(); - + if (prot.getSettingBool(ProtectConfig.disable_contactdmg) && cause == DamageCause.CONTACT && !(target instanceof Player @@ -86,7 +87,7 @@ public class EssentialsProtectEntityListener extends EntityListener return; } } - + if (event instanceof EntityDamageByEntityEvent) { final EntityDamageByEntityEvent edEvent = (EntityDamageByEntityEvent)event; @@ -111,7 +112,7 @@ public class EssentialsProtectEntityListener extends EntityListener event.setCancelled(true); return; } - + if (eAttack instanceof Creeper && prot.getSettingBool(ProtectConfig.prevent_creeper_playerdmg) && !(target instanceof Player && user.isAuthorized("essentials.protect.damage.creeper") @@ -120,8 +121,9 @@ public class EssentialsProtectEntityListener extends EntityListener event.setCancelled(true); return; } - - if (eAttack instanceof Fireball && prot.getSettingBool(ProtectConfig.prevent_fireball_playerdmg) + + if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) + && prot.getSettingBool(ProtectConfig.prevent_fireball_playerdmg) && !(target instanceof Player && user.isAuthorized("essentials.protect.damage.fireball") && !user.isAuthorized("essentials.protect.damage.disable"))) @@ -129,7 +131,7 @@ public class EssentialsProtectEntityListener extends EntityListener event.setCancelled(true); return; } - + if (eAttack instanceof TNTPrimed && prot.getSettingBool(ProtectConfig.prevent_tnt_playerdmg) && !(target instanceof Player && user.isAuthorized("essentials.protect.damage.tnt") @@ -138,7 +140,7 @@ public class EssentialsProtectEntityListener extends EntityListener event.setCancelled(true); return; } - + if (edEvent.getDamager() instanceof Projectile && target instanceof Player && ((prot.getSettingBool(ProtectConfig.disable_projectiles) @@ -153,7 +155,7 @@ public class EssentialsProtectEntityListener extends EntityListener return; } } - + final DamageCause cause = event.getCause(); if (target instanceof Player) { @@ -165,7 +167,7 @@ public class EssentialsProtectEntityListener extends EntityListener event.setCancelled(true); return; } - + if (cause == DamageCause.SUFFOCATION && prot.getSettingBool(ProtectConfig.disable_suffocate) && !(user.isAuthorized("essentials.protect.damage.suffocation") @@ -201,7 +203,7 @@ public class EssentialsProtectEntityListener extends EntityListener } } } - + @Override public void onEntityExplode(final EntityExplodeEvent event) { @@ -242,7 +244,7 @@ public class EssentialsProtectEntityListener extends EntityListener set.add(cp); } } - + ((CraftServer)ess.getServer()).getHandle().sendPacketNearby(loc.getX(), loc.getY(), loc.getZ(), 64.0D, ((CraftWorld)loc.getWorld()).getHandle().worldProvider.dimension, new Packet60Explosion(loc.getX(), loc.getY(), loc.getZ(), 3.0f, set)); } @@ -259,7 +261,7 @@ public class EssentialsProtectEntityListener extends EntityListener event.setCancelled(true); return; } - else if (event.getEntity() instanceof Fireball + else if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && prot.getSettingBool(ProtectConfig.prevent_fireball_explosion)) { event.setCancelled(true); @@ -295,7 +297,7 @@ public class EssentialsProtectEntityListener extends EntityListener } } } - + @Override public void onCreatureSpawn(final CreatureSpawnEvent event) { @@ -317,7 +319,7 @@ public class EssentialsProtectEntityListener extends EntityListener event.setCancelled(true); } } - + @Override public void onEntityTarget(final EntityTargetEvent event) { @@ -343,11 +345,11 @@ public class EssentialsProtectEntityListener extends EntityListener return; } } - + @Override public void onExplosionPrime(ExplosionPrimeEvent event) { - if (event.getEntity() instanceof Fireball + if ((event.getEntity() instanceof Fireball || event.getEntity() instanceof SmallFireball) && prot.getSettingBool(ProtectConfig.prevent_fireball_fire)) { event.setFire(false); @@ -357,10 +359,12 @@ public class EssentialsProtectEntityListener extends EntityListener @Override public void onEndermanPickup(EndermanPickupEvent event) { - if (event.isCancelled()) { + if (event.isCancelled()) + { return; } - if (prot.getSettingBool(ProtectConfig.prevent_enderman_pickup)) { + if (prot.getSettingBool(ProtectConfig.prevent_enderman_pickup)) + { event.setCancelled(true); return; } From 26590fa7b8c9aa3e83a96be697c97fb54091b706 Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 16:40:18 +0100 Subject: [PATCH 07/10] Fix Bukkit version pattern --- Essentials/src/com/earth2me/essentials/Essentials.java | 6 ++++-- 1 file changed, 4 insertions(+), 2 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/Essentials.java b/Essentials/src/com/earth2me/essentials/Essentials.java index 6ab23e8fb..4c0783d21 100644 --- a/Essentials/src/com/earth2me/essentials/Essentials.java +++ b/Essentials/src/com/earth2me/essentials/Essentials.java @@ -55,7 +55,7 @@ import org.bukkit.scheduler.BukkitScheduler; public class Essentials extends JavaPlugin implements IEssentials { - public static final int BUKKIT_VERSION = 1060; + public static final int BUKKIT_VERSION = 1467; private static final Logger LOGGER = Logger.getLogger("Minecraft"); private transient ISettings settings; private final transient TNTExplodeListener tntListener = new TNTExplodeListener(this); @@ -138,7 +138,7 @@ public class Essentials extends JavaPlugin implements IEssentials LOGGER.log(Level.WARNING, Util.format("versionMismatch", plugin.getDescription().getName())); } } - final Matcher versionMatch = Pattern.compile("git-Bukkit-([0-9]+).([0-9]+).([0-9]+)-[0-9]+-[0-9a-z]+-b([0-9]+)jnks.*").matcher(getServer().getVersion()); + final Matcher versionMatch = Pattern.compile("git-Bukkit-([0-9]+).([0-9]+).([0-9]+)-R[0-9]+-[0-9]+-[0-9a-z]+-b([0-9]+)jnks.*").matcher(getServer().getVersion()); if (versionMatch.matches()) { final int versionNumber = Integer.parseInt(versionMatch.group(4)); @@ -150,6 +150,8 @@ public class Essentials extends JavaPlugin implements IEssentials else { LOGGER.log(Level.INFO, Util.i18n("bukkitFormatChanged")); + LOGGER.log(Level.INFO, getServer().getVersion()); + LOGGER.log(Level.INFO, getServer().getBukkitVersion()); } permissionsHandler = new PermissionsHandler(this, settings.useBukkitPermissions()); From dacad38dd95e851cc6387bcb2a3b57204b4dee9b Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 16:43:38 +0100 Subject: [PATCH 08/10] Fix long prefix breaking setPlayerListName(), because they are too long. If Essentials detects, that the player name would be too long with prefix and suffix to fit in the player list, it will only update the name without prefix and suffix but with nickname and opcolor. --- .../essentials/EssentialsPlayerListener.java | 8 ++++---- Essentials/src/com/earth2me/essentials/User.java | 13 +++++++++---- .../earth2me/essentials/commands/Commandnick.java | 4 ++-- .../earth2me/essentials/commands/Commandwhois.java | 6 +++--- 4 files changed, 18 insertions(+), 13 deletions(-) diff --git a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java index 2768b566e..e09eb9679 100644 --- a/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java +++ b/Essentials/src/com/earth2me/essentials/EssentialsPlayerListener.java @@ -39,7 +39,7 @@ public class EssentialsPlayerListener extends PlayerListener updateCompass(user); if (ess.getSettings().changeDisplayName()) { - user.setDisplayNick(user.getNick()); + user.setDisplayNick(); } } @@ -65,7 +65,7 @@ public class EssentialsPlayerListener extends PlayerListener user.updateActivity(true); if (ess.getSettings().changeDisplayName()) { - user.setDisplayNick(user.getNick()); + user.setDisplayNick(); } } @@ -155,7 +155,7 @@ public class EssentialsPlayerListener extends PlayerListener if (ess.getSettings().changeDisplayName()) { - user.setDisplayNick(user.getNick()); + user.setDisplayNick(); } user.setLastLoginAddress(user.getAddress().getAddress().getHostAddress()); user.updateActivity(false); @@ -248,7 +248,7 @@ public class EssentialsPlayerListener extends PlayerListener final User user = ess.getUser(event.getPlayer()); if (ess.getSettings().changeDisplayName()) { - user.setDisplayNick(user.getNick()); + user.setDisplayNick(); } updateCompass(user); } diff --git a/Essentials/src/com/earth2me/essentials/User.java b/Essentials/src/com/earth2me/essentials/User.java index f4ded533c..8a5dd3138 100644 --- a/Essentials/src/com/earth2me/essentials/User.java +++ b/Essentials/src/com/earth2me/essentials/User.java @@ -235,7 +235,7 @@ public class User extends UserData implements Comparable, IReplyTo, IUser return teleportRequestHere; } - public String getNick() + public String getNick(boolean addprefixsuffix) { final StringBuilder nickname = new StringBuilder(); final String nick = getNickname(); @@ -259,7 +259,7 @@ public class User extends UserData implements Comparable, IReplyTo, IUser } } - if (ess.getSettings().addPrefixSuffix()) + if (addprefixsuffix && ess.getSettings().addPrefixSuffix()) { if (!ess.getSettings().disablePrefix()) { @@ -284,10 +284,15 @@ public class User extends UserData implements Comparable, IReplyTo, IUser return nickname.toString(); } - public void setDisplayNick(String name) + public void setDisplayNick() { + String name = getNick(true); setDisplayName(name); if (name.length() > 16) + { + name = getNick(false); + } + if (name.length() > 16) { name = name.substring(0, name.charAt(15) == '§' ? 15 : 16); } @@ -306,7 +311,7 @@ public class User extends UserData implements Comparable, IReplyTo, IUser { if (!(base instanceof OfflinePlayer) && ess.getSettings().changeDisplayName()) { - setDisplayNick(getNick()); + setDisplayNick(); } return super.getDisplayName() == null ? super.getName() : super.getDisplayName(); } diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java b/Essentials/src/com/earth2me/essentials/commands/Commandnick.java index e3e9d0b67..fa46cf3d4 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandnick.java @@ -61,8 +61,8 @@ public class Commandnick extends EssentialsCommand } else if ("off".equalsIgnoreCase(nick) || target.getName().equalsIgnoreCase(nick)) { - target.setDisplayNick(target.getName()); target.setNickname(null); + target.setDisplayNick(); target.sendMessage(Util.i18n("nickNoMore")); } else @@ -83,8 +83,8 @@ public class Commandnick extends EssentialsCommand } } - target.setDisplayNick(ess.getSettings().getNicknamePrefix() + formattedNick); target.setNickname(formattedNick); + target.setDisplayNick(); target.sendMessage(Util.format("nickSet", target.getDisplayName() + "§7.")); } } diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java b/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java index b8081d04e..c99503eef 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandwhois.java @@ -43,9 +43,9 @@ public class Commandwhois extends EssentialsCommand { continue; } - final String displayName = ChatColor.stripColor(user.getNick()); - if (!whois.equalsIgnoreCase(displayName) - && !whois.equalsIgnoreCase(displayName.substring(prefixLength)) + final String nickName = ChatColor.stripColor(user.getNickname()); + if (!whois.equalsIgnoreCase(nickName) + && !whois.substring(prefixLength).equalsIgnoreCase(nickName) && !whois.equalsIgnoreCase(user.getName())) { continue; From 40f3f7fcd1f3a1cdcfbe5aad75c52f6a469f9427 Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 16:50:08 +0100 Subject: [PATCH 09/10] Prevent NPE with creatures that are not added to bucket yet. --- .../protect/EssentialsProtectEntityListener.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java index bbf67607f..f901844d2 100644 --- a/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java +++ b/EssentialsProtect/src/com/earth2me/essentials/protect/EssentialsProtectEntityListener.java @@ -14,6 +14,7 @@ import org.bukkit.block.Block; import org.bukkit.block.BlockFace; import org.bukkit.craftbukkit.CraftServer; import org.bukkit.craftbukkit.CraftWorld; +import org.bukkit.entity.CreatureType; import org.bukkit.entity.Creeper; import org.bukkit.entity.Entity; import org.bukkit.entity.Fireball; @@ -309,7 +310,12 @@ public class EssentialsProtectEntityListener extends EntityListener { return; } - final String creatureName = event.getCreatureType().toString().toLowerCase(); + final CreatureType creature = event.getCreatureType(); + if (creature == null) + { + return; + } + final String creatureName = creature.toString().toLowerCase(); if (creatureName == null || creatureName.isEmpty()) { return; From 0d0eb1e8bd50d0ed8cbb0a496fa8c6a349e88635 Mon Sep 17 00:00:00 2001 From: snowleo Date: Sun, 20 Nov 2011 19:12:20 +0100 Subject: [PATCH 10/10] Fix timeWorldCurrent translation key in /time command --- .../src/com/earth2me/essentials/commands/Commandtime.java | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandtime.java b/Essentials/src/com/earth2me/essentials/commands/Commandtime.java index 30ecaaf54..4535e5fe2 100644 --- a/Essentials/src/com/earth2me/essentials/commands/Commandtime.java +++ b/Essentials/src/com/earth2me/essentials/commands/Commandtime.java @@ -69,7 +69,7 @@ public class Commandtime extends EssentialsCommand for (World world : worlds) { - sender.sendMessage(Util.format("timeCurrentWorld", world.getName(), DescParseTickFormat.format(world.getTime()))); + sender.sendMessage(Util.format("timeWorldCurrent", world.getName(), DescParseTickFormat.format(world.getTime()))); } }