Beispiel #1
0
    public void TryRefreshConnectors()
    {
        List <Tuple <MachineConnector, MachineConnector> > lostConnections = new List <Tuple <MachineConnector, MachineConnector> >();

        foreach (MachineConnector m in _outputs)
        {
            if (m._conveyor != null)
            {
                lostConnections.Add(new Tuple <MachineConnector, MachineConnector>(m._conveyor._output, m._conveyor._input));
                MachineManager.DisconnectMachines(m._conveyor);
            }
        }

        foreach (MachineConnector m in _inputs)
        {
            if (m._conveyor != null)
            {
                lostConnections.Add(new Tuple <MachineConnector, MachineConnector>(m._conveyor._output, m._conveyor._input));
                MachineManager.DisconnectMachines(m._conveyor);
            }
        }

        foreach (Tuple <MachineConnector, MachineConnector> c in lostConnections)
        {
            MachineManager.ConnectMachines(c.Item1, c.Item2);
        }

        MachineManager.UpdateRecipes();
    }