A quick fix
This commit is contained in:
parent
9566e25ba6
commit
76d2997a6b
4 changed files with 2 additions and 71 deletions
|
@ -61,7 +61,6 @@ import mekanism.common.tile.TileEntityElectricBlock;
|
|||
import mekanism.common.tile.TileEntityEnergizedSmelter;
|
||||
import mekanism.common.tile.TileEntitySalinationBlock;
|
||||
import mekanism.common.tile.TileEntitySalinationValve;
|
||||
import mekanism.common.transporter.PathfinderCache;
|
||||
import mekanism.common.transporter.TransporterManager;
|
||||
import mekanism.common.util.MekanismUtils;
|
||||
import mekanism.common.util.MekanismUtils.ResourceType;
|
||||
|
@ -980,7 +979,6 @@ public class Mekanism
|
|||
//Reset consistent managers
|
||||
MultiblockManager.reset();
|
||||
TransporterManager.reset();
|
||||
PathfinderCache.reset();
|
||||
}
|
||||
|
||||
@EventHandler
|
||||
|
|
|
@ -759,7 +759,7 @@ public class PartLogisticalTransporter extends PartSidedPipe implements ILogisti
|
|||
super.onRemoved();
|
||||
|
||||
if(!world().isRemote)
|
||||
{
|
||||
{
|
||||
for(TransporterStack stack : transit)
|
||||
{
|
||||
TransporterUtils.drop(this, stack);
|
||||
|
|
|
@ -47,7 +47,6 @@ import codechicken.multipart.NormalOcclusionTest;
|
|||
import codechicken.multipart.PartMap;
|
||||
import codechicken.multipart.TMultiPart;
|
||||
import codechicken.multipart.TSlottedPart;
|
||||
|
||||
import cpw.mods.fml.common.ModAPIManager;
|
||||
import cpw.mods.fml.relauncher.Side;
|
||||
import cpw.mods.fml.relauncher.SideOnly;
|
||||
|
@ -629,7 +628,7 @@ public abstract class PartSidedPipe extends TMultiPart implements TSlottedPart,
|
|||
@Override
|
||||
public boolean onRightClick(EntityPlayer player, int side)
|
||||
{
|
||||
if(!world().isRemote)
|
||||
if(!world().isRemote && !(this instanceof PartLogisticalTransporter))
|
||||
{
|
||||
redstoneReactive ^= true;
|
||||
refreshConnections();
|
||||
|
|
|
@ -1,66 +0,0 @@
|
|||
package mekanism.common.transporter;
|
||||
|
||||
import java.util.HashMap;
|
||||
import java.util.HashSet;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
import mekanism.api.Coord4D;
|
||||
|
||||
public class PathfinderCache
|
||||
{
|
||||
public static Map<PathData, List<Coord4D>> cachedPaths = new HashMap<PathData, List<Coord4D>>();
|
||||
|
||||
public static void onChanged(Coord4D location)
|
||||
{
|
||||
Set<PathData> toKill = new HashSet<PathData>();
|
||||
|
||||
for(Map.Entry<PathData, List<Coord4D>> entry : cachedPaths.entrySet())
|
||||
{
|
||||
if(entry.getValue().contains(entry))
|
||||
{
|
||||
toKill.add(entry.getKey());
|
||||
}
|
||||
}
|
||||
|
||||
for(PathData path : toKill)
|
||||
{
|
||||
cachedPaths.remove(path);
|
||||
}
|
||||
}
|
||||
|
||||
public static void reset()
|
||||
{
|
||||
cachedPaths.clear();
|
||||
}
|
||||
|
||||
public static class PathData
|
||||
{
|
||||
public Coord4D start;
|
||||
public Coord4D end;
|
||||
|
||||
public PathData(Coord4D s, Coord4D e)
|
||||
{
|
||||
start = s;
|
||||
end = e;
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean equals(Object obj)
|
||||
{
|
||||
return obj instanceof PathData &&
|
||||
((PathData)obj).start.equals(start) &&
|
||||
((PathData)obj).end.equals(end);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int hashCode()
|
||||
{
|
||||
int code = 1;
|
||||
code = 31 * code + start.hashCode();
|
||||
code = 31 * code + end.hashCode();
|
||||
return code;
|
||||
}
|
||||
}
|
||||
}
|
Loading…
Reference in a new issue