summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorKhyperia <khyperia@live.com>2011-12-06 06:25:54 +0800
committersnowleo <schneeleo@gmail.com>2011-12-07 08:53:14 +0800
commita0d66ce23049b6309090b9fcf021487fce71d75d (patch)
tree9e13100f114ea6ff21f746e10d6a44a801919e3a
parent854fc05c5b3a3d1d1ed40a0755eac401043b92b4 (diff)
downloadEssentials-a0d66ce23049b6309090b9fcf021487fce71d75d.tar
Essentials-a0d66ce23049b6309090b9fcf021487fce71d75d.tar.gz
Essentials-a0d66ce23049b6309090b9fcf021487fce71d75d.tar.lz
Essentials-a0d66ce23049b6309090b9fcf021487fce71d75d.tar.xz
Essentials-a0d66ce23049b6309090b9fcf021487fce71d75d.zip
New command: /find <item>
Test #278 Test #293 Test #348
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandfind.java25
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandlightning.java23
-rw-r--r--Essentials/src/com/earth2me/essentials/commands/Commandnick.java23
-rw-r--r--Essentials/src/plugin.yml6
4 files changed, 74 insertions, 3 deletions
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandfind.java b/Essentials/src/com/earth2me/essentials/commands/Commandfind.java
new file mode 100644
index 000000000..40590501f
--- /dev/null
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandfind.java
@@ -0,0 +1,25 @@
+package com.earth2me.essentials.commands;
+
+import org.bukkit.Server;
+import org.bukkit.command.CommandSender;
+import org.bukkit.inventory.ItemStack;
+
+
+public class Commandfind extends EssentialsCommand
+{
+ public Commandfind()
+ {
+ super("find");
+ }
+
+ @Override
+ protected void run(Server server, CommandSender sender, String commandLabel, String[] args) throws Exception
+ {
+ if (args.length < 1)
+ {
+ throw new NotEnoughArgumentsException();
+ }
+ ItemStack itemStack = ess.getItemDb().get(args[0]);
+ sender.sendMessage(itemStack.getType().toString() + "- " + itemStack.getTypeId() + ":" + Integer.toString(itemStack.getData().getData()));
+ }
+}
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandlightning.java b/Essentials/src/com/earth2me/essentials/commands/Commandlightning.java
index 582f048a1..be9ac61f5 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandlightning.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandlightning.java
@@ -4,6 +4,7 @@ import static com.earth2me.essentials.I18n._;
import com.earth2me.essentials.User;
import org.bukkit.Server;
import org.bukkit.command.CommandSender;
+import org.bukkit.entity.LightningStrike;
import org.bukkit.entity.Player;
@@ -34,10 +35,30 @@ public class Commandlightning extends EssentialsCommand
throw new Exception(_("playerNotFound"));
}
+ int power = 1;
+ if (args.length > 1)
+ {
+ try
+ {
+ power = Integer.parseInt(args[1]);
+ }
+ catch (NumberFormatException ex)
+ {
+ }
+ }
+
for (Player matchPlayer : server.matchPlayer(args[0]))
{
sender.sendMessage(_("lightningUse", matchPlayer.getDisplayName()));
- matchPlayer.getWorld().strikeLightning(matchPlayer.getLocation());
+ if (power <= 0)
+ {
+ matchPlayer.getWorld().strikeLightningEffect(matchPlayer.getLocation());
+ }
+ else
+ {
+ LightningStrike strike = matchPlayer.getWorld().strikeLightning(matchPlayer.getLocation());
+ matchPlayer.damage(power - 1, strike);
+ }
if (!ess.getUser(matchPlayer).isGodModeEnabled())
{
matchPlayer.setHealth(matchPlayer.getHealth() < 5 ? 0 : matchPlayer.getHealth() - 5);
diff --git a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java b/Essentials/src/com/earth2me/essentials/commands/Commandnick.java
index a1f1c77ca..95ad5ea84 100644
--- a/Essentials/src/com/earth2me/essentials/commands/Commandnick.java
+++ b/Essentials/src/com/earth2me/essentials/commands/Commandnick.java
@@ -50,7 +50,14 @@ public class Commandnick extends EssentialsCommand
{
throw new Exception(_("nickDisplayName"));
}
- setNickname(server, getPlayer(server, args, 0), formatNickname(null, args[1]));
+ if ((args[0].equalsIgnoreCase("*") || args[0].equalsIgnoreCase("all")) && args[1].equalsIgnoreCase("off"))
+ {
+ resetAllNicknames(server);
+ }
+ else
+ {
+ setNickname(server, getPlayer(server, args, 0), formatNickname(null, args[1]));
+ }
sender.sendMessage(_("nickChanged"));
}
@@ -63,6 +70,20 @@ public class Commandnick extends EssentialsCommand
return nick;
}
+ private void resetAllNicknames(final Server server)
+ {
+ for (Player player : server.getOnlinePlayers())
+ {
+ try
+ {
+ setNickname(server, ess.getUser(player), "off");
+ }
+ catch (Exception ex)
+ {
+ }
+ }
+ }
+
private void setNickname(final Server server, final User target, final String nick) throws Exception
{
if (nick.matches("[^a-zA-Z_0-9]"))
diff --git a/Essentials/src/plugin.yml b/Essentials/src/plugin.yml
index e6bf865b7..681ff428f 100644
--- a/Essentials/src/plugin.yml
+++ b/Essentials/src/plugin.yml
@@ -102,6 +102,10 @@ commands:
description: Satisfy the hunger.
usage: /<command> [player]
aliases: [efeed]
+ find:
+ description: Searches for an item.
+ usage: /<command> <item>
+ aliases: [efind]
fireball:
description: Throw a fireball.
usage: /<command> [small]
@@ -188,7 +192,7 @@ commands:
aliases: [playerlist,who,online,elist,ewho,eplayerlist,eonline]
lightning:
description: The power of Thor. Strike at cursor or player.
- usage: /<command> [player]
+ usage: /<command> [player] [power]
aliases: [strike,smite,thor,shock,elightning,estrike,esmite,ethor,eshock]
mail:
description: Manages inter-player, intra-server mail.