loading fixed
This commit is contained in:
@@ -87,6 +87,8 @@ public class DDSaveHandler
|
|||||||
public static boolean unpackDimData(HashMap<Integer,PackedDimData> packedDims)
|
public static boolean unpackDimData(HashMap<Integer,PackedDimData> packedDims)
|
||||||
{
|
{
|
||||||
ArrayList<PackedDimData> roots = new ArrayList<PackedDimData>();
|
ArrayList<PackedDimData> roots = new ArrayList<PackedDimData>();
|
||||||
|
ArrayList<Integer> children = new ArrayList<Integer>();
|
||||||
|
ArrayList<Integer> tempChildren = new ArrayList<Integer>();
|
||||||
|
|
||||||
//Load roots
|
//Load roots
|
||||||
for(PackedDimData packedDim : packedDims.values())
|
for(PackedDimData packedDim : packedDims.values())
|
||||||
@@ -100,18 +102,22 @@ public class DDSaveHandler
|
|||||||
//load the children for each root
|
//load the children for each root
|
||||||
for(PackedDimData packedDim : roots)
|
for(PackedDimData packedDim : roots)
|
||||||
{
|
{
|
||||||
registerChildren(packedDim, packedDims);
|
children.addAll(packedDim.ChildIDs);
|
||||||
}
|
}
|
||||||
return true;
|
while(!children.isEmpty())
|
||||||
}
|
|
||||||
|
|
||||||
private static void registerChildren(PackedDimData data, HashMap<Integer, PackedDimData> packedDims)
|
|
||||||
{
|
|
||||||
PocketManager.registerPackedDimData(data);
|
|
||||||
for(Integer child : data.ChildIDs)
|
|
||||||
{
|
{
|
||||||
registerChildren(packedDims.get(child),packedDims);
|
for(Integer child: children)
|
||||||
|
{
|
||||||
|
PackedDimData data = packedDims.get(child);
|
||||||
|
PocketManager.registerPackedDimData(data);
|
||||||
|
tempChildren.addAll(data.ChildIDs);
|
||||||
|
}
|
||||||
|
children.clear();
|
||||||
|
children.addAll(tempChildren);
|
||||||
|
tempChildren.clear();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return true;
|
||||||
}
|
}
|
||||||
|
|
||||||
public static boolean unpackLinkData(List<PackedLinkData> linksToUnpack)
|
public static boolean unpackLinkData(List<PackedLinkData> linksToUnpack)
|
||||||
|
|||||||
Reference in New Issue
Block a user