mirror of
https://github.com/essentials/Essentials.git
synced 2025-09-02 19:22:37 +02:00
Fix more stuff in 3.0
This commit is contained in:
@@ -18,8 +18,8 @@
|
|||||||
package net.ess3;
|
package net.ess3;
|
||||||
|
|
||||||
import net.ess3.api.server.Player;
|
import net.ess3.api.server.Player;
|
||||||
import net.ess3.api.server.IPlugin;
|
import net.ess3.api.server.Plugin;
|
||||||
import net.ess3.api.server.IServer;
|
import net.ess3.api.server.Server;
|
||||||
import net.ess3.api.server.World;
|
import net.ess3.api.server.World;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@@ -76,11 +76,11 @@ public class Essentials implements IEssentials
|
|||||||
private transient ICommandHandler commandHandler;
|
private transient ICommandHandler commandHandler;
|
||||||
private transient Economy economy;
|
private transient Economy economy;
|
||||||
@Getter
|
@Getter
|
||||||
private final IServer server;
|
private final Server server;
|
||||||
@Getter
|
@Getter
|
||||||
private final Logger logger;
|
private final Logger logger;
|
||||||
@Getter
|
@Getter
|
||||||
private final IPlugin plugin;
|
private final Plugin plugin;
|
||||||
public static boolean testing;
|
public static boolean testing;
|
||||||
private transient Metrics metrics;
|
private transient Metrics metrics;
|
||||||
@Getter
|
@Getter
|
||||||
@@ -88,7 +88,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 IServer server, final Logger logger, final IPlugin plugin)
|
public Essentials(final Server server, final Logger logger, final Plugin plugin)
|
||||||
{
|
{
|
||||||
this.server = server;
|
this.server = server;
|
||||||
this.logger = logger;
|
this.logger = logger;
|
||||||
|
@@ -2,10 +2,10 @@ package net.ess3;
|
|||||||
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import static net.ess3.I18n._;
|
|
||||||
import net.ess3.api.IEssentials;
|
import net.ess3.api.IEssentials;
|
||||||
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.Player;
|
||||||
import net.ess3.permissions.Permissions;
|
import net.ess3.permissions.Permissions;
|
||||||
import net.ess3.user.UserData.TimestampType;
|
import net.ess3.user.UserData.TimestampType;
|
||||||
|
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
package net.ess3.api;
|
package net.ess3.api;
|
||||||
|
|
||||||
import net.ess3.api.server.IPlugin;
|
import net.ess3.api.server.Plugin;
|
||||||
import net.ess3.api.server.IServer;
|
import net.ess3.api.server.Server;
|
||||||
import net.ess3.api.server.World;
|
import net.ess3.api.server.World;
|
||||||
import net.ess3.economy.register.Methods;
|
import net.ess3.economy.register.Methods;
|
||||||
import net.ess3.listener.TntExplodeListener;
|
import net.ess3.listener.TntExplodeListener;
|
||||||
@@ -59,11 +59,11 @@ public interface IEssentials extends IComponent
|
|||||||
|
|
||||||
IEconomy getEconomy();
|
IEconomy getEconomy();
|
||||||
|
|
||||||
IServer getServer();
|
Server getServer();
|
||||||
|
|
||||||
Logger getLogger();
|
Logger getLogger();
|
||||||
|
|
||||||
IPlugin getPlugin();
|
Plugin getPlugin();
|
||||||
|
|
||||||
List<String> getVanishedPlayers();
|
List<String> getVanishedPlayers();
|
||||||
|
|
||||||
|
@@ -1,5 +0,0 @@
|
|||||||
package net.ess3.api.server;
|
|
||||||
|
|
||||||
public interface IPlayer {
|
|
||||||
|
|
||||||
}
|
|
@@ -2,9 +2,10 @@ package net.ess3.api.server;
|
|||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
|
|
||||||
public interface IPlugin
|
public interface Plugin
|
||||||
{
|
{
|
||||||
int scheduleAsyncDelayedTask(final Runnable run);
|
int scheduleAsyncDelayedTask(final Runnable run);
|
||||||
|
|
||||||
@@ -13,6 +14,8 @@ public interface IPlugin
|
|||||||
int scheduleSyncDelayedTask(final Runnable run, final long delay);
|
int scheduleSyncDelayedTask(final Runnable run, final long delay);
|
||||||
|
|
||||||
int scheduleSyncRepeatingTask(final Runnable run, final long delay, final long period);
|
int scheduleSyncRepeatingTask(final Runnable run, final long delay, final long period);
|
||||||
|
|
||||||
|
int scheduleAsyncRepeatingTask(final Runnable run, final long delay, final long period);
|
||||||
|
|
||||||
File getRootFolder();
|
File getRootFolder();
|
||||||
|
|
||||||
@@ -29,4 +32,6 @@ public interface IPlugin
|
|||||||
Location callRespawnEvent(Player player, Location loc, boolean bedSpawn);
|
Location callRespawnEvent(Player player, Location loc, boolean bedSpawn);
|
||||||
|
|
||||||
void callSuicideEvent(Player player);
|
void callSuicideEvent(Player player);
|
||||||
|
|
||||||
|
Logger getLogger();
|
||||||
}
|
}
|
@@ -4,7 +4,7 @@ import java.util.Collection;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
public interface IServer
|
public interface Server
|
||||||
{
|
{
|
||||||
List<World> getWorlds();
|
List<World> getWorlds();
|
||||||
|
|
@@ -24,5 +24,5 @@ public interface World {
|
|||||||
|
|
||||||
long getTime();
|
long getTime();
|
||||||
|
|
||||||
void setSpawnLocation(int blockX, int blockY, int blockZ);
|
boolean setSpawnLocation(int blockX, int blockY, int blockZ);
|
||||||
}
|
}
|
||||||
|
@@ -5,7 +5,7 @@ import net.ess3.api.IBackup;
|
|||||||
import net.ess3.api.IEssentials;
|
import net.ess3.api.IEssentials;
|
||||||
import net.ess3.api.ISettings;
|
import net.ess3.api.ISettings;
|
||||||
import net.ess3.api.server.CommandSender;
|
import net.ess3.api.server.CommandSender;
|
||||||
import net.ess3.api.server.IServer;
|
import net.ess3.api.server.Server;
|
||||||
import java.io.BufferedReader;
|
import java.io.BufferedReader;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
import java.io.InputStreamReader;
|
import java.io.InputStreamReader;
|
||||||
@@ -16,7 +16,7 @@ import lombok.Cleanup;
|
|||||||
|
|
||||||
public class Backup implements Runnable, IBackup
|
public class Backup implements Runnable, IBackup
|
||||||
{
|
{
|
||||||
private transient final IServer server;
|
private transient final Server server;
|
||||||
private transient final IEssentials ess;
|
private transient final IEssentials ess;
|
||||||
private transient final AtomicBoolean running = new AtomicBoolean(false);
|
private transient final AtomicBoolean running = new AtomicBoolean(false);
|
||||||
private transient int taskId = -1;
|
private transient int taskId = -1;
|
||||||
|
@@ -1,9 +1,9 @@
|
|||||||
package net.ess3.bukkit;
|
package net.ess3.bukkit;
|
||||||
|
|
||||||
import net.ess3.api.server.Permission;
|
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
import lombok.Delegate;
|
import lombok.Delegate;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
import net.ess3.api.server.Permission;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.permissions.PermissionDefault;
|
import org.bukkit.permissions.PermissionDefault;
|
||||||
import org.bukkit.plugin.PluginManager;
|
import org.bukkit.plugin.PluginManager;
|
||||||
|
@@ -1,9 +1,12 @@
|
|||||||
package net.ess3.bukkit;
|
package net.ess3.bukkit;
|
||||||
|
|
||||||
import net.ess3.api.IUser;
|
|
||||||
import net.ess3.api.server.*;
|
|
||||||
import lombok.Delegate;
|
import lombok.Delegate;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
import net.ess3.api.IUser;
|
||||||
|
import net.ess3.api.server.IInventory;
|
||||||
|
import net.ess3.api.server.Location;
|
||||||
|
import net.ess3.api.server.Player;
|
||||||
|
import net.ess3.api.server.World;
|
||||||
import org.bukkit.OfflinePlayer;
|
import org.bukkit.OfflinePlayer;
|
||||||
import org.bukkit.entity.LivingEntity;
|
import org.bukkit.entity.LivingEntity;
|
||||||
|
|
||||||
@@ -46,9 +49,9 @@ public class BukkitPlayer extends BukkitCommandSender implements Player
|
|||||||
})
|
})
|
||||||
@Getter
|
@Getter
|
||||||
private transient OfflinePlayer safePlayer;
|
private transient OfflinePlayer safePlayer;
|
||||||
private final transient IServer server;
|
private final transient BukkitServer server;
|
||||||
|
|
||||||
public BukkitPlayer(final OfflinePlayer player, final IServer server)
|
public BukkitPlayer(final OfflinePlayer player, final BukkitServer server)
|
||||||
{
|
{
|
||||||
super(player.getPlayer());
|
super(player.getPlayer());
|
||||||
this.server = server;
|
this.server = server;
|
||||||
@@ -157,10 +160,10 @@ public class BukkitPlayer extends BukkitCommandSender implements Player
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private int getExpToLevel()
|
/*private int getExpToLevel()
|
||||||
{
|
{
|
||||||
return getExpToLevel(onlinePlayer.getLevel());
|
return getExpToLevel(onlinePlayer.getLevel());
|
||||||
}
|
}*/
|
||||||
|
|
||||||
private static int getExpToLevel(final int level)
|
private static int getExpToLevel(final int level)
|
||||||
{
|
{
|
||||||
|
@@ -1,7 +1,7 @@
|
|||||||
package net.ess3.bukkit;
|
package net.ess3.bukkit;
|
||||||
|
|
||||||
import net.ess3.api.server.Player;
|
import net.ess3.api.server.Player;
|
||||||
import net.ess3.api.server.IPlugin;
|
import net.ess3.api.server.Plugin;
|
||||||
import net.ess3.api.server.Location;
|
import net.ess3.api.server.Location;
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import lombok.Delegate;
|
import lombok.Delegate;
|
||||||
@@ -10,12 +10,12 @@ import org.bukkit.event.player.PlayerRespawnEvent;
|
|||||||
import org.bukkit.plugin.java.JavaPluginLoader;
|
import org.bukkit.plugin.java.JavaPluginLoader;
|
||||||
|
|
||||||
|
|
||||||
public class Plugin implements IPlugin
|
public class BukkitPlugin implements Plugin
|
||||||
{
|
{
|
||||||
@Delegate
|
@Delegate
|
||||||
private final org.bukkit.plugin.Plugin plugin;
|
private final org.bukkit.plugin.Plugin plugin;
|
||||||
|
|
||||||
public Plugin(final org.bukkit.plugin.Plugin plugin)
|
public BukkitPlugin(final org.bukkit.plugin.Plugin plugin)
|
||||||
{
|
{
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
}
|
}
|
||||||
@@ -44,6 +44,12 @@ public class Plugin implements IPlugin
|
|||||||
return plugin.getServer().getScheduler().scheduleSyncRepeatingTask(plugin, run, delay, period);
|
return plugin.getServer().getScheduler().scheduleSyncRepeatingTask(plugin, run, delay, period);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int scheduleAsyncRepeatingTask(final Runnable run, final long delay, final long period)
|
||||||
|
{
|
||||||
|
return plugin.getServer().getScheduler().scheduleAsyncRepeatingTask(plugin, run, delay, period);
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public File getRootFolder()
|
public File getRootFolder()
|
||||||
{
|
{
|
@@ -1,13 +1,13 @@
|
|||||||
package net.ess3.bukkit;
|
package net.ess3.bukkit;
|
||||||
|
|
||||||
import net.ess3.api.IEssentials;
|
|
||||||
import net.ess3.api.server.CommandSender;
|
|
||||||
import net.ess3.api.server.Player;
|
|
||||||
import net.ess3.api.server.IServer;
|
|
||||||
import net.ess3.api.server.World;
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import lombok.Delegate;
|
import lombok.Delegate;
|
||||||
import lombok.Getter;
|
import lombok.Getter;
|
||||||
|
import net.ess3.api.IEssentials;
|
||||||
|
import net.ess3.api.server.CommandSender;
|
||||||
|
import net.ess3.api.server.Player;
|
||||||
|
import net.ess3.api.server.Server;
|
||||||
|
import net.ess3.api.server.World;
|
||||||
import org.bukkit.event.EventHandler;
|
import org.bukkit.event.EventHandler;
|
||||||
import org.bukkit.event.EventPriority;
|
import org.bukkit.event.EventPriority;
|
||||||
import org.bukkit.event.Listener;
|
import org.bukkit.event.Listener;
|
||||||
@@ -18,7 +18,7 @@ import org.bukkit.event.world.WorldUnloadEvent;
|
|||||||
import org.bukkit.plugin.RegisteredServiceProvider;
|
import org.bukkit.plugin.RegisteredServiceProvider;
|
||||||
|
|
||||||
|
|
||||||
public class Server implements IServer, Listener
|
public class BukkitServer implements Server, Listener
|
||||||
{
|
{
|
||||||
private IEssentials ess;
|
private IEssentials ess;
|
||||||
private interface Excludes
|
private interface Excludes
|
||||||
@@ -38,11 +38,11 @@ public class Server implements IServer, Listener
|
|||||||
private Map<String, World> worldsMap;
|
private Map<String, World> worldsMap;
|
||||||
@Getter
|
@Getter
|
||||||
private Collection<Player> onlinePlayers;
|
private Collection<Player> onlinePlayers;
|
||||||
private Map<org.bukkit.entity.Player, Player> onlinePlayersMap;
|
private Map<String, Player> onlinePlayersMap;
|
||||||
@Getter
|
@Getter
|
||||||
private CommandSender consoleSender;
|
private CommandSender consoleSender;
|
||||||
|
|
||||||
public Server(final org.bukkit.Server server)
|
public BukkitServer(final org.bukkit.Server server)
|
||||||
{
|
{
|
||||||
this.server = server;
|
this.server = server;
|
||||||
consoleSender = new BukkitCommandSender(server.getConsoleSender());
|
consoleSender = new BukkitCommandSender(server.getConsoleSender());
|
||||||
@@ -79,9 +79,9 @@ public class Server implements IServer, Listener
|
|||||||
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
@EventHandler(priority = EventPriority.MONITOR, ignoreCancelled = true)
|
||||||
public synchronized void onPlayerLoginEvent(final PlayerLoginEvent event)
|
public synchronized void onPlayerLoginEvent(final PlayerLoginEvent event)
|
||||||
{
|
{
|
||||||
final HashMap<org.bukkit.entity.Player, Player> oplayersMap = new HashMap<org.bukkit.entity.Player, Player>(onlinePlayersMap);
|
final HashMap<String, Player> oplayersMap = new HashMap<String, Player>(onlinePlayersMap);
|
||||||
BukkitPlayer p = new BukkitPlayer(event.getPlayer(), this);
|
BukkitPlayer p = new BukkitPlayer(event.getPlayer(), this);
|
||||||
oplayersMap.put(event.getPlayer(), p);
|
oplayersMap.put(event.getPlayer().getName(), p);
|
||||||
onlinePlayersMap = Collections.unmodifiableMap(oplayersMap);
|
onlinePlayersMap = Collections.unmodifiableMap(oplayersMap);
|
||||||
onlinePlayers = Collections.unmodifiableCollection(oplayersMap.values());
|
onlinePlayers = Collections.unmodifiableCollection(oplayersMap.values());
|
||||||
}
|
}
|
||||||
@@ -90,8 +90,8 @@ public class Server implements IServer, Listener
|
|||||||
public synchronized void onPlayerQuitEvent(final PlayerQuitEvent event)
|
public synchronized void onPlayerQuitEvent(final PlayerQuitEvent event)
|
||||||
{
|
{
|
||||||
final ArrayList<Player> oplayers = new ArrayList<Player>(onlinePlayers);
|
final ArrayList<Player> oplayers = new ArrayList<Player>(onlinePlayers);
|
||||||
final HashMap<org.bukkit.entity.Player, Player> oplayersMap = new HashMap<org.bukkit.entity.Player, Player>(onlinePlayersMap);
|
final HashMap<String, Player> oplayersMap = new HashMap<String, Player>(onlinePlayersMap);
|
||||||
oplayersMap.remove(event.getPlayer());
|
oplayersMap.remove(event.getPlayer().getName());
|
||||||
onlinePlayersMap = Collections.unmodifiableMap(oplayersMap);
|
onlinePlayersMap = Collections.unmodifiableMap(oplayersMap);
|
||||||
onlinePlayers = Collections.unmodifiableCollection(oplayersMap.values());
|
onlinePlayers = Collections.unmodifiableCollection(oplayersMap.values());
|
||||||
}
|
}
|
@@ -1,5 +1,6 @@
|
|||||||
package net.ess3.bukkit;
|
package net.ess3.bukkit;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import net.ess3.api.server.World;
|
import net.ess3.api.server.World;
|
||||||
import net.ess3.api.server.ItemStack;
|
import net.ess3.api.server.ItemStack;
|
||||||
import net.ess3.api.server.Location;
|
import net.ess3.api.server.Location;
|
||||||
@@ -8,14 +9,23 @@ import lombok.Getter;
|
|||||||
import org.bukkit.TreeType;
|
import org.bukkit.TreeType;
|
||||||
|
|
||||||
public class BukkitWorld implements World {
|
public class BukkitWorld implements World {
|
||||||
@Delegate
|
private interface Excludes
|
||||||
|
{
|
||||||
|
boolean generateTree(Location safeLocation, TreeType tree);
|
||||||
|
|
||||||
|
ItemStack dropItem(Location loc, ItemStack stack);
|
||||||
|
|
||||||
|
Location getSpawnLocation();
|
||||||
|
|
||||||
|
void dropItemNaturally(Location location, ItemStack overflowStack);
|
||||||
|
}
|
||||||
|
@Delegate(excludes = Excludes.class)
|
||||||
@Getter
|
@Getter
|
||||||
private final org.bukkit.World bukkitWorld;
|
private final org.bukkit.World bukkitWorld;
|
||||||
|
|
||||||
public BukkitWorld(final org.bukkit.World world)
|
public BukkitWorld(final org.bukkit.World world)
|
||||||
{
|
{
|
||||||
this.bukkitWorld = world;
|
this.bukkitWorld = world;
|
||||||
world.getT
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -41,5 +51,4 @@ public class BukkitWorld implements World {
|
|||||||
{
|
{
|
||||||
throw new UnsupportedOperationException("Not supported yet.");
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -30,10 +30,10 @@ public class EssentialsPlugin extends JavaPlugin
|
|||||||
public void onEnable()
|
public void onEnable()
|
||||||
{
|
{
|
||||||
|
|
||||||
Server server = new Server(getServer());
|
BukkitServer server = new BukkitServer(getServer());
|
||||||
final PluginManager pm = this.getServer().getPluginManager();
|
final PluginManager pm = this.getServer().getPluginManager();
|
||||||
pm.registerEvents(server, this);
|
pm.registerEvents(server, this);
|
||||||
ess = new Essentials(server, getLogger(), new Plugin(this));
|
ess = new Essentials(server, getLogger(), new BukkitPlugin(this));
|
||||||
if (VersionCheck.checkVersion(this))
|
if (VersionCheck.checkVersion(this))
|
||||||
{
|
{
|
||||||
try
|
try
|
||||||
@@ -86,7 +86,7 @@ public class EssentialsPlugin extends JavaPlugin
|
|||||||
{
|
{
|
||||||
CommandSender commandSender;
|
CommandSender commandSender;
|
||||||
if (sender instanceof org.bukkit.entity.Player) {
|
if (sender instanceof org.bukkit.entity.Player) {
|
||||||
commandSender = ((Server)ess.getServer()).getPlayer((org.bukkit.entity.Player)sender);
|
commandSender = ((BukkitServer)ess.getServer()).getPlayer((org.bukkit.entity.Player)sender);
|
||||||
} else {
|
} else {
|
||||||
commandSender = new BukkitCommandSender(sender);
|
commandSender = new BukkitCommandSender(sender);
|
||||||
}
|
}
|
||||||
|
@@ -45,4 +45,10 @@ public class Inventory implements IInventory {
|
|||||||
throw new UnsupportedOperationException("Not supported yet.");
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Map<Integer, ItemStack> addItem(ItemStack itemStack)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
@@ -6,7 +6,7 @@ import net.ess3.utils.LocationUtil;
|
|||||||
|
|
||||||
import org.bukkit.entity.TNTPrimed;
|
import org.bukkit.entity.TNTPrimed;
|
||||||
|
|
||||||
|
//TODO: Remove this?
|
||||||
public class Commandantioch extends EssentialsCommand
|
public class Commandantioch extends EssentialsCommand
|
||||||
{
|
{
|
||||||
@Override
|
@Override
|
||||||
|
@@ -1,10 +1,10 @@
|
|||||||
package net.ess3.commands;
|
package net.ess3.commands;
|
||||||
|
|
||||||
import static net.ess3.I18n._;
|
import static net.ess3.I18n._;
|
||||||
import net.ess3.utils.Util;
|
|
||||||
import net.ess3.api.IUser;
|
import net.ess3.api.IUser;
|
||||||
import net.ess3.api.server.CommandSender;
|
import net.ess3.api.server.CommandSender;
|
||||||
import net.ess3.permissions.Permissions;
|
import net.ess3.permissions.Permissions;
|
||||||
|
import net.ess3.utils.Util;
|
||||||
|
|
||||||
|
|
||||||
public class Commandbalance extends EssentialsCommand
|
public class Commandbalance extends EssentialsCommand
|
||||||
@@ -16,7 +16,7 @@ public class Commandbalance extends EssentialsCommand
|
|||||||
{
|
{
|
||||||
throw new NotEnoughArgumentsException();
|
throw new NotEnoughArgumentsException();
|
||||||
}
|
}
|
||||||
sender.sendMessage(_("balance", Util.displayCurrency(getPlayer(args, 0, true).getMoney(), ess)));
|
sender.sendMessage(_("balance", Util.displayCurrency(ess.getUserMap().matchUser(args[0], true, false).getMoney(), ess)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -25,7 +25,7 @@ public class Commandbalance extends EssentialsCommand
|
|||||||
final double bal = (args.length < 1
|
final double bal = (args.length < 1
|
||||||
|| !Permissions.BALANCE_OTHERS.isAuthorized(user)
|
|| !Permissions.BALANCE_OTHERS.isAuthorized(user)
|
||||||
? user
|
? user
|
||||||
: getPlayer(args, 0, true)).getMoney();
|
: ess.getUserMap().matchUser(args[0], true, false)).getMoney();
|
||||||
user.sendMessage(_("balance", Util.displayCurrency(bal, ess)));
|
user.sendMessage(_("balance", Util.displayCurrency(bal, ess)));
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@@ -4,7 +4,7 @@ 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.CommandSender;
|
||||||
import net.ess3.api.server.Player;
|
import net.ess3.api.server.Player;
|
||||||
import net.ess3.api.server.IServer;
|
import net.ess3.api.server.Server;
|
||||||
import net.ess3.permissions.Permissions;
|
import net.ess3.permissions.Permissions;
|
||||||
|
|
||||||
|
|
||||||
@@ -39,7 +39,7 @@ public class Commandfly extends EssentialsCommand
|
|||||||
user.sendMessage(_("flyMode", _(user.getAllowFlight() ? "enabled" : "disabled"), user.getDisplayName()));
|
user.sendMessage(_("flyMode", _(user.getAllowFlight() ? "enabled" : "disabled"), user.getDisplayName()));
|
||||||
}
|
}
|
||||||
|
|
||||||
private void flyOtherPlayers(final IServer 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],true,true))
|
for (Player matchPlayer : ess.getUserMap().matchUsers(args[0],true,true))
|
||||||
{
|
{
|
||||||
|
@@ -7,7 +7,7 @@ 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.CommandSender;
|
||||||
import net.ess3.api.server.Player;
|
import net.ess3.api.server.Player;
|
||||||
import net.ess3.api.server.IServer;
|
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;
|
||||||
|
|
||||||
@@ -78,7 +78,7 @@ public class Commandnick extends EssentialsCommand
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private void resetAllNicknames(final IServer server)
|
private void resetAllNicknames(final Server server)
|
||||||
{
|
{
|
||||||
for (Player player : server.getOnlinePlayers())
|
for (Player player : server.getOnlinePlayers())
|
||||||
{
|
{
|
||||||
|
@@ -5,6 +5,7 @@ import net.ess3.Console;
|
|||||||
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.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;
|
||||||
|
@@ -12,6 +12,7 @@ import java.util.Iterator;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
//TODO: remove bukkit
|
//TODO: remove bukkit
|
||||||
|
import net.ess3.api.server.CommandSender;
|
||||||
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
|
import org.bukkit.event.player.PlayerTeleportEvent.TeleportCause;
|
||||||
|
|
||||||
|
|
||||||
@@ -36,7 +37,7 @@ public class Commandwarp extends EssentialsCommand
|
|||||||
IUser otherUser = null;
|
IUser otherUser = null;
|
||||||
if (args.length == 2 && Permissions.WARP_OTHERS.isAuthorized(user))
|
if (args.length == 2 && Permissions.WARP_OTHERS.isAuthorized(user))
|
||||||
{
|
{
|
||||||
otherUser = ess.getUserMap().getUser(server.getPlayer(args[1]));
|
otherUser = ess.getUserMap().matchUser(args[1],Permissions.WARP_HIDDEN.isAuthorized(user), true);
|
||||||
if (otherUser == null)
|
if (otherUser == null)
|
||||||
{
|
{
|
||||||
throw new Exception(_("playerNotFound"));
|
throw new Exception(_("playerNotFound"));
|
||||||
@@ -57,7 +58,7 @@ public class Commandwarp extends EssentialsCommand
|
|||||||
warpList(sender, args);
|
warpList(sender, args);
|
||||||
throw new NoChargeException();
|
throw new NoChargeException();
|
||||||
}
|
}
|
||||||
IUser otherUser = ess.getUserMap().getUser(server.getPlayer(args[1]));
|
IUser otherUser = ess.getUserMap().matchUser(args[1],Permissions.WARP_HIDDEN.isAuthorized(sender), true);
|
||||||
if (otherUser == null)
|
if (otherUser == null)
|
||||||
{
|
{
|
||||||
throw new Exception(_("playerNotFound"));
|
throw new Exception(_("playerNotFound"));
|
||||||
|
@@ -5,7 +5,7 @@ import net.ess3.api.IEssentials;
|
|||||||
import net.ess3.api.IEssentialsModule;
|
import net.ess3.api.IEssentialsModule;
|
||||||
import net.ess3.api.IUser;
|
import net.ess3.api.IUser;
|
||||||
import net.ess3.api.server.CommandSender;
|
import net.ess3.api.server.CommandSender;
|
||||||
import net.ess3.api.server.IServer;
|
import net.ess3.api.server.Server;
|
||||||
import net.ess3.api.server.Player;
|
import net.ess3.api.server.Player;
|
||||||
import net.ess3.economy.Trade;
|
import net.ess3.economy.Trade;
|
||||||
import net.ess3.permissions.AbstractSuperpermsPermission;
|
import net.ess3.permissions.AbstractSuperpermsPermission;
|
||||||
@@ -19,7 +19,7 @@ public abstract class EssentialsCommand extends AbstractSuperpermsPermission imp
|
|||||||
protected transient String commandName;
|
protected transient String commandName;
|
||||||
protected transient IEssentials ess;
|
protected transient IEssentials ess;
|
||||||
protected transient IEssentialsModule module;
|
protected transient IEssentialsModule module;
|
||||||
protected transient IServer server;
|
protected transient Server server;
|
||||||
protected transient Logger logger;
|
protected transient Logger logger;
|
||||||
private transient String permission;
|
private transient String permission;
|
||||||
|
|
||||||
@@ -38,7 +38,7 @@ public abstract class EssentialsCommand extends AbstractSuperpermsPermission imp
|
|||||||
this.module = module;
|
this.module = module;
|
||||||
}
|
}
|
||||||
|
|
||||||
protected IUser getPlayer(final String[] args, final int pos) throws NoSuchFieldException, NotEnoughArgumentsException
|
/*protected IUser getPlayer(final String[] args, final int pos) throws NoSuchFieldException, NotEnoughArgumentsException
|
||||||
{
|
{
|
||||||
return getPlayer(args, pos, false);
|
return getPlayer(args, pos, false);
|
||||||
}
|
}
|
||||||
@@ -81,7 +81,7 @@ public abstract class EssentialsCommand extends AbstractSuperpermsPermission imp
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
throw new NoSuchFieldException(_("playerNotFound"));
|
throw new NoSuchFieldException(_("playerNotFound"));
|
||||||
}
|
}*/
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public final void run(final IUser user, final Command cmd, final String commandLabel, final String[] args) throws Exception
|
public final void run(final IUser user, final Command cmd, final String commandLabel, final String[] args) throws Exception
|
||||||
|
@@ -5,13 +5,14 @@ import java.util.logging.Level;
|
|||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
import static net.ess3.I18n._;
|
import static net.ess3.I18n._;
|
||||||
import net.ess3.api.*;
|
import net.ess3.api.*;
|
||||||
|
import net.ess3.api.server.CommandSender;
|
||||||
|
import net.ess3.api.server.Player;
|
||||||
|
import net.ess3.api.server.Plugin;
|
||||||
import org.bukkit.Bukkit;
|
import org.bukkit.Bukkit;
|
||||||
import org.bukkit.ChatColor;
|
import org.bukkit.ChatColor;
|
||||||
import org.bukkit.command.Command;
|
import org.bukkit.command.Command;
|
||||||
import org.bukkit.command.PluginCommand;
|
import org.bukkit.command.PluginCommand;
|
||||||
import org.bukkit.command.PluginCommandYamlParser;
|
import org.bukkit.command.PluginCommandYamlParser;
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
import org.bukkit.plugin.Plugin;
|
|
||||||
|
|
||||||
|
|
||||||
public class EssentialsCommandHandler implements ICommandHandler
|
public class EssentialsCommandHandler implements ICommandHandler
|
||||||
@@ -63,6 +64,7 @@ public class EssentialsCommandHandler implements ICommandHandler
|
|||||||
{
|
{
|
||||||
settings.unlock();
|
settings.unlock();
|
||||||
}
|
}
|
||||||
|
// TODO: Move this stuff to bukkit workarounds
|
||||||
// Allow plugins to override the command via onCommand
|
// Allow plugins to override the command via onCommand
|
||||||
if (!overridden && (!commandLabel.startsWith("e") || commandLabel.equalsIgnoreCase(command.getName())))
|
if (!overridden && (!commandLabel.startsWith("e") || commandLabel.equalsIgnoreCase(command.getName())))
|
||||||
{
|
{
|
||||||
@@ -102,7 +104,7 @@ public class EssentialsCommandHandler implements ICommandHandler
|
|||||||
IUser user = null;
|
IUser user = null;
|
||||||
if (sender instanceof Player)
|
if (sender instanceof Player)
|
||||||
{
|
{
|
||||||
user = ess.getUserMap().getUser((Player)sender);
|
user = ((Player)sender).getUser();
|
||||||
LOGGER.log(Level.INFO, String.format("[PLAYER_COMMAND] %s: /%s %s ", ((Player)sender).getName(), commandLabel, EssentialsCommand.getFinalArg(args, 0)));
|
LOGGER.log(Level.INFO, String.format("[PLAYER_COMMAND] %s: /%s %s ", ((Player)sender).getName(), commandLabel, EssentialsCommand.getFinalArg(args, 0)));
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -202,6 +204,7 @@ public class EssentialsCommandHandler implements ICommandHandler
|
|||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//TODO: Move this stuff to bukkit workarounds
|
||||||
public final void addPlugin(final Plugin plugin)
|
public final void addPlugin(final Plugin plugin)
|
||||||
{
|
{
|
||||||
if (plugin.getDescription().getMain().contains("com.earth2me.essentials"))
|
if (plugin.getDescription().getMain().contains("com.earth2me.essentials"))
|
||||||
|
@@ -1,14 +1,5 @@
|
|||||||
package net.ess3.economy;
|
package net.ess3.economy;
|
||||||
|
|
||||||
import static net.ess3.I18n._;
|
|
||||||
import net.ess3.api.ChargeException;
|
|
||||||
import net.ess3.api.IEssentials;
|
|
||||||
import net.ess3.api.ISettings;
|
|
||||||
import net.ess3.api.IUser;
|
|
||||||
import net.ess3.api.server.ItemStack;
|
|
||||||
import net.ess3.api.server.Location;
|
|
||||||
import net.ess3.permissions.NoCommandCostPermissions;
|
|
||||||
import net.ess3.permissions.Permissions;
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.FileWriter;
|
import java.io.FileWriter;
|
||||||
import java.io.IOException;
|
import java.io.IOException;
|
||||||
@@ -19,6 +10,15 @@ 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 lombok.Cleanup;
|
import lombok.Cleanup;
|
||||||
|
import static net.ess3.I18n._;
|
||||||
|
import net.ess3.api.ChargeException;
|
||||||
|
import net.ess3.api.IEssentials;
|
||||||
|
import net.ess3.api.ISettings;
|
||||||
|
import net.ess3.api.IUser;
|
||||||
|
import net.ess3.api.server.ItemStack;
|
||||||
|
import net.ess3.api.server.Location;
|
||||||
|
import net.ess3.permissions.NoCommandCostPermissions;
|
||||||
|
import net.ess3.permissions.Permissions;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -30,11 +30,7 @@ import java.net.URLConnection;
|
|||||||
import java.net.URLEncoder;
|
import java.net.URLEncoder;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import java.util.logging.Level;
|
import java.util.logging.Level;
|
||||||
import org.bukkit.Bukkit;
|
import net.ess3.api.server.Plugin;
|
||||||
import org.bukkit.configuration.InvalidConfigurationException;
|
|
||||||
import org.bukkit.configuration.file.YamlConfiguration;
|
|
||||||
import org.bukkit.plugin.Plugin;
|
|
||||||
import org.bukkit.plugin.PluginDescriptionFile;
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -193,7 +189,7 @@ public class Metrics
|
|||||||
}
|
}
|
||||||
|
|
||||||
// Begin hitting the server with glorious data
|
// Begin hitting the server with glorious data
|
||||||
taskId = plugin.getServer().getScheduler().scheduleAsyncRepeatingTask(plugin, new Runnable()
|
taskId = plugin.scheduleAsyncRepeatingTask(new Runnable()
|
||||||
{
|
{
|
||||||
private boolean firstPost = true;
|
private boolean firstPost = true;
|
||||||
|
|
||||||
@@ -207,7 +203,7 @@ public class Metrics
|
|||||||
// Disable Task, if it is running and the server owner decided to opt-out
|
// Disable Task, if it is running and the server owner decided to opt-out
|
||||||
if (isOptOut() && taskId > 0)
|
if (isOptOut() && taskId > 0)
|
||||||
{
|
{
|
||||||
plugin.getServer().getScheduler().cancelTask(taskId);
|
plugin.cancelTask(taskId);
|
||||||
taskId = -1;
|
taskId = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -223,7 +219,7 @@ public class Metrics
|
|||||||
}
|
}
|
||||||
catch (IOException e)
|
catch (IOException e)
|
||||||
{
|
{
|
||||||
Bukkit.getLogger().log(Level.INFO, "[Metrics] " + e.getMessage());
|
plugin.getLogger().log(Level.INFO, "[Metrics] " + e.getMessage());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}, 0, PING_INTERVAL * 1200);
|
}, 0, PING_INTERVAL * 1200);
|
||||||
@@ -246,12 +242,12 @@ public class Metrics
|
|||||||
}
|
}
|
||||||
catch (IOException ex)
|
catch (IOException ex)
|
||||||
{
|
{
|
||||||
Bukkit.getLogger().log(Level.INFO, "[Metrics] " + ex.getMessage());
|
plugin.getLogger().log(Level.INFO, "[Metrics] " + ex.getMessage());
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
catch (InvalidConfigurationException ex)
|
catch (InvalidConfigurationException ex)
|
||||||
{
|
{
|
||||||
Bukkit.getLogger().log(Level.INFO, "[Metrics] " + ex.getMessage());
|
plugin.getLogger().log(Level.INFO, "[Metrics] " + ex.getMessage());
|
||||||
return true;
|
return true;
|
||||||
}
|
}
|
||||||
return configuration.getBoolean("opt-out", false);
|
return configuration.getBoolean("opt-out", false);
|
||||||
@@ -304,7 +300,7 @@ public class Metrics
|
|||||||
// Disable Task, if it is running
|
// Disable Task, if it is running
|
||||||
if (taskId >= 0)
|
if (taskId >= 0)
|
||||||
{
|
{
|
||||||
this.plugin.getServer().getScheduler().cancelTask(taskId);
|
this.plugin.cancelTask(taskId);
|
||||||
taskId = -1;
|
taskId = -1;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -323,7 +319,7 @@ public class Metrics
|
|||||||
data.append(encode("guid")).append('=').append(encode(guid));
|
data.append(encode("guid")).append('=').append(encode(guid));
|
||||||
encodeDataPair(data, "version", description.getVersion());
|
encodeDataPair(data, "version", description.getVersion());
|
||||||
encodeDataPair(data, "server", Bukkit.getVersion());
|
encodeDataPair(data, "server", Bukkit.getVersion());
|
||||||
encodeDataPair(data, "players", Integer.toString(Bukkit.getServer().getOnlinePlayers().length));
|
encodeDataPair(data, "players", Integer.toString(plugin.getServer().getOnlinePlayers().length));
|
||||||
encodeDataPair(data, "revision", String.valueOf(REVISION));
|
encodeDataPair(data, "revision", String.valueOf(REVISION));
|
||||||
|
|
||||||
// If we're pinging, append it
|
// If we're pinging, append it
|
||||||
|
@@ -85,6 +85,7 @@ public enum Permissions implements IPermission
|
|||||||
TPOHERE,
|
TPOHERE,
|
||||||
UNLIMITED_OTHERS,
|
UNLIMITED_OTHERS,
|
||||||
WARP_LIST(Permission.Default.TRUE),
|
WARP_LIST(Permission.Default.TRUE),
|
||||||
|
WARP_HIDDEN,
|
||||||
WARP_OTHERS,
|
WARP_OTHERS,
|
||||||
VANISH_SEE_OTHERS;
|
VANISH_SEE_OTHERS;
|
||||||
private static final String base = "essentials.";
|
private static final String base = "essentials.";
|
||||||
|
@@ -6,6 +6,7 @@ import net.ess3.api.IEssentials;
|
|||||||
import net.ess3.api.IRanks;
|
import net.ess3.api.IRanks;
|
||||||
import net.ess3.api.ISettings;
|
import net.ess3.api.ISettings;
|
||||||
import net.ess3.api.IUser;
|
import net.ess3.api.IUser;
|
||||||
|
import net.ess3.bukkit.BukkitPlayer;
|
||||||
import net.ess3.utils.Util;
|
import net.ess3.utils.Util;
|
||||||
import org.anjocaido.groupmanager.GroupManager;
|
import org.anjocaido.groupmanager.GroupManager;
|
||||||
import org.anjocaido.groupmanager.permissions.AnjoPermissionsHandler;
|
import org.anjocaido.groupmanager.permissions.AnjoPermissionsHandler;
|
||||||
@@ -24,7 +25,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public double getHealCooldown(IUser player)
|
public double getHealCooldown(IUser player)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@@ -35,7 +36,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public double getTeleportCooldown(IUser player)
|
public double getTeleportCooldown(IUser player)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@@ -46,7 +47,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public double getTeleportDelay(IUser player)
|
public double getTeleportDelay(IUser player)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@@ -57,7 +58,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public String getPrefix(IUser player)
|
public String getPrefix(IUser player)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
@@ -68,7 +69,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public String getSuffix(IUser player)
|
public String getSuffix(IUser player)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
@@ -79,7 +80,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public int getHomeLimit(IUser player)
|
public int getHomeLimit(IUser player)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return 0;
|
return 0;
|
||||||
@@ -104,7 +105,7 @@ public class GMGroups implements IRanks {
|
|||||||
|
|
||||||
private String getRawChatFormat(final IUser player)
|
private String getRawChatFormat(final IUser player)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler != null)
|
if (handler != null)
|
||||||
{
|
{
|
||||||
String chatformat = handler.getPermissionString(player.getName(), "chatformat");
|
String chatformat = handler.getPermissionString(player.getName(), "chatformat");
|
||||||
@@ -122,7 +123,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public String getMainGroup(IUser player)
|
public String getMainGroup(IUser player)
|
||||||
{
|
{
|
||||||
final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
final AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return null;
|
return null;
|
||||||
@@ -133,7 +134,7 @@ public class GMGroups implements IRanks {
|
|||||||
@Override
|
@Override
|
||||||
public boolean inGroup(IUser player, String groupname)
|
public boolean inGroup(IUser player, String groupname)
|
||||||
{
|
{
|
||||||
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(player.getBase());
|
AnjoPermissionsHandler handler = groupManager.getWorldsHolder().getWorldPermissions(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
if (handler == null)
|
if (handler == null)
|
||||||
{
|
{
|
||||||
return false;
|
return false;
|
||||||
|
@@ -6,6 +6,7 @@ import net.ess3.api.IEssentials;
|
|||||||
import net.ess3.api.IRanks;
|
import net.ess3.api.IRanks;
|
||||||
import net.ess3.api.ISettings;
|
import net.ess3.api.ISettings;
|
||||||
import net.ess3.api.IUser;
|
import net.ess3.api.IUser;
|
||||||
|
import net.ess3.bukkit.BukkitPlayer;
|
||||||
import net.ess3.utils.Util;
|
import net.ess3.utils.Util;
|
||||||
import net.milkbowl.vault.chat.Chat;
|
import net.milkbowl.vault.chat.Chat;
|
||||||
|
|
||||||
@@ -23,42 +24,42 @@ public class VaultGroups implements IRanks
|
|||||||
public double getHealCooldown(IUser player)
|
public double getHealCooldown(IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
return chat.getPlayerInfoDouble(player.getBase(), "healcooldown", 0);
|
return chat.getPlayerInfoDouble(((BukkitPlayer)player.getBase()).getPlayer(), "healcooldown", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public double getTeleportCooldown(IUser player)
|
public double getTeleportCooldown(IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
return chat.getPlayerInfoDouble(player.getBase(), "teleportcooldown", 0);
|
return chat.getPlayerInfoDouble(((BukkitPlayer)player.getBase()).getPlayer(), "teleportcooldown", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public double getTeleportDelay(IUser player)
|
public double getTeleportDelay(IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
return chat.getPlayerInfoDouble(player.getBase(), "teleportdelay", 0);
|
return chat.getPlayerInfoDouble(((BukkitPlayer)player.getBase()).getPlayer(), "teleportdelay", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getPrefix(IUser player)
|
public String getPrefix(IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
return chat.getPlayerPrefix(player.getBase());
|
return chat.getPlayerPrefix(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public String getSuffix(IUser player)
|
public String getSuffix(IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
return chat.getPlayerSuffix(player.getBase());
|
return chat.getPlayerSuffix(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int getHomeLimit(IUser player)
|
public int getHomeLimit(IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
return chat.getPlayerInfoInteger(player.getBase(), "homes", 0);
|
return chat.getPlayerInfoInteger(((BukkitPlayer)player.getBase()).getPlayer(), "homes", 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -79,7 +80,7 @@ public class VaultGroups implements IRanks
|
|||||||
private String getRawChatFormat(final IUser player)
|
private String getRawChatFormat(final IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
String chatformat = chat.getPlayerInfoString(player.getBase(), "chatformat", "");
|
String chatformat = chat.getPlayerInfoString(((BukkitPlayer)player.getBase()).getPlayer(), "chatformat", "");
|
||||||
if (chatformat != null && !chatformat.isEmpty())
|
if (chatformat != null && !chatformat.isEmpty())
|
||||||
{
|
{
|
||||||
return chatformat;
|
return chatformat;
|
||||||
@@ -95,14 +96,14 @@ public class VaultGroups implements IRanks
|
|||||||
public String getMainGroup(IUser player)
|
public String getMainGroup(IUser player)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
return chat.getPrimaryGroup(player.getBase());
|
return chat.getPrimaryGroup(((BukkitPlayer)player.getBase()).getPlayer());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public boolean inGroup(IUser player, String groupname)
|
public boolean inGroup(IUser player, String groupname)
|
||||||
{
|
{
|
||||||
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
Chat chat = ess.getServer().getServiceProvider(Chat.class);
|
||||||
for (String group : chat.getPlayerGroups(player.getBase()))
|
for (String group : chat.getPlayerGroups(((BukkitPlayer)player.getBase()).getPlayer()))
|
||||||
{
|
{
|
||||||
if (group.equalsIgnoreCase(groupname))
|
if (group.equalsIgnoreCase(groupname))
|
||||||
{
|
{
|
||||||
|
@@ -5,8 +5,11 @@ import java.util.List;
|
|||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
import java.util.regex.Pattern;
|
import java.util.regex.Pattern;
|
||||||
|
import net.ess3.Essentials;
|
||||||
|
import net.ess3.api.server.ItemStack;
|
||||||
|
import net.ess3.api.server.Material;
|
||||||
|
import net.ess3.api.server.Plugin;
|
||||||
import org.bukkit.enchantments.Enchantment;
|
import org.bukkit.enchantments.Enchantment;
|
||||||
import org.bukkit.inventory.ItemStack;
|
|
||||||
import org.bukkit.material.MaterialData;
|
import org.bukkit.material.MaterialData;
|
||||||
import org.yaml.snakeyaml.TypeDescription;
|
import org.yaml.snakeyaml.TypeDescription;
|
||||||
import org.yaml.snakeyaml.constructor.Constructor;
|
import org.yaml.snakeyaml.constructor.Constructor;
|
||||||
@@ -18,9 +21,9 @@ import org.yaml.snakeyaml.nodes.*;
|
|||||||
public class BukkitConstructor extends Constructor
|
public class BukkitConstructor extends Constructor
|
||||||
{
|
{
|
||||||
private final transient Pattern NUMPATTERN = Pattern.compile("\\d+");
|
private final transient Pattern NUMPATTERN = Pattern.compile("\\d+");
|
||||||
private final transient IPlugin plugin;
|
private final transient Plugin plugin;
|
||||||
|
|
||||||
public BukkitConstructor(final Class clazz, final IPlugin plugin)
|
public BukkitConstructor(final Class clazz, final Plugin plugin)
|
||||||
{
|
{
|
||||||
super(clazz);
|
super(clazz);
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
@@ -41,11 +44,11 @@ public class BukkitConstructor extends Constructor
|
|||||||
if (NUMPATTERN.matcher(val).matches())
|
if (NUMPATTERN.matcher(val).matches())
|
||||||
{
|
{
|
||||||
final int typeId = Integer.parseInt(val);
|
final int typeId = Integer.parseInt(val);
|
||||||
mat = Material.getMaterial(typeId);
|
mat = Material.get(typeId);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
mat = Material.matchMaterial(val);
|
mat = Material.match(val);
|
||||||
}
|
}
|
||||||
return mat;
|
return mat;
|
||||||
}
|
}
|
||||||
@@ -103,11 +106,11 @@ public class BukkitConstructor extends Constructor
|
|||||||
if (NUMPATTERN.matcher(split2[0]).matches())
|
if (NUMPATTERN.matcher(split2[0]).matches())
|
||||||
{
|
{
|
||||||
final int typeId = Integer.parseInt(split2[0]);
|
final int typeId = Integer.parseInt(split2[0]);
|
||||||
mat = Material.getMaterial(typeId);
|
mat = Material.get(typeId);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
{
|
{
|
||||||
mat = Material.matchMaterial(split2[0]);
|
mat = Material.match(split2[0]);
|
||||||
}
|
}
|
||||||
if (mat == null)
|
if (mat == null)
|
||||||
{
|
{
|
||||||
@@ -123,7 +126,7 @@ public class BukkitConstructor extends Constructor
|
|||||||
{
|
{
|
||||||
size = Integer.parseInt(split1[1]);
|
size = Integer.parseInt(split1[1]);
|
||||||
}
|
}
|
||||||
final ItemStack stack = new ItemStack(mat, size, data);
|
final ItemStack stack = ItemStack.create(mat, size, data);
|
||||||
if (split1.length > 2)
|
if (split1.length > 2)
|
||||||
{
|
{
|
||||||
for (int i = 2; i < split1.length; i++)
|
for (int i = 2; i < split1.length; i++)
|
||||||
|
@@ -1,6 +1,6 @@
|
|||||||
package net.ess3.storage;
|
package net.ess3.storage;
|
||||||
|
|
||||||
import net.ess3.api.server.IPlugin;
|
import net.ess3.api.server.Plugin;
|
||||||
import java.io.Reader;
|
import java.io.Reader;
|
||||||
import java.lang.reflect.Field;
|
import java.lang.reflect.Field;
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
@@ -15,9 +15,9 @@ public class YamlStorageReader implements IStorageReader
|
|||||||
private transient static final Map<Class, Yaml> PREPARED_YAMLS = Collections.synchronizedMap(new HashMap<Class, Yaml>());
|
private transient static final Map<Class, Yaml> PREPARED_YAMLS = Collections.synchronizedMap(new HashMap<Class, Yaml>());
|
||||||
private transient static final Map<Class, ReentrantLock> LOCKS = new HashMap<Class, ReentrantLock>();
|
private transient static final Map<Class, ReentrantLock> LOCKS = new HashMap<Class, ReentrantLock>();
|
||||||
private transient final Reader reader;
|
private transient final Reader reader;
|
||||||
private transient final IPlugin plugin;
|
private transient final Plugin plugin;
|
||||||
|
|
||||||
public YamlStorageReader(final Reader reader, final IPlugin plugin)
|
public YamlStorageReader(final Reader reader, final Plugin plugin)
|
||||||
{
|
{
|
||||||
this.reader = reader;
|
this.reader = reader;
|
||||||
this.plugin = plugin;
|
this.plugin = plugin;
|
||||||
|
@@ -1,10 +1,10 @@
|
|||||||
package net.ess3.user;
|
package net.ess3.user;
|
||||||
|
|
||||||
import net.ess3.api.server.Material;
|
|
||||||
import net.ess3.storage.*;
|
|
||||||
import java.util.*;
|
import java.util.*;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
import net.ess3.api.server.Material;
|
||||||
|
import net.ess3.storage.*;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@@ -1,15 +1,17 @@
|
|||||||
package net.ess3.user;
|
package net.ess3.user;
|
||||||
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.LinkedHashSet;
|
||||||
import java.util.Locale;
|
import java.util.Locale;
|
||||||
import java.util.Set;
|
import java.util.Set;
|
||||||
import net.ess3.api.IEssentials;
|
import net.ess3.api.IEssentials;
|
||||||
import net.ess3.api.IUser;
|
import net.ess3.api.IUser;
|
||||||
import net.ess3.api.IUserMap;
|
import net.ess3.api.IUserMap;
|
||||||
import net.ess3.api.InvalidNameException;
|
import net.ess3.api.InvalidNameException;
|
||||||
|
import net.ess3.api.server.Player;
|
||||||
import net.ess3.storage.StorageObjectMap;
|
import net.ess3.storage.StorageObjectMap;
|
||||||
import org.bukkit.Bukkit;
|
import net.ess3.utils.Util;
|
||||||
import org.bukkit.entity.Player;
|
|
||||||
|
|
||||||
|
|
||||||
public class UserMap extends StorageObjectMap<IUser> implements IUserMap
|
public class UserMap extends StorageObjectMap<IUser> implements IUserMap
|
||||||
@@ -94,4 +96,158 @@ public class UserMap extends StorageObjectMap<IUser> implements IUserMap
|
|||||||
}
|
}
|
||||||
return user;
|
return user;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public IUser matchUser(final String name, final boolean includeHidden, final boolean includeOffline) throws TooManyMatchesException
|
||||||
|
{
|
||||||
|
final Set<IUser> users = matchUsers(name, includeHidden, includeOffline);
|
||||||
|
if (users == null || users.isEmpty())
|
||||||
|
{
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
if (users.size() > 1)
|
||||||
|
{
|
||||||
|
throw new TooManyMatchesException();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return users.iterator().next();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Set<IUser> matchUsers(final String name, final boolean includeHidden, final boolean includeOffline)
|
||||||
|
{
|
||||||
|
final String colorlessName = Util.stripColor(name);
|
||||||
|
final String[] search = colorlessName.split(",");
|
||||||
|
final boolean multisearch = search.length > 1;
|
||||||
|
final Set<IUser> result = new LinkedHashSet<IUser>();
|
||||||
|
final String nicknamePrefix = Util.stripColor(getNickNamePrefix());
|
||||||
|
for (String searchString : search)
|
||||||
|
{
|
||||||
|
if (searchString.isEmpty())
|
||||||
|
{
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
if (searchString.startsWith(nicknamePrefix))
|
||||||
|
{
|
||||||
|
searchString = searchString.substring(nicknamePrefix.length());
|
||||||
|
}
|
||||||
|
searchString = searchString.toLowerCase(Locale.ENGLISH);
|
||||||
|
final boolean multimatching = searchString.endsWith("*");
|
||||||
|
if (multimatching)
|
||||||
|
{
|
||||||
|
searchString = searchString.substring(0, searchString.length() - 1);
|
||||||
|
}
|
||||||
|
Player match = null;
|
||||||
|
for (Player player : ess.getServer().getOnlinePlayers())
|
||||||
|
{
|
||||||
|
if (player.getName().equalsIgnoreCase(searchString)
|
||||||
|
&& (includeHidden || (includeOffline && player.getUser().isHidden())))
|
||||||
|
{
|
||||||
|
match = player;
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (match != null)
|
||||||
|
{
|
||||||
|
if (multimatching || multisearch)
|
||||||
|
{
|
||||||
|
result.add(match.getUser());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return Collections.singleton(match.getUser());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
for (Player player : ess.getServer().getOnlinePlayers())
|
||||||
|
{
|
||||||
|
final String nickname = player.getUser().getData().getNickname();
|
||||||
|
if (nickname != null && !nickname.isEmpty()
|
||||||
|
&& nickname.equalsIgnoreCase(searchString)
|
||||||
|
&& (includeHidden || (includeOffline && player.getUser().isHidden())))
|
||||||
|
{
|
||||||
|
if (multimatching || multisearch)
|
||||||
|
{
|
||||||
|
result.add(player.getUser());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return Collections.singleton(player.getUser());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (includeOffline)
|
||||||
|
{
|
||||||
|
for (String playerName : getAllUniqueUsers())
|
||||||
|
{
|
||||||
|
if (playerName.equals(searchString))
|
||||||
|
{
|
||||||
|
match = getUser(playerName);
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (match != null)
|
||||||
|
{
|
||||||
|
if (multimatching || multisearch)
|
||||||
|
{
|
||||||
|
result.add(match.getUser());
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return Collections.singleton(match.getUser());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (multimatching || match == null)
|
||||||
|
{
|
||||||
|
for (Player player : ess.getServer().getOnlinePlayers())
|
||||||
|
{
|
||||||
|
if (player.getName().toLowerCase(Locale.ENGLISH).startsWith(searchString)
|
||||||
|
&& (includeHidden || (includeOffline && player.getUser().isHidden())))
|
||||||
|
{
|
||||||
|
result.add(player.getUser());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
final String nickname = player.getUser().getData().getNickname();
|
||||||
|
if (nickname != null && !nickname.isEmpty()
|
||||||
|
&& nickname.toLowerCase(Locale.ENGLISH).startsWith(searchString)
|
||||||
|
&& (includeHidden || (includeOffline && player.getUser().isHidden())))
|
||||||
|
{
|
||||||
|
result.add(player.getUser());
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (includeOffline)
|
||||||
|
{
|
||||||
|
for (String playerName : getAllUniqueUsers())
|
||||||
|
{
|
||||||
|
if (playerName.startsWith(searchString))
|
||||||
|
{
|
||||||
|
result.add(getUser(playerName));
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
private String getNickNamePrefix()
|
||||||
|
{
|
||||||
|
ess.getSettings().acquireReadLock();
|
||||||
|
try
|
||||||
|
{
|
||||||
|
return ess.getSettings().getData().getChat().getNicknamePrefix();
|
||||||
|
}
|
||||||
|
finally
|
||||||
|
{
|
||||||
|
ess.getSettings().unlock();
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
@@ -1,26 +0,0 @@
|
|||||||
package com.earth2me.essentials.testserver;
|
|
||||||
|
|
||||||
import net.ess3.api.server.Location;
|
|
||||||
import org.bukkit.TreeType;
|
|
||||||
|
|
||||||
public class World implements World {
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public String getName()
|
|
||||||
{
|
|
||||||
return "TestWorld";
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public boolean generateTree(Location safeLocation, TreeType tree)
|
|
||||||
{
|
|
||||||
throw new UnsupportedOperationException("Not supported yet.");
|
|
||||||
}
|
|
||||||
|
|
||||||
@Override
|
|
||||||
public int getHighestBlockYAt(int topX, int topZ)
|
|
||||||
{
|
|
||||||
throw new UnsupportedOperationException("Not supported yet.");
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
@@ -1,14 +1,15 @@
|
|||||||
package com.earth2me.essentials;
|
package net.ess3;
|
||||||
|
|
||||||
import com.earth2me.essentials.testserver.Plugin;
|
|
||||||
import com.earth2me.essentials.testserver.Server;
|
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
import junit.framework.TestCase;
|
import junit.framework.TestCase;
|
||||||
import net.ess3.Essentials;
|
import net.ess3.testserver.TestPlugin;
|
||||||
|
import net.ess3.testserver.TestServer;
|
||||||
|
import net.ess3.testserver.TestWorld;
|
||||||
|
|
||||||
public abstract class EssentialsTest extends TestCase {
|
public abstract class EssentialsTest extends TestCase {
|
||||||
protected final transient Server server;
|
protected final transient TestServer server;
|
||||||
protected final transient Plugin plugin;
|
protected final transient TestPlugin plugin;
|
||||||
|
protected final transient TestWorld world;
|
||||||
protected final transient Logger logger;
|
protected final transient Logger logger;
|
||||||
protected final transient Essentials ess;
|
protected final transient Essentials ess;
|
||||||
|
|
||||||
@@ -17,8 +18,9 @@ public abstract class EssentialsTest extends TestCase {
|
|||||||
{
|
{
|
||||||
super(testName);
|
super(testName);
|
||||||
logger = Logger.getLogger(this.getName());
|
logger = Logger.getLogger(this.getName());
|
||||||
server = new Server();
|
server = new TestServer();
|
||||||
plugin = new Plugin();
|
world = (TestWorld)server.getWorlds().get(0);
|
||||||
|
plugin = new TestPlugin();
|
||||||
ess = new Essentials(server, logger, plugin);
|
ess = new Essentials(server, logger, plugin);
|
||||||
Essentials.testing = true;
|
Essentials.testing = true;
|
||||||
ess.onEnable();
|
ess.onEnable();
|
@@ -1,16 +1,13 @@
|
|||||||
package net.ess3;
|
package net.ess3;
|
||||||
|
|
||||||
import java.io.*;
|
import java.io.*;
|
||||||
|
import net.ess3.api.server.Location;
|
||||||
import net.ess3.settings.Settings;
|
import net.ess3.settings.Settings;
|
||||||
import net.ess3.storage.ObjectLoadException;
|
import net.ess3.storage.ObjectLoadException;
|
||||||
import net.ess3.storage.StorageObject;
|
import net.ess3.storage.StorageObject;
|
||||||
import net.ess3.storage.YamlStorageReader;
|
import net.ess3.storage.YamlStorageReader;
|
||||||
import net.ess3.storage.YamlStorageWriter;
|
import net.ess3.storage.YamlStorageWriter;
|
||||||
import net.ess3.utils.ExecuteTimer;
|
import net.ess3.utils.ExecuteTimer;
|
||||||
import org.bukkit.Location;
|
|
||||||
import org.bukkit.World;
|
|
||||||
import org.bukkit.World.Environment;
|
|
||||||
import org.junit.Test;
|
import org.junit.Test;
|
||||||
|
|
||||||
|
|
||||||
@@ -65,8 +62,6 @@ public class StorageTest extends EssentialsTest
|
|||||||
{
|
{
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
FakeServer server = new FakeServer();
|
|
||||||
World world = server.createWorld("testWorld", Environment.NORMAL);
|
|
||||||
ExecuteTimer ext = new ExecuteTimer();
|
ExecuteTimer ext = new ExecuteTimer();
|
||||||
ext.start();
|
ext.start();
|
||||||
final ByteArrayInputStream bais = new ByteArrayInputStream(new byte[0]);
|
final ByteArrayInputStream bais = new ByteArrayInputStream(new byte[0]);
|
||||||
@@ -80,7 +75,7 @@ public class StorageTest extends EssentialsTest
|
|||||||
|
|
||||||
for (int j = 0; j < 10000; j++)
|
for (int j = 0; j < 10000; j++)
|
||||||
{
|
{
|
||||||
userdata.getHomes().put("home", new net.ess3.storage.StoredLocation(new Location(world, j, j, j)));
|
userdata.getHomes().put("home", new net.ess3.storage.StoredLocation(Location.create(world, j, j, j)));
|
||||||
}
|
}
|
||||||
ext.mark("change home 10000 times");
|
ext.mark("change home 10000 times");
|
||||||
final ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
final ByteArrayOutputStream baos = new ByteArrayOutputStream();
|
||||||
|
@@ -1,9 +1,9 @@
|
|||||||
package com.earth2me.essentials.testserver;
|
package net.ess3.testserver;
|
||||||
|
|
||||||
import net.ess3.api.IUser;
|
import net.ess3.api.IUser;
|
||||||
import net.ess3.api.server.*;
|
import net.ess3.api.server.*;
|
||||||
|
|
||||||
public class Player implements Player {
|
public class TestPlayer implements Player {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public IUser getUser()
|
public IUser getUser()
|
||||||
@@ -42,7 +42,7 @@ public class Player implements Player {
|
|||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public World getWorld()
|
public TestWorld getWorld()
|
||||||
{
|
{
|
||||||
throw new UnsupportedOperationException("Not supported yet.");
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
}
|
}
|
||||||
@@ -149,4 +149,52 @@ public class Player implements Player {
|
|||||||
throw new UnsupportedOperationException("Not supported yet.");
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setTotalExperience(int exp)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getTotalExperience()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setDisplayName(String name)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setPlayerListName(String name)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setSleepingIgnored(boolean b)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean isBanned()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setCompassTarget(Location loc)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void damage(int value)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@@ -1,10 +1,13 @@
|
|||||||
package com.earth2me.essentials.testserver;
|
package net.ess3.testserver;
|
||||||
|
|
||||||
import net.ess3.api.server.IPlugin;
|
|
||||||
import java.io.File;
|
import java.io.File;
|
||||||
import java.io.InputStream;
|
import java.io.InputStream;
|
||||||
|
import java.util.logging.Logger;
|
||||||
|
import net.ess3.api.server.Location;
|
||||||
|
import net.ess3.api.server.Player;
|
||||||
|
import net.ess3.api.server.Plugin;
|
||||||
|
|
||||||
public class Plugin implements IPlugin {
|
public class TestPlugin implements Plugin {
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public int scheduleAsyncDelayedTask(Runnable run)
|
public int scheduleAsyncDelayedTask(Runnable run)
|
||||||
@@ -66,4 +69,28 @@ public class Plugin implements IPlugin {
|
|||||||
throw new UnsupportedOperationException("Not supported yet.");
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int scheduleAsyncRepeatingTask(Runnable run, long delay, long period)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Location callRespawnEvent(Player player, Location loc, boolean bedSpawn)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void callSuicideEvent(Player player)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Logger getLogger()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
@@ -1,16 +1,16 @@
|
|||||||
package com.earth2me.essentials.testserver;
|
package net.ess3.testserver;
|
||||||
|
|
||||||
import net.ess3.api.server.CommandSender;
|
|
||||||
import net.ess3.api.server.Player;
|
|
||||||
import net.ess3.api.server.IServer;
|
|
||||||
import net.ess3.api.server.World;
|
|
||||||
import java.util.Collection;
|
import java.util.Collection;
|
||||||
import java.util.Collections;
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import net.ess3.api.server.CommandSender;
|
||||||
|
import net.ess3.api.server.Player;
|
||||||
|
import net.ess3.api.server.Server;
|
||||||
|
import net.ess3.api.server.World;
|
||||||
|
|
||||||
public class Server implements IServer {
|
public class TestServer implements Server {
|
||||||
|
|
||||||
public Server()
|
public TestServer()
|
||||||
{
|
{
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -19,7 +19,7 @@ public class Server implements IServer {
|
|||||||
@Override
|
@Override
|
||||||
public List<World> getWorlds()
|
public List<World> getWorlds()
|
||||||
{
|
{
|
||||||
return Collections.<World>singletonList(new World());
|
return Collections.<World>singletonList(new TestWorld());
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
77
Essentials/test/net/ess3/testserver/TestWorld.java
Normal file
77
Essentials/test/net/ess3/testserver/TestWorld.java
Normal file
@@ -0,0 +1,77 @@
|
|||||||
|
package net.ess3.testserver;
|
||||||
|
|
||||||
|
import java.util.UUID;
|
||||||
|
import net.ess3.api.server.ItemStack;
|
||||||
|
import net.ess3.api.server.Location;
|
||||||
|
import net.ess3.api.server.World;
|
||||||
|
import org.bukkit.TreeType;
|
||||||
|
|
||||||
|
public class TestWorld implements World {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public String getName()
|
||||||
|
{
|
||||||
|
return "TestWorld";
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean generateTree(Location safeLocation, TreeType tree)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public int getHighestBlockYAt(int topX, int topZ)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public ItemStack dropItem(Location loc, ItemStack stack)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public UUID getUID()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Location getSpawnLocation()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void dropItemNaturally(Location location, ItemStack overflowStack)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setStorm(boolean b)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void setWeatherDuration(int i)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public long getTime()
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public boolean setSpawnLocation(int blockX, int blockY, int blockZ)
|
||||||
|
{
|
||||||
|
throw new UnsupportedOperationException("Not supported yet.");
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
Reference in New Issue
Block a user