Merge pull request #2396 from hea3ven/6.3.x
fix docking stations staying linked when changing a robot's main link
This commit is contained in:
commit
3e5a2ae062
2 changed files with 3 additions and 5 deletions
|
@ -137,10 +137,7 @@ public class DockingStation implements IDockingStation {
|
|||
|
||||
public void release(EntityRobotBase robot) {
|
||||
if (robotTaking == robot && !linkIsMain) {
|
||||
linkIsMain = false;
|
||||
robotTaking = null;
|
||||
robotTakingId = EntityRobotBase.NULL_ROBOT_ID;
|
||||
getPipe().scheduleRenderUpdate();
|
||||
unsafeRelease(robot);
|
||||
RobotRegistry.getRegistry(world).markDirty();
|
||||
RobotRegistry.getRegistry(world).release(this, robot.getRobotId());
|
||||
}
|
||||
|
@ -152,6 +149,7 @@ public class DockingStation implements IDockingStation {
|
|||
*/
|
||||
public void unsafeRelease(EntityRobotBase robot) {
|
||||
if (robotTaking == robot) {
|
||||
linkIsMain = false;
|
||||
robotTaking = null;
|
||||
robotTakingId = EntityRobotBase.NULL_ROBOT_ID;
|
||||
getPipe().scheduleRenderUpdate();
|
||||
|
|
|
@ -582,7 +582,7 @@ public class EntityRobot extends EntityRobotBase implements
|
|||
DockingStation station = (DockingStation) iStation;
|
||||
|
||||
if (linkedDockingStation != null && linkedDockingStation != station) {
|
||||
((DockingStation) linkedDockingStation).release(this);
|
||||
((DockingStation) linkedDockingStation).unsafeRelease(this);
|
||||
}
|
||||
|
||||
linkedDockingStation = station;
|
||||
|
|
Loading…
Reference in a new issue