add 7.0.1 changelog, fix pump crash, fix pump entity spam, fix NPE in rare corner cases in RobotRegistry unloading

This commit is contained in:
asiekierka 2015-04-13 17:26:22 +02:00
parent 931bc0523f
commit a11a25456c
7 changed files with 24 additions and 3 deletions

View file

@ -1,10 +1,17 @@
Eveyrthing from BuildCraft 6.4.6, and: Eveyrthing from BuildCraft 6.4.6-6.4.11, and:
Additions: Additions:
* Modularization is actually released this time, after some bugfixes. * Modularization is actually released this time, after some bugfixes.
* Facade recipes are now available without Silicon (asie) * Pipe Plugs do not require an assembly table anymore (asie)
* Laser beams now need heat-up time to become blue (asie) * Laser beams now need heat-up time to become blue (asie)
* Comparator suppport for BuildCraft tanks (asie) * Comparator suppport for BuildCraft tanks (asie)
* Facade recipes are now available without Silicon (also as a config option) (asie)
* Zone planner Map Location import support (asie)
* New Load/Unload area for robots with a separate action (hea3ven)
* Massive improvements to robots, too many to list! (hea3ven)
* Robots now shutdown and fall, can be dropped to item with a wrench (hea3ven)
* Weighted item and fluid sorting in diamond pipes! (asie)
* Work on in-game config GUIs (asie)
Improvements: Improvements:
* [#2599] Stripes pipes don't move forward when using a non-item pipe (asie) * [#2599] Stripes pipes don't move forward when using a non-item pipe (asie)

View file

@ -190,6 +190,8 @@ public class BuildCraftFactory extends BuildCraftMod {
BuildCraftCore.mainConfigManager.get("general.miningDepth").setMinValue(2).setMaxValue(256); BuildCraftCore.mainConfigManager.get("general.miningDepth").setMinValue(2).setMaxValue(256);
BuildCraftCore.mainConfigManager.register("general.pumpDimensionControl", DefaultProps.PUMP_DIMENSION_LIST, plc, ConfigManager.RestartRequirement.NONE); BuildCraftCore.mainConfigManager.register("general.pumpDimensionControl", DefaultProps.PUMP_DIMENSION_LIST, plc, ConfigManager.RestartRequirement.NONE);
reloadConfig(ConfigManager.RestartRequirement.GAME);
miningWellBlock = (BlockMiningWell) CompatHooks.INSTANCE.getBlock(BlockMiningWell.class); miningWellBlock = (BlockMiningWell) CompatHooks.INSTANCE.getBlock(BlockMiningWell.class);
CoreProxy.proxy.registerBlock(miningWellBlock.setBlockName("miningWellBlock")); CoreProxy.proxy.registerBlock(miningWellBlock.setBlockName("miningWellBlock"));

View file

@ -418,6 +418,16 @@ public class TilePump extends TileBuildCraft implements IHasWork, IFluidHandler,
destroy(); destroy();
} }
public void onChunkUnload() {
super.onChunkUnload();
if (tube != null) {
// Remove the entity to stop it from piling up.
CoreProxy.proxy.removeEntity(tube);
tube = null;
}
}
@Override @Override
public void validate() { public void validate() {
super.validate(); super.validate();

View file

@ -268,7 +268,9 @@ public class RobotRegistry extends WorldSavedData implements IRobotRegistry {
station.robotTaking().setMainStation(null); station.robotTaking().setMainStation(null);
} }
} else if (station.robotIdTaking() != EntityRobotBase.NULL_ROBOT_ID) { } else if (station.robotIdTaking() != EntityRobotBase.NULL_ROBOT_ID) {
stationsTakenByRobot.get(station.robotIdTaking()).remove(index); if (stationsTakenByRobot.get(station.robotIdTaking()) != null) {
stationsTakenByRobot.get(station.robotIdTaking()).remove(index);
}
} }
stations.remove(index); stations.remove(index);