Fixed an issue with the save helper

This commit is contained in:
DarkGuardsman 2013-11-06 17:11:39 -05:00
parent 06c88806dd
commit fd6c5d5990
3 changed files with 16 additions and 4 deletions

View file

@ -23,6 +23,7 @@ import cpw.mods.fml.relauncher.Side;
import dark.core.common.ExternalModHandler; import dark.core.common.ExternalModHandler;
import dark.core.prefab.helpers.FluidHelper; import dark.core.prefab.helpers.FluidHelper;
import dark.core.registration.ModObjectRegistry; import dark.core.registration.ModObjectRegistry;
import dark.core.save.SaveManager;
public abstract class ModPrefab public abstract class ModPrefab
{ {
@ -94,6 +95,7 @@ public abstract class ModPrefab
Modstats.instance().getReporter().registerMod(this); Modstats.instance().getReporter().registerMod(this);
MinecraftForge.EVENT_BUS.register(this); MinecraftForge.EVENT_BUS.register(this);
MinecraftForge.EVENT_BUS.register(new FluidHelper()); MinecraftForge.EVENT_BUS.register(new FluidHelper());
MinecraftForge.EVENT_BUS.register(SaveManager.instance());
UniversalElectricity.initiate(); UniversalElectricity.initiate();
Compatibility.initiate(); Compatibility.initiate();
} }

View file

@ -52,7 +52,7 @@ public class NBTFileHelper
{ {
try try
{ {
File tempFile = new File(file.getAbsoluteFile(), file.getName() + ".tmp"); File tempFile = new File(file.getParent(), file.getName() + ".tmp");
CompressedStreamTools.writeCompressed(data, new FileOutputStream(tempFile)); CompressedStreamTools.writeCompressed(data, new FileOutputStream(tempFile));
@ -68,7 +68,7 @@ public class NBTFileHelper
} }
catch (Exception e) catch (Exception e)
{ {
System.out.println("Failed to save " + file.getName() + ".dat!"); System.out.println("Failed to save " + file.getName());
e.printStackTrace(); e.printStackTrace();
} }
} }
@ -82,7 +82,7 @@ public class NBTFileHelper
* @return true if everything goes well */ * @return true if everything goes well */
public static boolean saveNBTFile(String filename, NBTTagCompound data) public static boolean saveNBTFile(String filename, NBTTagCompound data)
{ {
return saveNBTFile(getWorldSaveDirectory(MinecraftServer.getServer().getFolderName()), filename, data); return saveNBTFile(getWorldSaveDirectory(MinecraftServer.getServer().getFolderName()), filename + ".dat", data);
} }
/** Reads NBT data from the world folder. /** Reads NBT data from the world folder.

View file

@ -19,6 +19,16 @@ public class SaveManager
private static HashMap<Class<?>, String> classToIDMap = new HashMap<Class<?>, String>(); private static HashMap<Class<?>, String> classToIDMap = new HashMap<Class<?>, String>();
private static List<Object> saveList = new ArrayList<Object>(); private static List<Object> saveList = new ArrayList<Object>();
private static List<Object> objects = new ArrayList<Object>(); private static List<Object> objects = new ArrayList<Object>();
private static SaveManager instance;
public static SaveManager instance()
{
if(instance == null)
{
instance = new SaveManager();
}
return instance;
}
/** Called when the object wants to be save only on the next save call. Will be removed from the /** Called when the object wants to be save only on the next save call. Will be removed from the
* save manager after */ * save manager after */