1
0
mirror of https://github.com/essentials/Essentials.git synced 2025-08-12 17:45:08 +02:00

Removing server layer part 2

This commit is contained in:
snowleo
2012-08-26 20:17:29 +02:00
parent b98021acab
commit 50ab5ffd93
75 changed files with 429 additions and 537 deletions

View File

@@ -36,7 +36,7 @@
<dependency> <dependency>
<groupId>org.projectlombok</groupId> <groupId>org.projectlombok</groupId>
<artifactId>lombok</artifactId> <artifactId>lombok</artifactId>
<version>0.11.2</version> <version>0.11.4</version>
</dependency> </dependency>
<dependency> <dependency>
<groupId>ru.tehkode</groupId> <groupId>ru.tehkode</groupId>

View File

@@ -17,7 +17,6 @@
*/ */
package net.ess3; package net.ess3;
import java.io.File; import java.io.File;
import java.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.ArrayList;
@@ -87,7 +86,7 @@ public class Essentials implements IEssentials
@Getter @Getter
private transient List<String> vanishedPlayers = new ArrayList<String>(); private transient List<String> vanishedPlayers = new ArrayList<String>();
public Essentials(final Server server, final Logger logger, final Plugin plugin) public Essentials(final Server server, final Logger logger, final IPlugin plugin)
{ {
this.server = server; this.server = server;
this.logger = logger; this.logger = logger;
@@ -132,83 +131,44 @@ public class Essentials implements IEssentials
execTimer.start(); execTimer.start();
execTimer.mark("I18n1"); execTimer.mark("I18n1");
execTimer.mark("BukkitCheck"); execTimer.mark("BukkitCheck");
try
{ //final EssentialsUpgrade upgrade = new EssentialsUpgrade(this);
//final EssentialsUpgrade upgrade = new EssentialsUpgrade(this); //upgrade.beforeSettings();
//upgrade.beforeSettings(); //execTimer.mark("Upgrade");
//execTimer.mark("Upgrade"); reloadList = new ArrayList<IReload>();
reloadList = new ArrayList<IReload>(); settings = new SettingsHolder(this);
settings = new SettingsHolder(this); reloadList.add(settings);
reloadList.add(settings); execTimer.mark("Settings");
execTimer.mark("Settings"); //upgrade.afterSettings();
//upgrade.afterSettings(); //execTimer.mark("Upgrade2");
//execTimer.mark("Upgrade2"); i18n.updateLocale(settings.getLocale());
i18n.updateLocale(settings.getLocale()); userMap = new UserMap(this);
userMap = new UserMap(this); reloadList.add(userMap);
reloadList.add(userMap); execTimer.mark("Init(Usermap)");
execTimer.mark("Init(Usermap)"); groups = new RanksStorage(this);
groups = new RanksStorage(this); reloadList.add((RanksStorage)groups);
reloadList.add((RanksStorage)groups); warps = new Warps(this);
warps = new Warps(this); reloadList.add(warps);
reloadList.add(warps); execTimer.mark("Init(Spawn/Warp)");
execTimer.mark("Init(Spawn/Warp)"); worth = new WorthHolder(this);
worth = new WorthHolder(this); reloadList.add(worth);
reloadList.add(worth); itemDb = new ItemDb(this);
itemDb = new ItemDb(this); reloadList.add(itemDb);
reloadList.add(itemDb); execTimer.mark("Init(Worth/ItemDB)");
execTimer.mark("Init(Worth/ItemDB)"); kits = new Kits(this);
kits = new Kits(this); reloadList.add(kits);
reloadList.add(kits); commandHandler = new EssentialsCommandHandler(Essentials.class.getClassLoader(), "net.ess3.commands.Command", "essentials.", this);
commandHandler = new EssentialsCommandHandler(Essentials.class.getClassLoader(), "net.ess3.commands.Command", "essentials.", this); reloadList.add(commandHandler);
reloadList.add(commandHandler); economy = new Economy(this);
economy = new Economy(this); reloadList.add(economy);
reloadList.add(economy); spawns = new SpawnsHolder(this);
spawns = new SpawnsHolder(this); reloadList.add(spawns);
reloadList.add(spawns); onReload();
onReload();
}
catch (YAMLException exception)
{
if (pm.getPlugin("EssentialsUpdate") != null)
{
logger.log(Level.SEVERE, I18n._("essentialsHelp2"));
}
else
{
logger.log(Level.SEVERE, I18n._("essentialsHelp1"));
}
logger.log(Level.SEVERE, exception.toString());
pm.registerEvents(new Listener()
{
@EventHandler(priority = EventPriority.LOW)
public void onPlayerJoin(final PlayerJoinEvent event)
{
event.getPlayer().sendMessage("Essentials failed to load, read the log file.");
}
}, this);
for (Player player : getServer().getOnlinePlayers())
{
player.sendMessage("Essentials failed to load, read the log file.");
}
this.getPlugin().setEnabled(false);
return;
}
backup = new Backup(this); backup = new Backup(this);
//permissionsHandler = new PermissionsHandler(this); //permissionsHandler = new PermissionsHandler(this);
final EssentialsPluginListener serverListener = new EssentialsPluginListener(this);
pm.registerEvents(serverListener, this);
reloadList.add(serverListener);
final EssentialsPlayerListener playerListener = new EssentialsPlayerListener(this);
pm.registerEvents(playerListener, this);
final EssentialsBlockListener blockListener = new EssentialsBlockListener(this);
pm.registerEvents(blockListener, this);
final EssentialsEntityListener entityListener = new EssentialsEntityListener(this);
pm.registerEvents(entityListener, this);
jails = new Jails(this); jails = new Jails(this);
reloadList.add(jails); reloadList.add(jails);
@@ -218,17 +178,6 @@ public class Essentials implements IEssentials
getPlugin().scheduleSyncRepeatingTask(timer, 1, 100); getPlugin().scheduleSyncRepeatingTask(timer, 1, 100);
execTimer.mark("RegListeners"); execTimer.mark("RegListeners");
final MetricsStarter metricsStarter = new MetricsStarter(this);
if (metricsStarter.getStart() != null && metricsStarter.getStart() == true)
{
getServer().getScheduler().scheduleAsyncDelayedTask(this.getPlugin(), metricsStarter, 1);
}
else if (metricsStarter.getStart() != null && metricsStarter.getStart() == false)
{
final MetricsListener metricsListener = new MetricsListener(this, metricsStarter);
pm.registerEvents(metricsListener, this);
}
final String timeroutput = execTimer.end(); final String timeroutput = execTimer.end();
if (getSettings().isDebug()) if (getSettings().isDebug())
{ {
@@ -241,7 +190,7 @@ public class Essentials implements IEssentials
{ {
for (Player p : getServer().getOnlinePlayers()) for (Player p : getServer().getOnlinePlayers())
{ {
IUser user = getUser(p); IUser user = getUserMap().getUser(p);
if (user.isVanished()) if (user.isVanished())
{ {
user.toggleVanished(); user.toggleVanished();
@@ -347,7 +296,7 @@ public class Essentials implements IEssentials
} }
for (Player player : getServer().getOnlinePlayers()) for (Player player : getServer().getOnlinePlayers())
{ {
final IUser user = player.getUser(); final IUser user = getUserMap().getUser(player);
if (!user.isIgnoringPlayer(sender)) if (!user.isIgnoringPlayer(sender))
{ {
player.sendMessage(message); player.sendMessage(message);
@@ -371,7 +320,7 @@ public class Essentials implements IEssentials
{ {
return userMap; return userMap;
} }
@Override @Override
public IRanks getRanks() public IRanks getRanks()
{ {

View File

@@ -46,7 +46,7 @@ public class EssentialsTimer implements Runnable
try try
{ {
final IUser user = player.getUser(); final IUser user = ess.getUserMap().getUser(player);
if (user == null) { if (user == null) {
continue; continue;
} }

View File

@@ -6,6 +6,8 @@ import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
public interface IPlugin extends Plugin { public interface IPlugin extends Plugin {
IEssentials getEssentials();
int scheduleAsyncDelayedTask(final Runnable run); int scheduleAsyncDelayedTask(final Runnable run);
int scheduleSyncDelayedTask(final Runnable run); int scheduleSyncDelayedTask(final Runnable run);

View File

@@ -120,6 +120,22 @@ public interface IUser extends OfflinePlayer, CommandSender, IStorageObjectHolde
void setGodModeEnabled(boolean set); void setGodModeEnabled(boolean set);
void setVanished(boolean set); void setVanished(boolean set);
/**
* Since the Player object should not be stored for a long time, this method should be called again with a null
* value or the close() method should be called.
*
* @param player
*/
void setPlayerCache(Player player); void setPlayerCache(Player player);
/**
* If this is not cached using the setPlayerCache method, this call is slow and should not be called often.
*
* It iterates over all players, that are online and does a equal check on their names.
*
* @return
*/
@Override
Player getPlayer();
} }

View File

@@ -23,7 +23,17 @@ public interface IUserMap extends IReload
File getUserFile(final String name) throws InvalidNameException; File getUserFile(final String name) throws InvalidNameException;
/**
* This method never returns null.
*
* @param name
* @param includeHidden
* @param includeOffline
* @return
* @throws TooManyMatchesException if more than one player is found matching the name
* @throws PlayerNotFoundException if the player matching the name is not found
*/
IUser matchUser(final String name, final boolean includeHidden, final boolean includeOffline) throws TooManyMatchesException, PlayerNotFoundException; IUser matchUser(final String name, final boolean includeHidden, final boolean includeOffline) throws TooManyMatchesException, PlayerNotFoundException;
Set<IUser> matchUsers(final String name, final boolean includeHidden, final boolean includeOffline) throws PlayerNotFoundException; Set<IUser> matchUsers(final String name, final boolean includeHidden, final boolean includeOffline);
} }

View File

@@ -4,7 +4,14 @@ import java.io.File;
import java.util.logging.Level; import java.util.logging.Level;
import net.ess3.Essentials; import net.ess3.Essentials;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IEssentials;
import net.ess3.api.IPlugin; import net.ess3.api.IPlugin;
import net.ess3.listener.EssentialsBlockListener;
import net.ess3.listener.EssentialsEntityListener;
import net.ess3.listener.EssentialsPlayerListener;
import net.ess3.listener.EssentialsPluginListener;
import net.ess3.metrics.MetricsListener;
import net.ess3.metrics.MetricsStarter;
import org.bukkit.Location; import org.bukkit.Location;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@@ -60,11 +67,38 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
player.sendMessage("Essentials failed to load, read the log file."); player.sendMessage("Essentials failed to load, read the log file.");
} }
this.setEnabled(false); this.setEnabled(false);
return;
} }
} }
else else
{ {
this.setEnabled(false); this.setEnabled(false);
return;
}
final EssentialsPluginListener serverListener = new EssentialsPluginListener(ess);
pm.registerEvents(serverListener, this);
ess.addReloadListener(serverListener);
final EssentialsPlayerListener playerListener = new EssentialsPlayerListener(ess);
pm.registerEvents(playerListener, this);
final EssentialsBlockListener blockListener = new EssentialsBlockListener(ess);
pm.registerEvents(blockListener, this);
final EssentialsEntityListener entityListener = new EssentialsEntityListener(ess);
pm.registerEvents(entityListener, this);
final MetricsStarter metricsStarter = new MetricsStarter(ess);
if (metricsStarter.getStart() != null && metricsStarter.getStart() == true)
{
getServer().getScheduler().scheduleAsyncDelayedTask(this, metricsStarter, 1);
}
else if (metricsStarter.getStart() != null && metricsStarter.getStart() == false)
{
final MetricsListener metricsListener = new MetricsListener(ess, metricsStarter);
pm.registerEvents(metricsListener, this);
} }
} }
@@ -152,4 +186,10 @@ public class BukkitPlugin extends JavaPlugin implements IPlugin
EntityDamageEvent ede = new EntityDamageEvent(player, EntityDamageEvent.DamageCause.SUICIDE, 1000); EntityDamageEvent ede = new EntityDamageEvent(player, EntityDamageEvent.DamageCause.SUICIDE, 1000);
getServer().getPluginManager().callEvent(ede); getServer().getPluginManager().callEvent(ede);
} }
@Override
public IEssentials getEssentials()
{
return ess;
}
} }

View File

@@ -1,7 +1,7 @@
package net.ess3.commands; package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.server.CommandSender; import org.bukkit.command.CommandSender;
public class Commanddelwarp extends EssentialsCommand public class Commanddelwarp extends EssentialsCommand

View File

@@ -9,7 +9,7 @@ public class Commanddepth extends EssentialsCommand
@Override @Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{ {
final int depth = user.getLocation().getBlockY() - 63; final int depth = user.getPlayer().getLocation().getBlockY() - 63;
if (depth > 0) if (depth > 0)
{ {
user.sendMessage(_("depthAboveSea", depth)); user.sendMessage(_("depthAboveSea", depth));

View File

@@ -5,8 +5,8 @@ import lombok.Cleanup;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.ISettings; import net.ess3.api.ISettings;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender; import org.bukkit.command.CommandSender;
import net.ess3.api.server.Player; import org.bukkit.entity.Player;
public class Commandeco extends EssentialsCommand public class Commandeco extends EssentialsCommand

View File

@@ -63,7 +63,7 @@ public class Commandenchant extends EssentialsCommand
{ {
stack.addEnchantment(enchantment, level); stack.addEnchantment(enchantment, level);
} }
user.getInventory().setxItemInHand(stack); user.getInventory().setItemInHand(stack);
user.updateInventory(); user.updateInventory();
final String enchantmentName = enchantment.getName().toLowerCase(Locale.ENGLISH); final String enchantmentName = enchantment.getName().toLowerCase(Locale.ENGLISH);
if (level == 0) if (level == 0)

View File

@@ -1,20 +1,14 @@
package net.ess3.commands; package net.ess3.commands;
import java.util.HashMap;
import java.util.Map; import java.util.Map;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.server.CommandSender; import org.bukkit.command.CommandSender;
import net.ess3.api.server.Location;
import net.ess3.api.server.Material;
import net.ess3.api.server.Player;
import org.bukkit.block.Block;
public class Commandessentials extends EssentialsCommand public class Commandessentials extends EssentialsCommand
{ {
private transient int taskid; private transient int taskid;
private final transient Map<Player, Block> noteBlocks = new HashMap<Player, Block>();
@Override @Override
protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception protected void run(final CommandSender sender, final String commandLabel, final String[] args) throws Exception
{ {
@@ -26,14 +20,6 @@ public class Commandessentials extends EssentialsCommand
{ {
run_debug(sender, args); run_debug(sender, args);
} }
else if (args[0].equalsIgnoreCase("nya"))
{
run_nya(sender, args);
}
else if (args[0].equalsIgnoreCase("moo"))
{
run_moo(sender, args);
}
else else
{ {
run_reload(sender, args); run_reload(sender, args);
@@ -68,103 +54,4 @@ public class Commandessentials extends EssentialsCommand
ess.reload(); ess.reload();
sender.sendMessage(_("essentialsReload", ess.getPlugin().getVersion())); sender.sendMessage(_("essentialsReload", ess.getPlugin().getVersion()));
} }
private void run_nya(final CommandSender sender, final String[] args) throws Exception
{
final Map<String, Byte> noteMap = new HashMap<String, Byte>();
noteMap.put("1F#", (byte)0x0);
noteMap.put("1G", (byte)0x1);
noteMap.put("1G#", (byte)0x2);
noteMap.put("1A", (byte)0x3);
noteMap.put("1A#", (byte)0x4);
noteMap.put("1B", (byte)0x5);
noteMap.put("1C", (byte)0x6);
noteMap.put("1C#", (byte)0x7);
noteMap.put("1D", (byte)0x8);
noteMap.put("1D#", (byte)0x9);
noteMap.put("1E", (byte)0xA);
noteMap.put("1F", (byte)0xB);
noteMap.put("2F#", (byte)(0x0 + 0xC));
noteMap.put("2G", (byte)(0x1 + 0xC));
noteMap.put("2G#", (byte)(0x2 + 0xC));
noteMap.put("2A", (byte)(0x3 + 0xC));
noteMap.put("2A#", (byte)(0x4 + 0xC));
noteMap.put("2B", (byte)(0x5 + 0xC));
noteMap.put("2C", (byte)(0x6 + 0xC));
noteMap.put("2C#", (byte)(0x7 + 0xC));
noteMap.put("2D", (byte)(0x8 + 0xC));
noteMap.put("2D#", (byte)(0x9 + 0xC));
noteMap.put("2E", (byte)(0xA + 0xC));
noteMap.put("2F", (byte)(0xB + 0xC));
if (!noteBlocks.isEmpty())
{
return;
}
final String tuneStr = "1D#,1E,2F#,,2A#,1E,1D#,1E,2F#,2B,2D#,2E,2D#,2A#,2B,,2F#,,1D#,1E,2F#,2B,2C#,2A#,2B,2C#,2E,2D#,2E,2C#,,2F#,,2G#,,1D,1D#,,1C#,1D,1C#,1B,,1B,,1C#,,1D,,1D,1C#,1B,1C#,1D#,2F#,2G#,1D#,2F#,1C#,1D#,1B,1C#,1B,1D#,,2F#,,2G#,1D#,2F#,1C#,1D#,1B,1D,1D#,1D,1C#,1B,1C#,1D,,1B,1C#,1D#,2F#,1C#,1D,1C#,1B,1C#,,1B,,1C#,,2F#,,2G#,,1D,1D#,,1C#,1D,1C#,1B,,1B,,1C#,,1D,,1D,1C#,1B,1C#,1D#,2F#,2G#,1D#,2F#,1C#,1D#,1B,1C#,1B,1D#,,2F#,,2G#,1D#,2F#,1C#,1D#,1B,1D,1D#,1D,1C#,1B,1C#,1D,,1B,1C#,1D#,2F#,1C#,1D,1C#,1B,1C#,,1B,,1B,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1A#,,1B,,1F#,1G#,1B,,1F#,1G#,1B,1C#,1D#,1B,1E,1D#,1E,2F#,1B,,1B,,1F#,1G#,1B,1F#,1E,1D#,1C#,1B,,,,1F#,1B,,1F#,1G#,1B,,1F#,1G#,1B,1B,1C#,1D#,1B,1F#,1G#,1F#,1B,,1B,1A#,1B,1F#,1G#,1B,1E,1D#,1E,2F#,1B,,1B,,";
final String[] tune = tuneStr.split(",");
for (Player player : server.getOnlinePlayers())
{
final Location loc = player.getLocation();
loc.add(0, 3, 0);
while (loc.getBlockY() < player.getLocation().getBlockY() + 10 && loc.getBlock().getTypeId() != 0)
{
loc.add(0, 1, 0);
}
if (loc.getBlock().getTypeId() == 0)
{
noteBlocks.put(player, loc.getBlock());
player.sendBlockChange(loc, Material.NOTE_BLOCK, (byte)0);
}
}
taskid = ess.getPlugin().scheduleSyncRepeatingTask(new Runnable()
{
int i = 0;
@Override
public void run()
{
final String note = tune[i];
i++;
if (i >= tune.length)
{
Commandessentials.this.stopTune();
}
if (note.isEmpty())
{
return;
}
Map<Player, Block> noteBlocks = Commandessentials.this.noteBlocks;
for (Player onlinePlayer : server.getOnlinePlayers())
{
final Block block = noteBlocks.get(onlinePlayer);
if (block == null || block.getType() != Material.NOTE_BLOCK)
{
continue;
}
onlinePlayer.playNote(block.getLocation(), (byte)0, noteMap.get(note));
}
}
}, 20, 2);
}
private void stopTune()
{
ess.getPlugin().cancelTask(taskid);
for (Block block : noteBlocks.values())
{
if (block.getType() == Material.NOTE_BLOCK)
{
block.setType(Material.AIR);
}
}
noteBlocks.clear();
}
private void run_moo(final CommandSender sender, final String args[])
{
if(sender == ess.getServer().getConsoleSender())
sender.sendMessage(new String[]{" (__)", " (oo)", " /------\\/", " / | ||", " * /\\---/\\", " ~~ ~~", "....\"Have you mooed today?\"..." } );
else
sender.sendMessage(new String[]{" (__)", " (oo)", " /------\\/", " / | | |", " * /\\---/\\", " ~~ ~~", "....\"Have you mooed today?\"..." } );
}
} }

View File

@@ -2,10 +2,10 @@ package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.craftbukkit.SetExpFix; import net.ess3.craftbukkit.SetExpFix;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.command.CommandSender;
public class Commandexp extends EssentialsCommand public class Commandexp extends EssentialsCommand

View File

@@ -2,8 +2,7 @@ package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender; import org.bukkit.command.CommandSender;
import net.ess3.api.server.Player;
public class Commandext extends EssentialsCommand public class Commandext extends EssentialsCommand
@@ -24,7 +23,7 @@ public class Commandext extends EssentialsCommand
{ {
if (args.length < 1) if (args.length < 1)
{ {
user.setFireTicks(0); user.getPlayer().setFireTicks(0);
user.sendMessage(_("extinguish")); user.sendMessage(_("extinguish"));
return; return;
} }
@@ -34,10 +33,10 @@ public class Commandext extends EssentialsCommand
private void extinguishPlayers(final CommandSender sender, final String name) throws Exception private void extinguishPlayers(final CommandSender sender, final String name) throws Exception
{ {
for (Player matchPlayer : ess.getUserMap().matchUsers(name, false, false)) for (IUser matchPlayer : ess.getUserMap().matchUsers(name, false, false))
{ {
matchPlayer.setFireTicks(0); matchPlayer.getPlayer().setFireTicks(0);
sender.sendMessage(_("extinguishOthers", matchPlayer.getDisplayName())); sender.sendMessage(_("extinguishOthers", matchPlayer.getPlayer().getDisplayName()));
} }
} }
} }

View File

@@ -3,9 +3,8 @@ package net.ess3.commands;
import java.util.Set; import java.util.Set;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.command.CommandSender;
public class Commandfeed extends EssentialsCommand public class Commandfeed extends EssentialsCommand
@@ -19,8 +18,8 @@ public class Commandfeed extends EssentialsCommand
} }
else else
{ {
user.setFoodLevel(20); user.getPlayer().setFoodLevel(20);
user.setSaturation(10); user.getPlayer().setSaturation(10);
user.sendMessage(_("feed")); user.sendMessage(_("feed"));
} }
} }
@@ -33,11 +32,11 @@ public class Commandfeed extends EssentialsCommand
sender.sendMessage(_("playerNotFound")); sender.sendMessage(_("playerNotFound"));
return; return;
} }
for (Player player : users) for (IUser player : users)
{ {
player.setFoodLevel(20); player.getPlayer().setFoodLevel(20);
player.setSaturation(10); player.getPlayer().setSaturation(10);
sender.sendMessage(_("feedOther", player.getDisplayName())); sender.sendMessage(_("feedOther", player.getPlayer().getDisplayName()));
} }
} }
} }

View File

@@ -16,8 +16,8 @@ public class Commandfireball extends EssentialsCommand
{ {
small = true; small = true;
} }
final Vector direction = user.getEyeLocation().getDirection().multiply(2); final Vector direction = user.getPlayer().getEyeLocation().getDirection().multiply(2);
final Fireball fireball = user.getWorld().spawn(user.getEyeLocation().add(direction.getX(), direction.getY(), direction.getZ()), small ? SmallFireball.class : Fireball.class); final Fireball fireball = user.getPlayer().getWorld().spawn(user.getPlayer().getEyeLocation().add(direction.getX(), direction.getY(), direction.getZ()), small ? SmallFireball.class : Fireball.class);
fireball.setShooter(user.getBase()); fireball.setShooter(user.getPlayer());
} }
} }

View File

@@ -2,10 +2,9 @@ package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.api.server.Server;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.Server;
import org.bukkit.command.CommandSender;
@@ -31,39 +30,39 @@ public class Commandfly extends EssentialsCommand
flyOtherPlayers(server, user, args); flyOtherPlayers(server, user, args);
return; return;
} }
user.setAllowFlight(!user.getAllowFlight()); user.getPlayer().setAllowFlight(!user.getPlayer().getAllowFlight());
if (!user.getAllowFlight()) if (!user.getPlayer().getAllowFlight())
{ {
user.setFlying(false); user.getPlayer().setFlying(false);
} }
user.sendMessage(_("flyMode", _(user.getAllowFlight() ? "enabled" : "disabled"), user.getDisplayName())); user.sendMessage(_("flyMode", _(user.getPlayer().getAllowFlight() ? "enabled" : "disabled"), user.getPlayer().getDisplayName()));
} }
private void flyOtherPlayers(final Server server, final CommandSender sender, final String[] args) private void flyOtherPlayers(final Server server, final CommandSender sender, final String[] args)
{ {
for (Player matchPlayer : ess.getUserMap().matchUsers(args[0],false,false)) for (IUser matchPlayer : ess.getUserMap().matchUsers(args[0],false,false))
{ {
if (args.length > 1) if (args.length > 1)
{ {
if (args[1].contains("on") || args[1].contains("ena") || args[1].equalsIgnoreCase("1")) if (args[1].contains("on") || args[1].contains("ena") || args[1].equalsIgnoreCase("1"))
{ {
matchPlayer.setAllowFlight(true); matchPlayer.getPlayer().setAllowFlight(true);
} }
else else
{ {
matchPlayer.setAllowFlight(false); matchPlayer.getPlayer().setAllowFlight(false);
} }
} }
else else
{ {
matchPlayer.setAllowFlight(!matchPlayer.getAllowFlight()); matchPlayer.getPlayer().setAllowFlight(!matchPlayer.getPlayer().getAllowFlight());
} }
if (!matchPlayer.getAllowFlight()) if (!matchPlayer.getPlayer().getAllowFlight())
{ {
matchPlayer.setFlying(false); matchPlayer.getPlayer().setFlying(false);
} }
sender.sendMessage(_("flyMode", _(matchPlayer.getAllowFlight() ? "enabled" : "disabled"), matchPlayer.getDisplayName())); sender.sendMessage(_("flyMode", _(matchPlayer.getPlayer().getAllowFlight() ? "enabled" : "disabled"), matchPlayer.getPlayer().getDisplayName()));
} }
} }
} }

View File

@@ -3,10 +3,9 @@ package net.ess3.commands;
import java.util.Locale; import java.util.Locale;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
// TODO: net.ess3 gamemode import org.bukkit.GameMode;
import org.bukkit.command.CommandSender;
public class Commandgamemode extends EssentialsCommand public class Commandgamemode extends EssentialsCommand
@@ -31,30 +30,30 @@ public class Commandgamemode extends EssentialsCommand
return; return;
} }
user.setGameMode(user.getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL); user.getPlayer().setGameMode(user.getPlayer().getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL);
user.sendMessage(_("gameMode", _(user.getGameMode().toString().toLowerCase(Locale.ENGLISH)), user.getDisplayName())); user.sendMessage(_("gameMode", _(user.getPlayer().getGameMode().toString().toLowerCase(Locale.ENGLISH)), user.getPlayer().getDisplayName()));
} }
private void gamemodeOtherPlayers(final CommandSender sender, final String args[]) private void gamemodeOtherPlayers(final CommandSender sender, final String args[])
{ {
for (Player player : ess.getUserMap().matchUsers(args[0], false, false)) for (IUser player : ess.getUserMap().matchUsers(args[0], false, false))
{ {
if (args.length > 1) if (args.length > 1)
{ {
if (args[1].contains("creat") || args[1].equalsIgnoreCase("1")) if (args[1].contains("creat") || args[1].equalsIgnoreCase("1"))
{ {
player.setGameMode(GameMode.CREATIVE); player.getPlayer().setGameMode(GameMode.CREATIVE);
} }
else else
{ {
player.setGameMode(GameMode.SURVIVAL); player.getPlayer().setGameMode(GameMode.SURVIVAL);
} }
} }
else else
{ {
player.setGameMode(player.getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL); player.getPlayer().setGameMode(player.getPlayer().getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL);
} }
sender.sendMessage(_("gameMode", _(player.getGameMode().toString().toLowerCase(Locale.ENGLISH)), player.getDisplayName())); sender.sendMessage(_("gameMode", _(player.getPlayer().getGameMode().toString().toLowerCase(Locale.ENGLISH)), player.getPlayer().getDisplayName()));
} }
} }
} }

View File

@@ -1,9 +1,9 @@
package net.ess3.commands; package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.World;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.World;
import org.bukkit.command.CommandSender;

View File

@@ -1,9 +1,9 @@
package net.ess3.commands; package net.ess3.commands;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Location;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.Location;
import org.bukkit.command.CommandSender;
@@ -18,12 +18,12 @@ public class Commandgetpos extends EssentialsCommand
final IUser otherUser = ess.getUserMap().matchUser(args[0], false, false); final IUser otherUser = ess.getUserMap().matchUser(args[0], false, false);
if (!otherUser.isHidden() || Permissions.LIST_HIDDEN.isAuthorized(user)) if (!otherUser.isHidden() || Permissions.LIST_HIDDEN.isAuthorized(user))
{ {
outputPosition(user, otherUser.getLocation(), user.getLocation()); outputPosition(user, otherUser.getPlayer().getLocation(), user.getPlayer().getLocation());
return; return;
} }
} }
outputPosition(user, user.getLocation(), null); outputPosition(user, user.getPlayer().getLocation(), null);
} }
@Override @Override
@@ -34,7 +34,7 @@ public class Commandgetpos extends EssentialsCommand
throw new NotEnoughArgumentsException(); throw new NotEnoughArgumentsException();
} }
final IUser user = ess.getUserMap().matchUser(args[0], false, false); final IUser user = ess.getUserMap().matchUser(args[0], false, false);
outputPosition(sender, user.getLocation(), null); outputPosition(sender, user.getPlayer().getLocation(), null);
} }
//TODO: Translate //TODO: Translate

View File

@@ -3,14 +3,12 @@ package net.ess3.commands;
import java.util.Locale; import java.util.Locale;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.ItemStack;
import net.ess3.api.server.Material;
import net.ess3.api.server.Player;
import net.ess3.permissions.GivePermissions; import net.ess3.permissions.GivePermissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.ChatColor; import org.bukkit.ChatColor;
import org.bukkit.command.CommandSender;
import org.bukkit.enchantments.Enchantment; import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemStack;
public class Commandgive extends EssentialsCommand public class Commandgive extends EssentialsCommand
@@ -22,8 +20,8 @@ public class Commandgive extends EssentialsCommand
{ {
throw new NotEnoughArgumentsException(); throw new NotEnoughArgumentsException();
} }
final IUser giveTo = getPlayer(args, 0); final IUser giveTo = ess.getUserMap().matchUser(args[0], false, false);
final ItemStack stack = ess.getItemDb().get(args[1], giveTo); final ItemStack stack = ess.getItemDb().get(args[1], giveTo);
@@ -34,14 +32,14 @@ public class Commandgive extends EssentialsCommand
} }
if (args.length > 3 && Util.isInt(args[2]) && Util.isInt(args[3])) if (args.length > 3 && Util.isInt(args[2]) && Util.isInt(args[3]))
{ {
stack.setAmount(Integer.parseInt(args[2])); stack.setAmount(Integer.parseInt(args[2]));
stack.setDurability(Short.parseShort(args[3])); stack.setDurability(Short.parseShort(args[3]));
} }
else if (args.length > 2 && Integer.parseInt(args[2]) > 0) else if (args.length > 2 && Integer.parseInt(args[2]) > 0)
{ {
stack.setAmount(Integer.parseInt(args[2])); stack.setAmount(Integer.parseInt(args[2]));
} }
if (args.length > 3) if (args.length > 3)
{ {
@@ -52,7 +50,7 @@ public class Commandgive extends EssentialsCommand
{ {
continue; continue;
} }
final Enchantment enchantment = Commandenchant.getEnchantment(split[0], sender instanceof Player ? ess.getUserMap().getUser((Player)sender) : null); final Enchantment enchantment = Commandenchant.getEnchantment(split[0], sender instanceof IUser ? (IUser)sender : null);
int level; int level;
if (split.length > 1) if (split.length > 1)
{ {
@@ -66,16 +64,16 @@ public class Commandgive extends EssentialsCommand
} }
} }
if (stack.getType() == Material.AIR) if (stack.getTypeId() == 0)
{ {
throw new Exception(_("cantSpawnItem", "Air")); throw new Exception(_("cantSpawnItem", "Air"));
} }
giveTo.giveItems(stack, false); giveTo.giveItems(stack, false);
//TODO: TL this. //TODO: TL this.
final String itemName = stack.getType().toString().toLowerCase(Locale.ENGLISH).replace('_', ' '); final String itemName = stack.getType().toString().toLowerCase(Locale.ENGLISH).replace('_', ' ');
sender.sendMessage(ChatColor.BLUE + "Giving " + stack.getAmount() + " of " + itemName + " to " + giveTo.getDisplayName() + "."); sender.sendMessage(ChatColor.BLUE + "Giving " + stack.getAmount() + " of " + itemName + " to " + giveTo.getPlayer().getDisplayName() + ".");
} }
} }

View File

@@ -2,9 +2,8 @@ package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.command.CommandSender;
@@ -36,9 +35,8 @@ public class Commandgod extends EssentialsCommand
private void godOtherPlayers(final CommandSender sender, final String[] args) private void godOtherPlayers(final CommandSender sender, final String[] args)
{ {
for (Player matchPlayer : server.matchPlayer(args[0])) for (IUser player : ess.getUserMap().matchUsers(args[0], false, true))
{ {
final IUser player = ess.getUserMap().getUser(matchPlayer);
if (player.isHidden()) if (player.isHidden())
{ {
continue; continue;
@@ -62,7 +60,7 @@ public class Commandgod extends EssentialsCommand
final boolean enabled = player.isGodModeEnabled(); final boolean enabled = player.isGodModeEnabled();
player.sendMessage(_("godMode", (enabled ? _("enabled") : _("disabled")))); player.sendMessage(_("godMode", (enabled ? _("enabled") : _("disabled"))));
sender.sendMessage(_("godMode", _(enabled ? "godEnabledFor" : "godDisabledFor", matchPlayer.getDisplayName()))); sender.sendMessage(_("godMode", _(enabled ? "godEnabledFor" : "godDisabledFor", player.getName())));
} }
} }
} }

View File

@@ -2,9 +2,10 @@ package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.ItemStack;
import net.ess3.api.server.Material;
import net.ess3.craftbukkit.InventoryWorkaround; import net.ess3.craftbukkit.InventoryWorkaround;
import org.bukkit.Material;
import org.bukkit.inventory.ItemStack;
import org.bukkit.inventory.PlayerInventory;
@@ -15,7 +16,7 @@ public class Commandhat extends EssentialsCommand
{ {
if (args.length > 0 && (args[0].contains("rem") || args[0].contains("off") || args[0].equalsIgnoreCase("0"))) if (args.length > 0 && (args[0].contains("rem") || args[0].contains("off") || args[0].equalsIgnoreCase("0")))
{ {
final PlayerInventory inv = user.getInventory(); final PlayerInventory inv = user.getPlayer().getInventory();
final ItemStack head = inv.getHelmet(); final ItemStack head = inv.getHelmet();
if (head == null || head.getType() == Material.AIR) if (head == null || head.getType() == Material.AIR)
{ {
@@ -25,18 +26,18 @@ public class Commandhat extends EssentialsCommand
{ {
final ItemStack air = new ItemStack(Material.AIR); final ItemStack air = new ItemStack(Material.AIR);
inv.setHelmet(air); inv.setHelmet(air);
InventoryWorkaround.addItem(user.getInventory(), true, head); InventoryWorkaround.addItem(user.getPlayer().getInventory(), true, head);
user.sendMessage(_("hatRemoved")); user.sendMessage(_("hatRemoved"));
} }
} }
else else
{ {
if (user.getItemInHand().getType() != Material.AIR) if (user.getPlayer().getItemInHand().getType() != Material.AIR)
{ {
final ItemStack hand = user.getItemInHand(); final ItemStack hand = user.getPlayer().getItemInHand();
if (hand.getType().getMaxDurability() == 0) if (hand.getType().getMaxDurability() == 0)
{ {
final PlayerInventory inv = user.getInventory(); final PlayerInventory inv = user.getPlayer().getInventory();
final ItemStack head = inv.getHelmet(); final ItemStack head = inv.getHelmet();
inv.removeItem(hand); inv.removeItem(hand);
inv.setHelmet(hand); inv.setHelmet(hand);

View File

@@ -3,10 +3,9 @@ package net.ess3.commands;
import java.util.Set; import java.util.Set;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.user.UserData.TimestampType; import net.ess3.user.UserData.TimestampType;
import org.bukkit.command.CommandSender;
public class Commandheal extends EssentialsCommand public class Commandheal extends EssentialsCommand
@@ -25,9 +24,9 @@ public class Commandheal extends EssentialsCommand
user.checkCooldown(TimestampType.LASTHEAL, ess.getRanks().getHealCooldown(user), true, Permissions.HEAL_COOLDOWN_BYPASS); user.checkCooldown(TimestampType.LASTHEAL, ess.getRanks().getHealCooldown(user), true, Permissions.HEAL_COOLDOWN_BYPASS);
user.setHealth(20); user.getPlayer().setHealth(20);
user.setFireTicks(0); user.getPlayer().setFireTicks(0);
user.setFoodLevel(20); user.getPlayer().setFoodLevel(20);
user.sendMessage(_("heal")); user.sendMessage(_("heal"));
} }
@@ -50,12 +49,12 @@ public class Commandheal extends EssentialsCommand
sender.sendMessage(_("playerNotFound")); sender.sendMessage(_("playerNotFound"));
return; return;
} }
for (Player p : users) for (IUser p : users)
{ {
p.setHealth(20); p.getPlayer().setHealth(20);
p.setFoodLevel(20); p.getPlayer().setFoodLevel(20);
p.sendMessage(_("heal")); p.getPlayer().sendMessage(_("heal"));
sender.sendMessage(_("healOther", p.getDisplayName())); sender.sendMessage(_("healOther", p.getPlayer().getDisplayName()));
} }
} }
} }

View File

@@ -3,9 +3,9 @@ package net.ess3.commands;
import java.util.Locale; import java.util.Locale;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import net.ess3.utils.textreader.*; import net.ess3.utils.textreader.*;
import org.bukkit.command.CommandSender;

View File

@@ -3,9 +3,9 @@ package net.ess3.commands;
import java.util.logging.Level; import java.util.logging.Level;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.entity.Player;
public class Commandhelpop extends EssentialsCommand public class Commandhelpop extends EssentialsCommand
@@ -18,11 +18,10 @@ public class Commandhelpop extends EssentialsCommand
throw new NotEnoughArgumentsException(); throw new NotEnoughArgumentsException();
} }
user.setDisplayNick(); user.setDisplayNick();
final String message = _("helpOp", user.getDisplayName(), Util.stripFormat(getFinalArg(args, 0))); final String message = _("helpOp", user.getPlayer().getDisplayName(), Util.stripFormat(getFinalArg(args, 0)));
logger.log(Level.INFO, message); logger.log(Level.INFO, message);
for (Player onlinePlayer : server.getOnlinePlayers()) for (Player player : server.getOnlinePlayers())
{ {
final IUser player = onlinePlayer.getUser();
if (!Permissions.HELPOP_RECEIVE.isAuthorized(player)) if (!Permissions.HELPOP_RECEIVE.isAuthorized(player))
{ {
continue; continue;

View File

@@ -4,12 +4,12 @@ import java.util.List;
import java.util.Locale; import java.util.Locale;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.Location;
import net.ess3.api.server.Material;
import net.ess3.economy.Trade; import net.ess3.economy.Trade;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.permissions.WorldPermissions; import net.ess3.permissions.WorldPermissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.Location;
import org.bukkit.Material;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
@@ -97,7 +97,7 @@ public class Commandhome extends EssentialsCommand
{ {
throw new NotEnoughArgumentsException(); throw new NotEnoughArgumentsException();
} }
if (user.getWorld() != loc.getWorld() && ess.getSettings().getData().getGeneral().isWorldHomePermissions() if (user.getPlayer().getWorld() != loc.getWorld() && ess.getSettings().getData().getGeneral().isWorldHomePermissions()
&& !WorldPermissions.getPermission(loc.getWorld().getName()).isAuthorized(user)) && !WorldPermissions.getPermission(loc.getWorld().getName()).isAuthorized(user))
{ {
throw new Exception(_("noPerm", "essentials.world." + loc.getWorld().getName())); throw new Exception(_("noPerm", "essentials.world." + loc.getWorld().getName()));

View File

@@ -13,19 +13,7 @@ public class Commandignore extends EssentialsCommand
{ {
throw new NotEnoughArgumentsException(); throw new NotEnoughArgumentsException();
} }
IUser player; IUser player = ess.getUserMap().matchUser(args[0], false, false);
try
{
player = ess.getUserMap().matchUser(args[0], false, false);
}
catch (NoSuchFieldException ex)
{
player = ess.getUserMap().getUser(args[0]);
}
if (player == null)
{
throw new Exception(_("playerNotFound"));
}
user.acquireWriteLock(); user.acquireWriteLock();
if (user.isIgnoringPlayer(player)) if (user.isIgnoringPlayer(player))

View File

@@ -1,10 +1,10 @@
package net.ess3.commands; package net.ess3.commands;
import net.ess3.api.server.CommandSender;
import net.ess3.utils.textreader.IText; import net.ess3.utils.textreader.IText;
import net.ess3.utils.textreader.KeywordReplacer; import net.ess3.utils.textreader.KeywordReplacer;
import net.ess3.utils.textreader.TextInput; import net.ess3.utils.textreader.TextInput;
import net.ess3.utils.textreader.TextPager; import net.ess3.utils.textreader.TextPager;
import org.bukkit.command.CommandSender;
public class Commandinfo extends EssentialsCommand public class Commandinfo extends EssentialsCommand

View File

@@ -3,8 +3,8 @@ package net.ess3.commands;
import java.util.Arrays; import java.util.Arrays;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.ItemStack;
import net.ess3.user.Inventory; import net.ess3.user.Inventory;
import org.bukkit.inventory.ItemStack;
@@ -46,7 +46,7 @@ public class Commandinvsee extends EssentialsCommand
throw new Exception(_("invBigger")); throw new Exception(_("invBigger"));
} }
user.getInventory().setContents(invUserStack); user.getInventory().setContents(invUserStack);
user.sendMessage(_("invSee", invUser.getDisplayName())); user.sendMessage(_("invSee", invUser.getPlayer().getDisplayName()));
user.sendMessage(_("invSeeHelp")); user.sendMessage(_("invSeeHelp"));
throw new NoChargeException(); throw new NoChargeException();
} }

View File

@@ -3,9 +3,9 @@ package net.ess3.commands;
import java.util.Locale; import java.util.Locale;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.Enchantment;
import net.ess3.api.server.ItemStack;
import net.ess3.permissions.ItemPermissions; import net.ess3.permissions.ItemPermissions;
import org.bukkit.enchantments.Enchantment;
import org.bukkit.inventory.ItemStack;
public class Commanditem extends EssentialsCommand public class Commanditem extends EssentialsCommand
@@ -53,7 +53,7 @@ public class Commanditem extends EssentialsCommand
} }
} }
if (stack.isAir()) if (stack.getTypeId() == 0)
{ {
throw new Exception(_("cantSpawnItem", "Air")); throw new Exception(_("cantSpawnItem", "Air"));
} }

View File

@@ -1,10 +1,9 @@
package net.ess3.commands; package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.server.CommandSender; import net.ess3.api.IUser;
import net.ess3.api.server.ItemStack; import org.bukkit.command.CommandSender;
import net.ess3.api.server.Material; import org.bukkit.inventory.ItemStack;
import net.ess3.api.server.Player;
@@ -16,9 +15,9 @@ public class Commanditemdb extends EssentialsCommand
ItemStack itemStack = null; ItemStack itemStack = null;
if (args.length < 1) if (args.length < 1)
{ {
if (sender instanceof Player) if (sender instanceof IUser)
{ {
itemStack = ((Player)sender).getItemInHand(); itemStack = ((IUser)sender).getPlayer().getItemInHand();
} }
if (itemStack == null) if (itemStack == null)
{ {
@@ -32,7 +31,7 @@ public class Commanditemdb extends EssentialsCommand
sender.sendMessage(itemStack.getType().toString() + "- " + itemStack.getTypeId() + ":" + Integer.toString(itemStack.getData().getData())); sender.sendMessage(itemStack.getType().toString() + "- " + itemStack.getTypeId() + ":" + Integer.toString(itemStack.getData().getData()));
if (itemStack.getType() != Material.AIR) if (itemStack.getTypeId() != 0)
{ {
int maxuses = itemStack.getType().getMaxDurability(); int maxuses = itemStack.getType().getMaxDurability();
int durability = ((maxuses + 1) - itemStack.getDurability()); int durability = ((maxuses + 1) - itemStack.getDurability());

View File

@@ -1,7 +1,7 @@
package net.ess3.commands; package net.ess3.commands;
import net.ess3.api.server.CommandSender;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.command.CommandSender;
public class Commandjails extends EssentialsCommand public class Commandjails extends EssentialsCommand

View File

@@ -2,10 +2,9 @@ package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.ILocation;
import net.ess3.api.server.Location;
import net.ess3.economy.Trade; import net.ess3.economy.Trade;
import net.ess3.utils.LocationUtil; import net.ess3.utils.LocationUtil;
import org.bukkit.Location;
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause; import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
@@ -15,11 +14,11 @@ public class Commandjump extends EssentialsCommand
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{ {
Location loc; Location loc;
final ILocation cloc = user.getLocation(); final Location cloc = user.getPlayer().getLocation();
try try
{ {
loc = LocationUtil.getTarget(user); loc = LocationUtil.getTarget(user.getPlayer());
loc.setYaw(cloc.getYaw()); loc.setYaw(cloc.getYaw());
loc.setPitch(cloc.getPitch()); loc.setPitch(cloc.getPitch());
loc.setY(loc.getY() + 1); loc.setY(loc.getY() + 1);

View File

@@ -3,9 +3,9 @@ package net.ess3.commands;
import net.ess3.Console; import net.ess3.Console;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandkick extends EssentialsCommand public class Commandkick extends EssentialsCommand
@@ -24,13 +24,12 @@ public class Commandkick extends EssentialsCommand
throw new Exception(_("kickExempt")); throw new Exception(_("kickExempt"));
} }
final String kickReason = args.length > 1 ? getFinalArg(args, 1) : _("kickDefault"); final String kickReason = args.length > 1 ? getFinalArg(args, 1) : _("kickDefault");
user.kickPlayer(kickReason); user.getPlayer().kickPlayer(kickReason);
final String senderName = sender instanceof Player ? ((Player)sender).getDisplayName() : Console.NAME; final String senderName = sender instanceof IUser ? ((IUser)sender).getPlayer().getDisplayName() : Console.NAME;
for (Player onlinePlayer : server.getOnlinePlayers()) for (Player onlinePlayer : server.getOnlinePlayers())
{ {
final IUser player = onlinePlayer.getUser(); if (Permissions.KICK_NOTIFY.isAuthorized(onlinePlayer))
if (Permissions.KICK_NOTIFY.isAuthorized(player))
{ {
onlinePlayer.sendMessage(_("playerKicked", senderName, user.getName(), kickReason)); onlinePlayer.sendMessage(_("playerKicked", senderName, user.getName(), kickReason));
} }

View File

@@ -1,8 +1,9 @@
package net.ess3.commands; package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.server.CommandSender; import net.ess3.api.IUser;
import net.ess3.api.server.Player; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandkickall extends EssentialsCommand public class Commandkickall extends EssentialsCommand
@@ -12,7 +13,7 @@ public class Commandkickall extends EssentialsCommand
{ {
for (Player onlinePlayer : server.getOnlinePlayers()) for (Player onlinePlayer : server.getOnlinePlayers())
{ {
if (sender.isPlayer() && onlinePlayer.getName().equalsIgnoreCase(((Player)sender).getName())) if (sender instanceof IUser && onlinePlayer.getName().equalsIgnoreCase(((Player)sender).getName()))
{ {
continue; continue;
} }

View File

@@ -1,8 +1,8 @@
package net.ess3.commands; package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.server.CommandSender; import net.ess3.api.IUser;
import net.ess3.api.server.Player; import org.bukkit.command.CommandSender;
import org.bukkit.event.entity.EntityDamageEvent; import org.bukkit.event.entity.EntityDamageEvent;
@@ -16,17 +16,17 @@ public class Commandkill extends EssentialsCommand
throw new NotEnoughArgumentsException(); throw new NotEnoughArgumentsException();
} }
for (Player matchPlayer : ess.getUserMap().matchUsers(args[0], false, false)) for (IUser matchPlayer : ess.getUserMap().matchUsers(args[0], false, false))
{ {
final EntityDamageEvent ede = new EntityDamageEvent(matchPlayer, sender instanceof Player && ((Player)sender).getName().equals(matchPlayer.getName()) ? EntityDamageEvent.DamageCause.SUICIDE : EntityDamageEvent.DamageCause.CUSTOM, Short.MAX_VALUE); final EntityDamageEvent ede = new EntityDamageEvent(matchPlayer.getPlayer(), sender instanceof IUser && sender.getName().equals(matchPlayer.getName()) ? EntityDamageEvent.DamageCause.SUICIDE : EntityDamageEvent.DamageCause.CUSTOM, Short.MAX_VALUE);
server.getPluginManager().callEvent(ede); server.getPluginManager().callEvent(ede);
if (ede.isCancelled() && !sender.hasPermission("essentials.kill.force")) if (ede.isCancelled() && !sender.hasPermission("essentials.kill.force"))
{ {
continue; continue;
} }
matchPlayer.damage(Short.MAX_VALUE); matchPlayer.getPlayer().damage(Short.MAX_VALUE);
sender.sendMessage(_("kill", matchPlayer.getDisplayName())); sender.sendMessage(_("kill", matchPlayer.getPlayer().getDisplayName()));
} }
} }
} }

View File

@@ -3,10 +3,10 @@ package net.ess3.commands;
import java.util.Collections; import java.util.Collections;
import java.util.Locale; import java.util.Locale;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.World;
import net.ess3.bukkit.LivingEntities; import net.ess3.bukkit.LivingEntities;
import org.bukkit.Chunk; import org.bukkit.Chunk;
import org.bukkit.World;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.*; import org.bukkit.entity.*;
import org.bukkit.event.entity.EntityDeathEvent; import org.bukkit.event.entity.EntityDeathEvent;
@@ -78,7 +78,7 @@ public class Commandkillall extends EssentialsCommand
{ {
throw new Exception(_("invalidMob")); throw new Exception(_("invalidMob"));
} }
entityClass = LivingEntities.fromName(killType).getType().getEntityClass(); entityClass = LivingEntities.fromName(killType).getEntityClass();
} }
int numKills = 0; int numKills = 0;
for (Chunk chunk : world.getLoadedChunks()) for (Chunk chunk : world.getLoadedChunks())

View File

@@ -3,8 +3,8 @@ package net.ess3.commands;
import java.util.Random; import java.util.Random;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.Location; import org.bukkit.Location;
import net.ess3.bukkit.LivingEntities; import org.bukkit.entity.EntityType;
import org.bukkit.entity.Ocelot; import org.bukkit.entity.Ocelot;
@@ -15,8 +15,8 @@ public class Commandkittycannon extends EssentialsCommand
@Override @Override
protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception protected void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{ {
final LivingEntities cat = LivingEntities.OCELOT; final EntityType cat = EntityType.OCELOT;
final Ocelot ocelot = (Ocelot)cat.spawn(user, server, user.getEyeLocation()); final Ocelot ocelot = (Ocelot)user.getPlayer().getWorld().spawn(user.getPlayer().getEyeLocation(), cat.getEntityClass());
if (ocelot == null) if (ocelot == null)
{ {
return; return;
@@ -24,7 +24,7 @@ public class Commandkittycannon extends EssentialsCommand
final int i = random.nextInt(Ocelot.Type.values().length); final int i = random.nextInt(Ocelot.Type.values().length);
ocelot.setCatType(Ocelot.Type.values()[i]); ocelot.setCatType(Ocelot.Type.values()[i]);
ocelot.setTamed(true); ocelot.setTamed(true);
ocelot.setVelocity(user.getEyeLocation().getDirection().multiply(2)); ocelot.setVelocity(user.getPlayer().getEyeLocation().getDirection().multiply(2));
ess.getPlugin().scheduleSyncDelayedTask(new Runnable() ess.getPlugin().scheduleSyncDelayedTask(new Runnable()
{ {
@Override @Override

View File

@@ -4,9 +4,8 @@ import lombok.Cleanup;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.ISettings; import net.ess3.api.ISettings;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.LightningStrike; import org.bukkit.entity.LightningStrike;
@@ -17,13 +16,13 @@ public class Commandlightning extends EssentialsCommand
{ {
IUser user = null; IUser user = null;
if (sender instanceof Player) if (isUser(sender))
{ {
user = ess.getUserMap().getUser(((Player)sender)); user = getUser(sender);
} }
if ((args.length < 1 || !Permissions.LIGHTNING_OTHERS.isAuthorized(user)) && user != null) if ((args.length < 1 || !Permissions.LIGHTNING_OTHERS.isAuthorized(user)) && user != null)
{ {
user.getWorld().strikeLightning(user.getTargetBlock(null, 600).getLocation()); user.getPlayer().getWorld().strikeLightning(user.getPlayer().getTargetBlock(null, 600).getLocation());
return; return;
} }
@@ -44,13 +43,13 @@ public class Commandlightning extends EssentialsCommand
} }
} }
for (Player matchPlayer : ess.getUserMap().matchUsers(args[0], false, false)) for (IUser matchPlayer : ess.getUserMap().matchUsers(args[0], false, false))
{ {
sender.sendMessage(_("lightningUse", matchPlayer.getDisplayName())); sender.sendMessage(_("lightningUse", matchPlayer.getPlayer().getDisplayName()));
final LightningStrike strike = matchPlayer.getWorld().strikeLightningEffect(matchPlayer.getLocation()); final LightningStrike strike = matchPlayer.getPlayer().getWorld().strikeLightningEffect(matchPlayer.getPlayer().getLocation());
if (!ess.getUserMap().getUser(matchPlayer).isGodModeEnabled()) if (!matchPlayer.isGodModeEnabled())
{ {
matchPlayer.damage(power, strike); matchPlayer.getPlayer().damage(power, strike);
} }
@Cleanup @Cleanup
final ISettings settings = ess.getSettings(); final ISettings settings = ess.getSettings();

View File

@@ -4,10 +4,10 @@ import java.util.*;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.ISettings; import net.ess3.api.ISettings;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandlist extends EssentialsCommand public class Commandlist extends EssentialsCommand
{ {
@@ -22,7 +22,7 @@ public class Commandlist extends EssentialsCommand
int playerHidden = 0; int playerHidden = 0;
for (Player onlinePlayer : server.getOnlinePlayers()) for (Player onlinePlayer : server.getOnlinePlayers())
{ {
if (onlinePlayer.getUser().isHidden()) if (ess.getUserMap().getUser(onlinePlayer).isHidden())
{ {
playerHidden++; playerHidden++;
} }
@@ -31,11 +31,11 @@ public class Commandlist extends EssentialsCommand
String online; String online;
if (showhidden && playerHidden > 0) if (showhidden && playerHidden > 0)
{ {
online = _("listAmountHidden", server.getOnlinePlayers().size() - playerHidden, playerHidden, server.getMaxPlayers()); online = _("listAmountHidden", server.getOnlinePlayers().length - playerHidden, playerHidden, server.getMaxPlayers());
} }
else else
{ {
online = _("listAmount", server.getOnlinePlayers().size() - playerHidden, server.getMaxPlayers()); online = _("listAmount", server.getOnlinePlayers().length - playerHidden, server.getMaxPlayers());
} }
sender.sendMessage(online); sender.sendMessage(online);
@@ -56,7 +56,7 @@ public class Commandlist extends EssentialsCommand
Map<String, List<IUser>> sort = new HashMap<String, List<IUser>>(); Map<String, List<IUser>> sort = new HashMap<String, List<IUser>>();
for (Player onlinePlayer : server.getOnlinePlayers()) for (Player onlinePlayer : server.getOnlinePlayers())
{ {
final IUser player = onlinePlayer.getUser(); final IUser player = getUser(onlinePlayer);
if (player.isHidden() && !showhidden) if (player.isHidden() && !showhidden)
{ {
continue; continue;
@@ -106,7 +106,7 @@ public class Commandlist extends EssentialsCommand
groupString.append(_("listHiddenTag")); groupString.append(_("listHiddenTag"));
} }
user.setDisplayNick(); user.setDisplayNick();
groupString.append(user.getDisplayName()); groupString.append(user.getPlayer().getDisplayName());
groupString.append("§f"); groupString.append("§f");
} }
sender.sendMessage(groupString.toString()); sender.sendMessage(groupString.toString());
@@ -117,7 +117,7 @@ public class Commandlist extends EssentialsCommand
final List<IUser> users = new ArrayList<IUser>(); final List<IUser> users = new ArrayList<IUser>();
for (Player onlinePlayer : server.getOnlinePlayers()) for (Player onlinePlayer : server.getOnlinePlayers())
{ {
final IUser player =onlinePlayer.getUser(); final IUser player = getUser(onlinePlayer);
if (player.isHidden() && !showhidden) if (player.isHidden() && !showhidden)
{ {
continue; continue;
@@ -156,7 +156,7 @@ public class Commandlist extends EssentialsCommand
onlineUsers.append(_("listHiddenTag")); onlineUsers.append(_("listHiddenTag"));
} }
user.setDisplayNick(); user.setDisplayNick();
onlineUsers.append(user.getDisplayName()); onlineUsers.append(user.getPlayer().getDisplayName());
onlineUsers.append("§f"); onlineUsers.append("§f");
} }
sender.sendMessage(onlineUsers.toString()); sender.sendMessage(onlineUsers.toString());

View File

@@ -3,10 +3,9 @@ package net.ess3.commands;
import java.util.List; import java.util.List;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.command.CommandSender;
public class Commandmail extends EssentialsCommand public class Commandmail extends EssentialsCommand
@@ -37,16 +36,7 @@ public class Commandmail extends EssentialsCommand
throw new Exception(_("noPerm", "essentials.mail.send")); throw new Exception(_("noPerm", "essentials.mail.send"));
} }
Player player = ess.getUserMap().matchUser(args[1], true, true); IUser u = ess.getUserMap().matchUser(args[1], true, true);
IUser u;
if (player != null)
{
u = player.getUser();
}
else
{
u = ess.getUserMap().matchUser(args[1], true, true);
}
if (u == null) if (u == null)
{ {
throw new Exception(_("playerNeverOnServer", args[1])); throw new Exception(_("playerNeverOnServer", args[1]));
@@ -92,20 +82,7 @@ public class Commandmail extends EssentialsCommand
} }
else if (args.length >= 3 && "send".equalsIgnoreCase(args[0])) else if (args.length >= 3 && "send".equalsIgnoreCase(args[0]))
{ {
Player player = ess.getUserMap().matchUser(args[1], true, true); IUser u = ess.getUserMap().matchUser(args[1], true, true);
IUser u;
if (player != null)
{
u = player.getUser();
}
else
{
u = ess.getUserMap().matchUser(args[1], true, true);
}
if (u == null)
{
throw new Exception(_("playerNeverOnServer", args[1]));
}
u.addMail("Server: " + getFinalArg(args, 2)); u.addMail("Server: " + getFinalArg(args, 2));
sender.sendMessage(_("mailSent")); sender.sendMessage(_("mailSent"));
return; return;
@@ -117,20 +94,7 @@ public class Commandmail extends EssentialsCommand
else if (args.length >= 2) else if (args.length >= 2)
{ {
//allow sending from console without "send" argument, since it's the only thing the console can do //allow sending from console without "send" argument, since it's the only thing the console can do
Player player = ess.getUserMap().matchUser(args[0], true, true); IUser u = ess.getUserMap().matchUser(args[0], true, true);
IUser u;
if (player != null)
{
u = player.getUser();
}
else
{
u = ess.getUserMap().matchUser(args[0], true, true);
}
if (u == null)
{
throw new Exception(_("playerNeverOnServer", args[0]));
}
u.addMail("Server: " + getFinalArg(args, 1)); u.addMail("Server: " + getFinalArg(args, 1));
sender.sendMessage(_("mailSent")); sender.sendMessage(_("mailSent"));
return; return;

View File

@@ -32,6 +32,6 @@ public class Commandme extends EssentialsCommand
user.setDisplayNick(); user.setDisplayNick();
ess.broadcastMessage(user, _("action", user.getDisplayName(), message)); ess.broadcastMessage(user, _("action", user.getPlayer().getDisplayName(), message));
} }
} }

View File

@@ -4,9 +4,9 @@ import java.util.Locale;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.ISettings; import net.ess3.api.ISettings;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.ItemStack;
import net.ess3.permissions.ItemPermissions; import net.ess3.permissions.ItemPermissions;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.inventory.ItemStack;
public class Commandmore extends EssentialsCommand public class Commandmore extends EssentialsCommand
@@ -14,7 +14,7 @@ public class Commandmore extends EssentialsCommand
@Override @Override
public void run(final IUser user, final String commandLabel, final String[] args) throws Exception public void run(final IUser user, final String commandLabel, final String[] args) throws Exception
{ {
final ItemStack stack = user.getItemInHand(); final ItemStack stack = user.getPlayer().getItemInHand();
if (stack == null) if (stack == null)
{ {
throw new Exception(_("cantSpawnItem", "Air")); throw new Exception(_("cantSpawnItem", "Air"));
@@ -51,6 +51,6 @@ public class Commandmore extends EssentialsCommand
{ {
stack.setAmount(defaultStackSize > 0 ? defaultStackSize : stack.getMaxStackSize()); stack.setAmount(defaultStackSize > 0 ? defaultStackSize : stack.getMaxStackSize());
} }
user.updateInventory(); user.getPlayer().updateInventory();
} }
} }

View File

@@ -1,10 +1,10 @@
package net.ess3.commands; package net.ess3.commands;
import net.ess3.api.server.CommandSender;
import net.ess3.utils.textreader.IText; import net.ess3.utils.textreader.IText;
import net.ess3.utils.textreader.KeywordReplacer; import net.ess3.utils.textreader.KeywordReplacer;
import net.ess3.utils.textreader.TextInput; import net.ess3.utils.textreader.TextInput;
import net.ess3.utils.textreader.TextPager; import net.ess3.utils.textreader.TextPager;
import org.bukkit.command.CommandSender;
public class Commandmotd extends EssentialsCommand public class Commandmotd extends EssentialsCommand

View File

@@ -1,15 +1,15 @@
package net.ess3.commands; package net.ess3.commands;
import java.util.List; import java.util.List;
import java.util.Set;
import lombok.Cleanup; import lombok.Cleanup;
import net.ess3.Console; import net.ess3.Console;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IReplyTo; import net.ess3.api.IReplyTo;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.command.CommandSender;
@@ -24,10 +24,10 @@ public class Commandmsg extends EssentialsCommand
} }
String message = getFinalArg(args, 1); String message = getFinalArg(args, 1);
if (sender instanceof Player) if (isUser(sender))
{ {
@Cleanup @Cleanup
IUser user = ess.getUserMap().getUser((Player)sender); IUser user = getUser(sender);
user.acquireReadLock(); user.acquireReadLock();
if (user.getData().isMuted()) if (user.getData().isMuted())
{ {
@@ -49,8 +49,8 @@ public class Commandmsg extends EssentialsCommand
final String translatedMe = _("me"); final String translatedMe = _("me");
final IReplyTo replyTo = sender instanceof Player ? ess.getUserMap().getUser((Player)sender) : Console.getConsoleReplyTo(); final IReplyTo replyTo = isUser(sender) ? getUser(sender) : Console.getConsoleReplyTo();
final String senderName = sender instanceof Player ? ((Player)sender).getDisplayName() : Console.NAME; final String senderName = isUser(sender) ? getPlayer(sender).getDisplayName() : Console.NAME;
if (args[0].equalsIgnoreCase(Console.NAME)) if (args[0].equalsIgnoreCase(Console.NAME))
{ {
@@ -62,7 +62,7 @@ public class Commandmsg extends EssentialsCommand
return; return;
} }
final List<Player> matchedPlayers = ess.getUserMap().matchUser(args[0], false, false); final Set<IUser> matchedPlayers = ess.getUserMap().matchUsers(args[0], true, false);
if (matchedPlayers.isEmpty()) if (matchedPlayers.isEmpty())
{ {
@@ -70,9 +70,8 @@ public class Commandmsg extends EssentialsCommand
} }
int i = 0; int i = 0;
for (Player matchedPlayer : matchedPlayers) for (IUser u : matchedPlayers)
{ {
final IUser u = ess.getUserMap().getUser(matchedPlayer);
if (u.isHidden()) if (u.isHidden())
{ {
i++; i++;
@@ -83,17 +82,16 @@ public class Commandmsg extends EssentialsCommand
throw new Exception(_("playerNotFound")); throw new Exception(_("playerNotFound"));
} }
for (Player matchedPlayer : matchedPlayers) for (IUser matchedPlayer : matchedPlayers)
{ {
sender.sendMessage(_("msgFormat", translatedMe, matchedPlayer.getDisplayName(), message)); sender.sendMessage(_("msgFormat", translatedMe, matchedPlayer.getPlayer().getDisplayName(), message));
final IUser matchedUser = ess.getUserMap().getUser(matchedPlayer); if (isUser(sender) && (matchedPlayer.isIgnoringPlayer(getUser(sender)) || matchedPlayer.isHidden()))
if (sender instanceof Player && (matchedUser.isIgnoringPlayer(ess.getUserMap().getUser((Player)sender)) || matchedUser.isHidden()))
{ {
continue; continue;
} }
matchedPlayer.sendMessage(_("msgFormat", senderName, translatedMe, message)); matchedPlayer.sendMessage(_("msgFormat", senderName, translatedMe, message));
replyTo.setReplyTo(ess.getUserMap().getUser(matchedPlayer)); replyTo.setReplyTo(matchedPlayer);
ess.getUserMap().getUser(matchedPlayer).setReplyTo(sender); matchedPlayer.setReplyTo(sender);
} }
} }
} }

View File

@@ -3,10 +3,10 @@ package net.ess3.commands;
import lombok.Cleanup; import lombok.Cleanup;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.user.UserData.TimestampType; import net.ess3.user.UserData.TimestampType;
import net.ess3.utils.DateUtil; import net.ess3.utils.DateUtil;
import org.bukkit.command.CommandSender;
public class Commandmute extends EssentialsCommand public class Commandmute extends EssentialsCommand
{ {
@@ -42,9 +42,9 @@ public class Commandmute extends EssentialsCommand
sender.sendMessage( sender.sendMessage(
muted muted
? (muteTimestamp > 0 ? (muteTimestamp > 0
? _("mutedPlayerFor", player.getDisplayName(), DateUtil.formatDateDiff(muteTimestamp)) ? _("mutedPlayerFor", player.getPlayer().getDisplayName(), DateUtil.formatDateDiff(muteTimestamp))
: _("mutedPlayer", player.getDisplayName())) : _("mutedPlayer", player.getPlayer().getDisplayName()))
: _("unmutedPlayer", player.getDisplayName())); : _("unmutedPlayer", player.getPlayer().getDisplayName()));
player.sendMessage( player.sendMessage(
muted muted
? (muteTimestamp > 0 ? (muteTimestamp > 0

View File

@@ -2,11 +2,11 @@ package net.ess3.commands;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Location;
import net.ess3.api.server.Player;
import net.ess3.api.server.World;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import org.bukkit.Location;
import org.bukkit.World;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandnear extends EssentialsCommand public class Commandnear extends EssentialsCommand
@@ -79,17 +79,17 @@ public class Commandnear extends EssentialsCommand
private String getLocal(final IUser user, final long radius) private String getLocal(final IUser user, final long radius)
{ {
final Location loc = user.getLocation(); final Location loc = user.getPlayer().getLocation();
final World world = loc.getWorld(); final World world = loc.getWorld();
final StringBuilder output = new StringBuilder(); final StringBuilder output = new StringBuilder();
final long radiusSquared = radius * radius; final long radiusSquared = radius * radius;
for (Player onlinePlayer : server.getOnlinePlayers()) for (Player onlinePlayer : server.getOnlinePlayers())
{ {
final IUser player = ess.getUserMap().getUser(onlinePlayer); final IUser player = getUser(onlinePlayer);
if (!player.equals(user) && !player.isHidden()) if (!player.equals(user) && !player.isHidden())
{ {
final Location playerLoc = player.getLocation(); final Location playerLoc = onlinePlayer.getLocation();
if (playerLoc.getWorld() != world) if (playerLoc.getWorld() != world)
{ {
continue; continue;
@@ -102,7 +102,7 @@ public class Commandnear extends EssentialsCommand
{ {
output.append(", "); output.append(", ");
} }
output.append(player.getDisplayName()).append("§f(§4").append((long)Math.sqrt(delta)).append("m§f)"); output.append(onlinePlayer.getDisplayName()).append("§f(§4").append((long)Math.sqrt(delta)).append("m§f)");
} }
} }
} }

View File

@@ -5,11 +5,11 @@ import lombok.Cleanup;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.ISettings; import net.ess3.api.ISettings;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.api.server.CommandSender;
import net.ess3.api.server.Player;
import net.ess3.api.server.Server;
import net.ess3.permissions.Permissions; import net.ess3.permissions.Permissions;
import net.ess3.utils.Util; import net.ess3.utils.Util;
import org.bukkit.Server;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public class Commandnick extends EssentialsCommand public class Commandnick extends EssentialsCommand
@@ -108,7 +108,7 @@ public class Commandnick extends EssentialsCommand
{ {
for (Player p : server.getOnlinePlayers()) for (Player p : server.getOnlinePlayers())
{ {
if (target.getBase() == p) if (target.getPlayer().equals(p))
{ {
continue; continue;
} }
@@ -123,7 +123,7 @@ public class Commandnick extends EssentialsCommand
target.getData().setNickname(nick); target.getData().setNickname(nick);
target.updateDisplayName(); target.updateDisplayName();
target.sendMessage(_("nickSet", target.getDisplayName() + "§7.")); target.sendMessage(_("nickSet", target.getPlayer().getDisplayName() + "§7."));
} }
} }
} }

View File

@@ -10,6 +10,7 @@ import net.ess3.permissions.AbstractSuperpermsPermission;
import org.bukkit.Server; import org.bukkit.Server;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
public abstract class EssentialsCommand extends AbstractSuperpermsPermission implements IEssentialsCommand public abstract class EssentialsCommand extends AbstractSuperpermsPermission implements IEssentialsCommand
@@ -125,4 +126,39 @@ public abstract class EssentialsCommand extends AbstractSuperpermsPermission imp
{ {
return permission; return permission;
} }
protected boolean isUser(CommandSender sender) {
return sender instanceof IUser;
}
/**
* Converts a CommandSender object to an User.
*
* @param sender
* @return
* @throws IllegalArgumentException if the object is neither a superclass of IUser or Player
*/
protected IUser getUser(CommandSender sender) {
if (sender instanceof IUser) {
return (IUser)sender;
}
if (sender instanceof Player) {
return ess.getUserMap().getUser((Player)sender);
}
throw new IllegalArgumentException();
}
/**
* Converts a CommandSender object to an User.
*
* @param sender
* @return
* @throws IllegalArgumentException if the object is not a superclass of IUser
*/
protected Player getPlayer(CommandSender sender) {
if (sender instanceof IUser) {
return ((IUser)sender).getPlayer();
}
throw new IllegalArgumentException();
}
} }

View File

@@ -1,6 +1,6 @@
# This determines the command prefix when there are conflicts (/name:home, /name:help, etc.) # This determines the command prefix when there are conflicts (/name:home, /name:help, etc.)
name: Essentials-3 name: Essentials-3
main: net.ess3.Essentials main: net.ess3.bukkit.BukkitPlugin
# Note to developers: This next line cannot change, or the automatic versioning system will break. # Note to developers: This next line cannot change, or the automatic versioning system will break.
version: ${build.number} version: ${build.number}
website: http://tiny.cc/EssentialsWiki website: http://tiny.cc/EssentialsWiki

View File

@@ -31,11 +31,11 @@ public class EssentialsUpgrade
EssentialsUpgrade(final IEssentials essentials) EssentialsUpgrade(final IEssentials essentials)
{ {
ess = essentials; ess = essentials;
if (!ess.getDataFolder().exists()) if (!ess.getPlugin().getDataFolder().exists())
{ {
ess.getDataFolder().mkdirs(); ess.getPlugin().getDataFolder().mkdirs();
} }
doneFile = new EssentialsConf(new File(ess.getDataFolder(), "upgrades-done.yml")); doneFile = new EssentialsConf(new File(ess.getPlugin().getDataFolder(), "upgrades-done.yml"));
doneFile.load(); doneFile.load();
} }
@@ -47,7 +47,7 @@ public class EssentialsUpgrade
} }
try try
{ {
final File configFile = new File(ess.getDataFolder(), "config.yml"); final File configFile = new File(ess.getPlugin().getDataFolder(), "config.yml");
if (!configFile.exists()) if (!configFile.exists())
{ {
return; return;
@@ -87,12 +87,12 @@ public class EssentialsUpgrade
} }
try try
{ {
final File file = new File(ess.getDataFolder(), name + ".txt"); final File file = new File(ess.getPlugin().getDataFolder(), name + ".txt");
if (file.exists()) if (file.exists())
{ {
return; return;
} }
final File configFile = new File(ess.getDataFolder(), "config.yml"); final File configFile = new File(ess.getPlugin().getDataFolder(), "config.yml");
if (!configFile.exists()) if (!configFile.exists())
{ {
return; return;
@@ -127,7 +127,7 @@ public class EssentialsUpgrade
{ {
boolean needUpdate = false; boolean needUpdate = false;
final BufferedReader bReader = new BufferedReader(new FileReader(file)); final BufferedReader bReader = new BufferedReader(new FileReader(file));
final File tempFile = File.createTempFile("essentialsupgrade", ".tmp.yml", ess.getDataFolder()); final File tempFile = File.createTempFile("essentialsupgrade", ".tmp.yml", ess.getPlugin().getDataFolder());
final BufferedWriter bWriter = new BufferedWriter(new FileWriter(tempFile)); final BufferedWriter bWriter = new BufferedWriter(new FileWriter(tempFile));
do do
{ {
@@ -188,7 +188,7 @@ public class EssentialsUpgrade
{ {
return; return;
} }
final File userdataFolder = new File(ess.getDataFolder(), "userdata"); final File userdataFolder = new File(ess.getPlugin().getDataFolder(), "userdata");
if (!userdataFolder.exists() || !userdataFolder.isDirectory()) if (!userdataFolder.exists() || !userdataFolder.isDirectory())
{ {
return; return;
@@ -251,7 +251,7 @@ public class EssentialsUpgrade
{ {
return; return;
} }
final File userdataFolder = new File(ess.getDataFolder(), "userdata"); final File userdataFolder = new File(ess.getPlugin().getDataFolder(), "userdata");
if (!userdataFolder.exists() || !userdataFolder.isDirectory()) if (!userdataFolder.exists() || !userdataFolder.isDirectory())
{ {
return; return;
@@ -304,7 +304,7 @@ public class EssentialsUpgrade
{ {
return; return;
} }
final File userdataFolder = new File(ess.getDataFolder(), "userdata"); final File userdataFolder = new File(ess.getPlugin().getDataFolder(), "userdata");
if (!userdataFolder.exists() || !userdataFolder.isDirectory()) if (!userdataFolder.exists() || !userdataFolder.isDirectory())
{ {
return; return;
@@ -389,7 +389,7 @@ public class EssentialsUpgrade
*/ */
private void convertWarps() private void convertWarps()
{ {
final File warpsFolder = new File(ess.getDataFolder(), "warps"); final File warpsFolder = new File(ess.getPlugin().getDataFolder(), "warps");
if (!warpsFolder.exists()) if (!warpsFolder.exists())
{ {
warpsFolder.mkdirs(); warpsFolder.mkdirs();
@@ -555,7 +555,7 @@ public class EssentialsUpgrade
{ {
return; return;
} }
final File file = new File(ess.getDataFolder(), "items.csv"); final File file = new File(ess.getPlugin().getDataFolder(), "items.csv");
if (file.exists()) if (file.exists())
{ {
try try
@@ -602,7 +602,7 @@ public class EssentialsUpgrade
{ {
return; return;
} }
final File configFile = new File(ess.getDataFolder(), "spawn.yml"); final File configFile = new File(ess.getPlugin().getDataFolder(), "spawn.yml");
if (configFile.exists()) if (configFile.exists())
{ {
@@ -619,7 +619,7 @@ public class EssentialsUpgrade
StoredLocation loc = getFakeLocation(config, group); StoredLocation loc = getFakeLocation(config, group);
spawns.getSpawns().put(group.toLowerCase(Locale.ENGLISH), loc); spawns.getSpawns().put(group.toLowerCase(Locale.ENGLISH), loc);
} }
if (!configFile.renameTo(new File(ess.getDataFolder(), "spawn.yml.old"))) if (!configFile.renameTo(new File(ess.getPlugin().getDataFolder(), "spawn.yml.old")))
{ {
throw new Exception(_("fileRenameError", "spawn.yml")); throw new Exception(_("fileRenameError", "spawn.yml"));
} }
@@ -649,7 +649,7 @@ public class EssentialsUpgrade
{ {
return; return;
} }
final File configFile = new File(ess.getDataFolder(), "jail.yml"); final File configFile = new File(ess.getPlugin().getDataFolder(), "jail.yml");
if (configFile.exists()) if (configFile.exists())
{ {
@@ -666,7 +666,7 @@ public class EssentialsUpgrade
StoredLocation loc = getFakeLocation(config, jailName); StoredLocation loc = getFakeLocation(config, jailName);
jails.getJails().put(jailName.toLowerCase(Locale.ENGLISH), loc); jails.getJails().put(jailName.toLowerCase(Locale.ENGLISH), loc);
} }
if (!configFile.renameTo(new File(ess.getDataFolder(), "jail.yml.old"))) if (!configFile.renameTo(new File(ess.getPlugin().getDataFolder(), "jail.yml.old")))
{ {
throw new Exception(_("fileRenameError", "jail.yml")); throw new Exception(_("fileRenameError", "jail.yml"));
} }
@@ -704,9 +704,9 @@ public class EssentialsUpgrade
public void beforeSettings() public void beforeSettings()
{ {
if (!ess.getDataFolder().exists()) if (!ess.getPlugin().getDataFolder().exists())
{ {
ess.getDataFolder().mkdirs(); ess.getPlugin().getDataFolder().mkdirs();
} }
moveWorthValuesToWorthYml(); moveWorthValuesToWorthYml();
moveMotdRulesToFile("motd"); moveMotdRulesToFile("motd");

View File

@@ -9,6 +9,7 @@ import java.util.HashMap;
import java.util.Map; import java.util.Map;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import net.ess3.api.IPlugin;
import org.bukkit.event.player.PlayerChatEvent; import org.bukkit.event.player.PlayerChatEvent;
import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
@@ -22,12 +23,13 @@ public class EssentialsChat extends JavaPlugin
public void onEnable() public void onEnable()
{ {
final PluginManager pluginManager = getServer().getPluginManager(); final PluginManager pluginManager = getServer().getPluginManager();
final IEssentials ess = (IEssentials)pluginManager.getPlugin("Essentials-3"); final IPlugin plugin = (IPlugin)pluginManager.getPlugin("Essentials-3");
if (!this.getDescription().getVersion().equals(ess.getDescription().getVersion())) final IEssentials ess = (IEssentials)plugin.getEssentials();
if (!this.getDescription().getVersion().equals(plugin.getDescription().getVersion()))
{ {
LOGGER.log(Level.WARNING, _("versionMismatchAll")); LOGGER.log(Level.WARNING, _("versionMismatchAll"));
} }
if (!ess.isEnabled()) if (!plugin.isEnabled())
{ {
this.setEnabled(false); this.setEnabled(false);
return; return;

View File

@@ -83,7 +83,7 @@ public abstract class EssentialsChatPlayer implements Listener
event.setMessage(Util.stripColor(event.getMessage())); event.setMessage(Util.stripColor(event.getMessage()));
} }
String group = ess.getRanks().getMainGroup(user); String group = ess.getRanks().getMainGroup(user);
String world = user.getWorld().getName(); String world = user.getPlayer().getWorld().getName();
IRanks groupSettings = ess.getRanks(); IRanks groupSettings = ess.getRanks();
event.setFormat(groupSettings.getChatFormat(user).format(new Object[] event.setFormat(groupSettings.getChatFormat(user).format(new Object[]

View File

@@ -43,7 +43,7 @@ public class EssentialsLocalChatEventListener implements Listener
if (!user.equals(sender)) if (!user.equals(sender))
{ {
boolean abort = false; boolean abort = false;
final Location playerLoc = user.getLocation(); final Location playerLoc = user.getPlayer().getLocation();
if (playerLoc.getWorld() != world) if (playerLoc.getWorld() != world)
{ {
abort = true; abort = true;

View File

@@ -3,6 +3,7 @@ package net.ess3.geoip;
import static net.ess3.I18n._; import static net.ess3.I18n._;
import net.ess3.api.IEssentials; import net.ess3.api.IEssentials;
import java.util.logging.Level; import java.util.logging.Level;
import net.ess3.api.IPlugin;
import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
@@ -13,12 +14,13 @@ public class EssentialsGeoIP extends JavaPlugin
public void onEnable() public void onEnable()
{ {
final PluginManager pm = getServer().getPluginManager(); final PluginManager pm = getServer().getPluginManager();
final IEssentials ess = (IEssentials)pm.getPlugin("Essentials-3"); final IPlugin plugin = (IPlugin)pm.getPlugin("Essentials-3");
if (!this.getDescription().getVersion().equals(ess.getDescription().getVersion())) final IEssentials ess = (IEssentials)plugin.getEssentials();
if (!this.getDescription().getVersion().equals(plugin.getDescription().getVersion()))
{ {
getLogger().log(Level.WARNING, _("versionMismatchAll")); getLogger().log(Level.WARNING, _("versionMismatchAll"));
} }
if (!ess.isEnabled()) if (!plugin.isEnabled())
{ {
this.setEnabled(false); this.setEnabled(false);
return; return;

View File

@@ -33,7 +33,7 @@ public final class BlockBreakPermissions extends AbstractSuperpermsPermission
} }
@Override @Override
public String getPermission() public String getPermissionName()
{ {
return this.permission; return this.permission;
} }

View File

@@ -33,7 +33,7 @@ public class BlockPlacePermissions extends AbstractSuperpermsPermission
} }
@Override @Override
public String getPermission() public String getPermissionName()
{ {
return this.permission; return this.permission;
} }

View File

@@ -297,7 +297,7 @@ public class EssentialsSign
return new Trade(amount, ess); return new Trade(amount, ess);
} }
final ItemStack item = getItemStack(sign.getLine(itemIndex), 1, ess); final ItemStack item = getItemStack(sign.getLine(itemIndex), 1, ess);
final int amount = Math.min(getIntegerPositive(sign.getLine(amountIndex)), item.getType().getMaxStackSize() * player.getInventory().getSize()); final int amount = Math.min(getIntegerPositive(sign.getLine(amountIndex)), item.getType().getMaxStackSize() * player.getPlayer().getInventory().getSize());
if (item.getTypeId() == 0 || amount < 1) if (item.getTypeId() == 0 || amount < 1)
{ {
throw new SignException(_("moreThanZero")); throw new SignException(_("moreThanZero"));

View File

@@ -4,6 +4,7 @@ import static net.ess3.I18n._;
import net.ess3.api.IEssentials; import net.ess3.api.IEssentials;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import net.ess3.api.IPlugin;
import org.bukkit.Bukkit; import org.bukkit.Bukkit;
import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
@@ -18,12 +19,13 @@ public class EssentialsSignsPlugin extends JavaPlugin implements ISignsPlugin
public void onEnable() public void onEnable()
{ {
final PluginManager pluginManager = getServer().getPluginManager(); final PluginManager pluginManager = getServer().getPluginManager();
final IEssentials ess = (IEssentials)pluginManager.getPlugin("Essentials-3"); final IPlugin plugin = (IPlugin)pluginManager.getPlugin("Essentials-3");
if (!this.getDescription().getVersion().equals(ess.getDescription().getVersion())) final IEssentials ess = (IEssentials)plugin.getEssentials();
if (!this.getDescription().getVersion().equals(plugin.getDescription().getVersion()))
{ {
LOGGER.log(Level.WARNING, _("versionMismatchAll")); LOGGER.log(Level.WARNING, _("versionMismatchAll"));
} }
if (!ess.isEnabled()) if (!plugin.isEnabled())
{ {
this.setEnabled(false); this.setEnabled(false);
return; return;

View File

@@ -88,7 +88,7 @@ public class SignEnchant extends EssentialsSign
level = enchantment.getMaxLevel(); level = enchantment.getMaxLevel();
} }
final ItemStack playerHand = player.getItemInHand(); final ItemStack playerHand = player.getPlayer().getItemInHand();
if (playerHand == null if (playerHand == null
|| playerHand.getAmount() != 1 || playerHand.getAmount() != 1
|| (playerHand.containsEnchantment(enchantment) || (playerHand.containsEnchantment(enchantment)
@@ -113,7 +113,7 @@ public class SignEnchant extends EssentialsSign
charge.charge(player); charge.charge(player);
Trade.log("Sign", "Enchant", "Interact", username, charge, username, charge, sign.getBlock().getLocation(), ess); Trade.log("Sign", "Enchant", "Interact", username, charge, username, charge, sign.getBlock().getLocation(), ess);
player.updateInventory(); player.getPlayer().updateInventory();
return true; return true;
} }
} }

View File

@@ -33,9 +33,9 @@ public class SignFree extends EssentialsSign
} }
item.setAmount(item.getType().getMaxStackSize()); item.setAmount(item.getType().getMaxStackSize());
InventoryWorkaround.addItem(player.getInventory(), true, item); InventoryWorkaround.addItem(player.getPlayer().getInventory(), true, item);
player.sendMessage("Item added to your inventory."); player.sendMessage("Item added to your inventory.");
player.updateInventory(); player.getPlayer().updateInventory();
//TODO: wait for a fix in bukkit //TODO: wait for a fix in bukkit
//Problem: Items can be duplicated //Problem: Items can be duplicated
//Inventory i = ess.getServer().createInventory(player, InventoryType.CHEST); //Inventory i = ess.getServer().createInventory(player, InventoryType.CHEST);

View File

@@ -43,8 +43,8 @@ public class SignGameMode extends EssentialsSign
charge.isAffordableFor(player); charge.isAffordableFor(player);
//this needs to be fixed //this needs to be fixed
player.setGameMode(player.getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL); player.getPlayer().setGameMode(player.getPlayer().getGameMode() == GameMode.SURVIVAL ? GameMode.CREATIVE : GameMode.SURVIVAL);
player.sendMessage(_("gameMode", _(player.getGameMode().toString().toLowerCase(Locale.ENGLISH)), player.getDisplayName())); player.sendMessage(_("gameMode", _(player.getPlayer().getGameMode().toString().toLowerCase(Locale.ENGLISH)), player.getPlayer().getDisplayName()));
charge.charge(player); charge.charge(player);
return true; return true;
} }

View File

@@ -26,9 +26,9 @@ public class SignHeal extends EssentialsSign
{ {
final Trade charge = getTrade(sign, 1, ess); final Trade charge = getTrade(sign, 1, ess);
charge.isAffordableFor(player); charge.isAffordableFor(player);
player.setHealth(20); player.getPlayer().setHealth(20);
player.setFoodLevel(20); player.getPlayer().setFoodLevel(20);
player.setFireTicks(0); player.getPlayer().setFireTicks(0);
player.sendMessage(_("youAreHealed")); player.sendMessage(_("youAreHealed"));
charge.charge(player); charge.charge(player);
return true; return true;

View File

@@ -4,8 +4,8 @@ package net.ess3.signs;
import java.io.IOException; import java.io.IOException;
import net.ess3.api.ChargeException; import net.ess3.api.ChargeException;
import net.ess3.api.IEssentials; import net.ess3.api.IEssentials;
import net.ess3.api.IUser;
import net.ess3.economy.Trade; import net.ess3.economy.Trade;
import net.ess3.user.User;
import net.ess3.utils.textreader.IText; import net.ess3.utils.textreader.IText;
import net.ess3.utils.textreader.KeywordReplacer; import net.ess3.utils.textreader.KeywordReplacer;
import net.ess3.utils.textreader.TextInput; import net.ess3.utils.textreader.TextInput;
@@ -20,14 +20,14 @@ public class SignInfo extends EssentialsSign
} }
@Override @Override
protected boolean onSignCreate(final ISign sign, final User player, final String username, final IEssentials ess) throws SignException protected boolean onSignCreate(final ISign sign, final IUser player, final String username, final IEssentials ess) throws SignException
{ {
validateTrade(sign, 3, ess); validateTrade(sign, 3, ess);
return true; return true;
} }
@Override @Override
protected boolean onSignInteract(final ISign sign, final User player, final String username, final IEssentials ess) throws SignException, ChargeException protected boolean onSignInteract(final ISign sign, final IUser player, final String username, final IEssentials ess) throws SignException, ChargeException
{ {
final Trade charge = getTrade(sign, 3, ess); final Trade charge = getTrade(sign, 3, ess);
charge.isAffordableFor(player); charge.isAffordableFor(player);

View File

@@ -1,9 +1,11 @@
package net.ess3.signs; package net.ess3.signs;
import static net.ess3.I18n._;
import net.ess3.api.ChargeException;
import net.ess3.api.IEssentials; import net.ess3.api.IEssentials;
import net.ess3.api.IUser;
import net.ess3.commands.Commandrepair; import net.ess3.commands.Commandrepair;
import net.ess3.economy.Trade; import net.ess3.economy.Trade;
import net.ess3.user.User;
public class SignRepair extends EssentialsSign public class SignRepair extends EssentialsSign
@@ -14,7 +16,7 @@ public class SignRepair extends EssentialsSign
} }
@Override @Override
protected boolean onSignCreate(final ISign sign, final User player, final String username, final IEssentials ess) throws SignException protected boolean onSignCreate(final ISign sign, final IUser player, final String username, final IEssentials ess) throws SignException
{ {
final String repairTarget = sign.getLine(1); final String repairTarget = sign.getLine(1);
if (repairTarget.isEmpty()) if (repairTarget.isEmpty())
@@ -30,20 +32,20 @@ public class SignRepair extends EssentialsSign
} }
@Override @Override
protected boolean onSignInteract(final ISign sign, final User player, final String username, final IEssentials ess) throws SignException, ChargeException protected boolean onSignInteract(final ISign sign, final IUser player, final String username, final IEssentials ess) throws SignException, ChargeException
{ {
final Trade charge = getTrade(sign, 2, ess); final Trade charge = getTrade(sign, 2, ess);
charge.isAffordableFor(player); charge.isAffordableFor(player);
Commandrepair command = new Commandrepair(); Commandrepair command = new Commandrepair();
command.setEssentials(ess); command.init(ess, "repair");
String[] args = new String[] String[] args = new String[]
{ {
sign.getLine(1) sign.getLine(1)
}; };
try try
{ {
command.run(ess.getServer(), player, "repair", args); command.run(player, "repair", args);
} }
catch (Exception ex) catch (Exception ex)
{ {

View File

@@ -5,6 +5,7 @@ import net.ess3.api.ChargeException;
import net.ess3.api.IEssentials; import net.ess3.api.IEssentials;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.economy.Trade; import net.ess3.economy.Trade;
import org.bukkit.World;
public class SignTime extends EssentialsSign public class SignTime extends EssentialsSign
@@ -38,17 +39,18 @@ public class SignTime extends EssentialsSign
final Trade charge = getTrade(sign, 2, ess); final Trade charge = getTrade(sign, 2, ess);
charge.isAffordableFor(player); charge.isAffordableFor(player);
final String timeString = sign.getLine(1); final String timeString = sign.getLine(1);
long time = player.getWorld().getTime(); final World world = player.getPlayer().getWorld();
long time = world.getTime();
time -= time % 24000; time -= time % 24000;
if ("§2Day".equalsIgnoreCase(timeString)) if ("§2Day".equalsIgnoreCase(timeString))
{ {
player.getWorld().setTime(time + 24000); world.setTime(time + 24000);
charge.charge(player); charge.charge(player);
return true; return true;
} }
if ("§2Night".equalsIgnoreCase(timeString)) if ("§2Night".equalsIgnoreCase(timeString))
{ {
player.getWorld().setTime(time + 37700); world.setTime(time + 37700);
charge.charge(player); charge.charge(player);
return true; return true;
} }

View File

@@ -75,16 +75,17 @@ public class SignTrade extends EssentialsSign
private Trade rechargeSign(final ISign sign, final IEssentials ess, final IUser player) throws SignException, ChargeException private Trade rechargeSign(final ISign sign, final IEssentials ess, final IUser player) throws SignException, ChargeException
{ {
final Trade trade = getTrade(sign, 2, false, false, ess); final Trade trade = getTrade(sign, 2, false, false, ess);
if (trade.getItemStack() != null && player.getItemInHand() != null ItemStack itemInHand = player.getPlayer().getItemInHand();
&& trade.getItemStack().getTypeId() == player.getItemInHand().getTypeId() if (trade.getItemStack() != null && itemInHand != null
&& trade.getItemStack().getDurability() == player.getItemInHand().getDurability() && trade.getItemStack().getTypeId() == itemInHand.getTypeId()
&& trade.getItemStack().getEnchantments().equals(player.getItemInHand().getEnchantments())) && trade.getItemStack().getDurability() == itemInHand.getDurability()
&& trade.getItemStack().getEnchantments().equals(itemInHand.getEnchantments()))
{ {
int amount = player.getItemInHand().getAmount(); int amount = itemInHand.getAmount();
amount -= amount % trade.getItemStack().getAmount(); amount -= amount % trade.getItemStack().getAmount();
if (amount > 0) if (amount > 0)
{ {
final ItemStack stack = player.getItemInHand().clone(); final ItemStack stack = itemInHand.clone();
stack.setAmount(amount); stack.setAmount(amount);
final Trade store = new Trade(stack, ess); final Trade store = new Trade(stack, ess);
addAmount(sign, 2, store, ess); addAmount(sign, 2, store, ess);

View File

@@ -5,6 +5,7 @@ import net.ess3.api.ChargeException;
import net.ess3.api.IEssentials; import net.ess3.api.IEssentials;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import net.ess3.economy.Trade; import net.ess3.economy.Trade;
import org.bukkit.World;
public class SignWeather extends EssentialsSign public class SignWeather extends EssentialsSign
@@ -38,15 +39,16 @@ public class SignWeather extends EssentialsSign
final Trade charge = getTrade(sign, 2, ess); final Trade charge = getTrade(sign, 2, ess);
charge.isAffordableFor(player); charge.isAffordableFor(player);
final String weatherString = sign.getLine(1); final String weatherString = sign.getLine(1);
final World world = player.getPlayer().getWorld();
if ("§2Sun".equalsIgnoreCase(weatherString)) if ("§2Sun".equalsIgnoreCase(weatherString))
{ {
player.getWorld().setStorm(false); world.setStorm(false);
charge.charge(player); charge.charge(player);
return true; return true;
} }
if ("§2Storm".equalsIgnoreCase(weatherString)) if ("§2Storm".equalsIgnoreCase(weatherString))
{ {
player.getWorld().setStorm(true); world.setStorm(true);
charge.charge(player); charge.charge(player);
return true; return true;
} }

View File

@@ -3,6 +3,7 @@ package net.ess3.xmpp;
import net.ess3.Console; import net.ess3.Console;
import net.ess3.commands.EssentialsCommand; import net.ess3.commands.EssentialsCommand;
import net.ess3.commands.NotEnoughArgumentsException; import net.ess3.commands.NotEnoughArgumentsException;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
@@ -24,7 +25,7 @@ public class Commandxmpp extends EssentialsCommand
else else
{ {
final String message = getFinalArg(args, 1); final String message = getFinalArg(args, 1);
final String senderName = sender instanceof Player ? ess.getUserMap().getUser((Player)sender).getDisplayName() : Console.NAME; final String senderName = isUser(sender) ? getPlayer(sender).getDisplayName() : Console.NAME;
sender.sendMessage("[" + senderName + ">" + address + "] " + message); sender.sendMessage("[" + senderName + ">" + address + "] " + message);
if (!EssentialsXMPP.getInstance().sendMessage(address, "[" + senderName + "] " + message)) if (!EssentialsXMPP.getInstance().sendMessage(address, "[" + senderName + "] " + message))
{ {

View File

@@ -4,6 +4,7 @@ import net.ess3.commands.EssentialsCommand;
import net.ess3.commands.NotEnoughArgumentsException; import net.ess3.commands.NotEnoughArgumentsException;
import java.util.List; import java.util.List;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;

View File

@@ -9,9 +9,9 @@ import java.util.List;
import java.util.Locale; import java.util.Locale;
import java.util.logging.Level; import java.util.logging.Level;
import java.util.logging.Logger; import java.util.logging.Logger;
import net.ess3.api.IPlugin;
import org.bukkit.command.Command; import org.bukkit.command.Command;
import org.bukkit.command.CommandSender; import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player;
import org.bukkit.plugin.PluginManager; import org.bukkit.plugin.PluginManager;
import org.bukkit.plugin.java.JavaPlugin; import org.bukkit.plugin.java.JavaPlugin;
@@ -36,12 +36,13 @@ public class EssentialsXMPP extends JavaPlugin implements IEssentialsXMPP
instance = this; instance = this;
final PluginManager pluginManager = getServer().getPluginManager(); final PluginManager pluginManager = getServer().getPluginManager();
ess = (IEssentials)pluginManager.getPlugin("Essentials-3"); final IPlugin plugin = (IPlugin)pluginManager.getPlugin("Essentials-3");
if (!this.getDescription().getVersion().equals(ess.getDescription().getVersion())) ess = plugin.getEssentials();
if (!this.getDescription().getVersion().equals(plugin.getDescription().getVersion()))
{ {
LOGGER.log(Level.WARNING, _("versionMismatchAll")); LOGGER.log(Level.WARNING, _("versionMismatchAll"));
} }
if (!ess.isEnabled()) if (!plugin.isEnabled())
{ {
this.setEnabled(false); this.setEnabled(false);
return; return;
@@ -76,7 +77,7 @@ public class EssentialsXMPP extends JavaPlugin implements IEssentialsXMPP
} }
@Override @Override
public void setAddress(final Player user, final String address) public void setAddress(final CommandSender user, final String address)
{ {
final String username = user.getName().toLowerCase(Locale.ENGLISH); final String username = user.getName().toLowerCase(Locale.ENGLISH);
instance.users.setAddress(username, address); instance.users.setAddress(username, address);
@@ -96,7 +97,7 @@ public class EssentialsXMPP extends JavaPlugin implements IEssentialsXMPP
} }
@Override @Override
public boolean toggleSpy(final Player user) public boolean toggleSpy(final CommandSender user)
{ {
final String username = user.getName().toLowerCase(Locale.ENGLISH); final String username = user.getName().toLowerCase(Locale.ENGLISH);
final boolean spy = !instance.users.isSpy(username); final boolean spy = !instance.users.isSpy(username);
@@ -105,13 +106,13 @@ public class EssentialsXMPP extends JavaPlugin implements IEssentialsXMPP
} }
@Override @Override
public String getAddress(final Player user) public String getAddress(final CommandSender user)
{ {
return instance.users.getAddress(user.getName()); return instance.users.getAddress(user.getName());
} }
@Override @Override
public boolean sendMessage(final Player user, final String message) public boolean sendMessage(final CommandSender user, final String message)
{ {
return instance.xmpp.sendMessage(instance.users.getAddress(user.getName()), message); return instance.xmpp.sendMessage(instance.users.getAddress(user.getName()), message);
} }

View File

@@ -23,22 +23,19 @@ class EssentialsXMPPPlayerListener implements Listener
@EventHandler(priority= EventPriority.MONITOR) @EventHandler(priority= EventPriority.MONITOR)
public void onPlayerJoin(final PlayerJoinEvent event) public void onPlayerJoin(final PlayerJoinEvent event)
{ {
final IUser user = ess.getUserMap().getUser(event.getPlayer()); sendMessageToSpyUsers("Player " + event.getPlayer().getDisplayName() + " joined the game");
sendMessageToSpyUsers("Player " + user.getDisplayName() + " joined the game");
} }
@EventHandler(priority= EventPriority.MONITOR) @EventHandler(priority= EventPriority.MONITOR)
public void onPlayerChat(final PlayerChatEvent event) public void onPlayerChat(final PlayerChatEvent event)
{ {
final IUser user = ess.getUserMap().getUser(event.getPlayer()); sendMessageToSpyUsers(String.format(event.getFormat(), event.getPlayer().getDisplayName(), event.getMessage()));
sendMessageToSpyUsers(String.format(event.getFormat(), user.getDisplayName(), event.getMessage()));
} }
@EventHandler(priority= EventPriority.MONITOR) @EventHandler(priority= EventPriority.MONITOR)
public void onPlayerQuit(final PlayerQuitEvent event) public void onPlayerQuit(final PlayerQuitEvent event)
{ {
final IUser user = ess.getUserMap().getUser(event.getPlayer()); sendMessageToSpyUsers("Player " + event.getPlayer().getDisplayName() + " left the game");
sendMessageToSpyUsers("Player " + user.getDisplayName() + " left the game");
} }
private void sendMessageToSpyUsers(final String message) private void sendMessageToSpyUsers(final String message)

View File

@@ -2,13 +2,14 @@ package net.ess3.xmpp;
import net.ess3.api.IUser; import net.ess3.api.IUser;
import java.util.List; import java.util.List;
import org.bukkit.command.CommandSender;
import org.bukkit.entity.Player; import org.bukkit.entity.Player;
import org.bukkit.plugin.Plugin; import org.bukkit.plugin.Plugin;
public interface IEssentialsXMPP extends Plugin public interface IEssentialsXMPP extends Plugin
{ {
String getAddress(final Player user); String getAddress(final CommandSender user);
String getAddress(final String name); String getAddress(final String name);
@@ -16,13 +17,13 @@ public interface IEssentialsXMPP extends Plugin
IUser getUserByAddress(final String address); IUser getUserByAddress(final String address);
boolean sendMessage(final Player user, final String message); boolean sendMessage(final CommandSender user, final String message);
boolean sendMessage(final String address, final String message); boolean sendMessage(final String address, final String message);
void setAddress(final Player user, final String address); void setAddress(final CommandSender user, final String address);
boolean toggleSpy(final Player user); boolean toggleSpy(final CommandSender user);
void broadcastMessage(final IUser sender, final String message, final String xmppAddress); void broadcastMessage(final IUser sender, final String message, final String xmppAddress);
} }

View File

@@ -90,7 +90,7 @@ public final class XMPPManager extends Handler implements MessageListener, ChatM
break; break;
default: default:
final IUser sender = parent.getUserByAddress(StringUtils.parseBareAddress(chat.getParticipant())); final IUser sender = parent.getUserByAddress(StringUtils.parseBareAddress(chat.getParticipant()));
parent.broadcastMessage(sender, "=" + sender.getDisplayName() + ": " + message, StringUtils.parseBareAddress(chat.getParticipant())); parent.broadcastMessage(sender, "=" + sender.getName() + ": " + message, StringUtils.parseBareAddress(chat.getParticipant()));
} }
} }
} }