private static CommandHandler cmCommandHandler = new CM();
public void onEnable()
{
PluginDescriptionFile pdfFile = this.getDescription();
try
{
Current.Plugin = this;
PluginManager pm = getServer().getPluginManager();
pm.registerEvent(Event.Type.BLOCK_BREAK, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_PLACE, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.SIGN_CHANGE, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_BURN, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_FADE, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_FORM, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_FROMTO, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.BLOCK_SPREAD, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.LEAVES_DECAY, this.blockListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.PLAYER_INTERACT, this.playerListener, Event.Priority.Monitor, this);
pm.registerEvent(Event.Type.PLAYER_LOGIN, this.playerListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.PLAYER_JOIN, this.playerListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.PLAYER_PRELOGIN, this.playerListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.PLAYER_COMMAND_PREPROCESS, this.playerListener, Event.Priority.Highest, this);
pm.registerEvent(Event.Type.PLAYER_RESPAWN, this.playerListener, Event.Priority.Normal, this);
pm.registerEvent(Event.Type.ENTITY_DEATH, this.entityListener, Event.Priority.Normal, this);
registerCommands();
MapData.LoadMaps();
MapEntranceData.LoadMapEntrances();
for (World world : this.getServer().getWorlds())
{
for (Player player : world.getPlayers())
{
String worldName = world.getName().replace("_" + player.getName(), "");
Map map = Current.Maps.get(worldName.toLowerCase());
if (map != null)
{
Current.GameWorlds.add(world.getName());
GameStateData.Load(map, player, false);
}
}
}
setupSpout(pm);
getServer().getScheduler().scheduleAsyncRepeatingTask(this, processObjectives, 100, 50);
getServer().getScheduler().scheduleAsyncRepeatingTask(this, monitorEnvironment, 100, 50);
System.out.println(pdfFile.getName() + " version " + pdfFile.getVersion() + " is enabled.");
}
catch (Throwable e)
{
System.out.println("[" + pdfFile.getName() + "]" + " error starting: " + e.getMessage() + " Disabling plugin");
this.getServer().getPluginManager().disablePlugin(this);
}
}