This commit is contained in:
bm01 2012-05-01 01:32:50 +02:00
parent ca1954ff80
commit 18c52a5e23
5 changed files with 75 additions and 82 deletions

View File

@ -115,15 +115,14 @@ public class mcMMO extends JavaPlugin {
if (Config.getInstance().getStatsTrackingEnabled()) { if (Config.getInstance().getStatsTrackingEnabled()) {
try { try {
Metrics metrics = new Metrics(this); Metrics metrics = new Metrics(this);
metrics.start(); metrics.start();
} catch (IOException e) { } catch (IOException e) {
System.out.println("Failed to submit stats."); System.out.println("Failed to submit stats.");
} }
} }
} }
/** /**
* Get profile of the player. * Get profile of the player.
* </br> * </br>
@ -164,22 +163,19 @@ public class mcMMO extends JavaPlugin {
* Things to be run when the plugin is disabled. * Things to be run when the plugin is disabled.
*/ */
public void onDisable() { public void onDisable() {
//Make sure to save player information if the server shuts down //Make sure to save player information if the server shuts down
for (PlayerProfile x : Users.getProfiles().values()) { for (PlayerProfile x : Users.getProfiles().values()) {
x.save(); x.save();
} }
this.getServer().getScheduler().cancelTasks(this); //This removes our tasks this.getServer().getScheduler().cancelTasks(this); //This removes our tasks
//Remove other tasks BEFORE starting the Backup, or we just cancel it straight away. //Remove other tasks BEFORE starting the Backup, or we just cancel it straight away.
try {
try { //Try the backup ZipLibrary.mcMMObackup();
ZipLibrary.mcMMObackup(); } catch (IOException e) {
} catch (IOException e) { p.getLogger().severe(e.toString());
p.getLogger().severe(e.toString()); }
}
System.out.println("mcMMO was disabled."); //How informative! System.out.println("mcMMO was disabled."); //How informative!
} }
@ -188,7 +184,6 @@ public class mcMMO extends JavaPlugin {
* Register the commands. * Register the commands.
*/ */
private void registerCommands() { private void registerCommands() {
//Register aliases with the aliasmap (used in the playercommandpreprocessevent to ugly alias them to actual commands) //Register aliases with the aliasmap (used in the playercommandpreprocessevent to ugly alias them to actual commands)
//Skills commands //Skills commands
aliasMap.put(LocaleLoader.getString("Acrobatics.SkillName").toLowerCase(), "acrobatics"); aliasMap.put(LocaleLoader.getString("Acrobatics.SkillName").toLowerCase(), "acrobatics");

View File

@ -121,6 +121,7 @@ public class BleedTimer implements Runnable {
* Add a LivingEntity to the bleedList if it is not in it. * Add a LivingEntity to the bleedList if it is not in it.
* *
* @param entity LivingEntity to add * @param entity LivingEntity to add
* @param ticks Number of bleeding ticks
*/ */
public static void add(LivingEntity entity, int ticks) { public static void add(LivingEntity entity, int ticks) {
int newTicks = ticks; int newTicks = ticks;

View File

@ -236,6 +236,7 @@ public class BlastMining {
/** /**
* Detonate TNT for Blast Mining * Detonate TNT for Blast Mining
* *
* @param event The PlayerInteractEvent
* @param player Player detonating the TNT * @param player Player detonating the TNT
* @param plugin mcMMO plugin instance * @param plugin mcMMO plugin instance
*/ */

View File

@ -350,7 +350,6 @@ public class Combat {
break; break;
} }
switch (type) { switch (type) {
case SWORDS: case SWORDS:
if (entity instanceof Player) { if (entity instanceof Player) {

View File

@ -16,52 +16,50 @@ import java.util.zip.ZipOutputStream;
public class ZipLibrary { public class ZipLibrary {
private static String BackupDirectory = mcMMO.mainDirectory + "backup"; private static String BackupDirectory = mcMMO.mainDirectory + "backup";
private static File BackupDir = new File(BackupDirectory); private static File BackupDir = new File(BackupDirectory);
private static File FlatFileDirectory = new File(mcMMO.flatFileDirectory); private static File FlatFileDirectory = new File(mcMMO.flatFileDirectory);
private static File UsersFile = new File(mcMMO.usersFile); private static File UsersFile = new File(mcMMO.usersFile);
private static File ConfigFile = new File(mcMMO.mainDirectory + "config.yml"); private static File ConfigFile = new File(mcMMO.mainDirectory + "config.yml");
private static File Leaderboards = new File(mcMMO.leaderboardDirectory); private static File Leaderboards = new File(mcMMO.leaderboardDirectory);
public static void mcMMObackup() throws IOException {
if (BackupDir.mkdir()) {
try {
mcMMO.p.getLogger().info("Created Backup Directory.");
} catch (Exception e) {
mcMMO.p.getLogger().severe(e.toString());
}
}
public static void mcMMObackup() throws IOException { //Generate the proper date for the backup filename
try { Date date = new Date();
if (BackupDir.mkdir()) { mcMMO.p.getLogger().info("Created Backup Directory."); } SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss");
} catch (Exception h) { File fileZip = new File(BackupDirectory + File.separator + dateFormat.format(date) + ".zip");
mcMMO.p.getLogger().severe(h.toString());
}
//Generate the proper date for the backup filename //Create the Source List, and add directories/etc to the file.
Date date = new Date(); List<File> sources = new ArrayList<File>();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH-mm-ss"); sources.add(FlatFileDirectory);
File fileZip = new File(BackupDirectory + File.separator + dateFormat.format(date) + ".zip"); sources.add(UsersFile);
sources.add(ConfigFile);
sources.add(Leaderboards);
//Actually do something
System.out.println("Backing up your mcMMO Configuration... ");
//Create the Source List, and add directories/etc to the file. packZip(fileZip, sources);
List<File> sources = new ArrayList<File>(); }
sources.add(FlatFileDirectory);
sources.add(UsersFile);
sources.add(ConfigFile);
sources.add(Leaderboards);
private static void packZip(File output, List<File> sources) throws IOException
//Actually do something
System.out.println("Backing up your mcMMO Configuration... ");
packZip(fileZip, sources);
}
private static void packZip(File output, List<File> sources) throws IOException
{ {
ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(output)); ZipOutputStream zipOut = new ZipOutputStream(new FileOutputStream(output));
zipOut.setLevel(Deflater.DEFAULT_COMPRESSION); zipOut.setLevel(Deflater.DEFAULT_COMPRESSION);
for (File source : sources) { for (File source : sources) {
if (source.isDirectory()) { if (source.isDirectory()) {
zipDir(zipOut, "", source); zipDir(zipOut, "", source);
} else { }
else {
zipFile(zipOut, "", source); zipFile(zipOut, "", source);
} }
} }
@ -74,7 +72,8 @@ public class ZipLibrary {
private static String buildPath(String path, String file) { private static String buildPath(String path, String file) {
if (path == null || path.isEmpty()) { if (path == null || path.isEmpty()) {
return file; return file;
} else { }
else {
return path + "/" + file; return path + "/" + file;
} }
} }
@ -91,11 +90,11 @@ public class ZipLibrary {
for (File source : files) { for (File source : files) {
if (source.isDirectory()) { if (source.isDirectory()) {
zipDir(zos, path, source); zipDir(zos, path, source);
} else { }
else {
zipFile(zos, path, source); zipFile(zos, path, source);
} }
} }
} }
private static void zipFile(ZipOutputStream zos, String path, File file) throws IOException { private static void zipFile(ZipOutputStream zos, String path, File file) throws IOException {
@ -107,9 +106,9 @@ public class ZipLibrary {
zos.putNextEntry(new ZipEntry(buildPath(path, file.getName()))); zos.putNextEntry(new ZipEntry(buildPath(path, file.getName())));
FileInputStream fis = new FileInputStream(file); FileInputStream fis = new FileInputStream(file);
byte[] buffer = new byte[4092]; byte[] buffer = new byte[4092];
int byteCount = 0; int byteCount = 0;
while ((byteCount = fis.read(buffer)) != -1) { while ((byteCount = fis.read(buffer)) != -1) {
zos.write(buffer, 0, byteCount); zos.write(buffer, 0, byteCount);
} }
@ -117,6 +116,4 @@ public class ZipLibrary {
fis.close(); fis.close();
zos.closeEntry(); zos.closeEntry();
} }
} }