void LoadSaveFiles() { Func <List <Boat>, string, List <Boat> > loadBoats = (boats, port) => boats.Where(boat => boat.IsInPort == port).ToList(); try { List <Boat> boatsFromFile = SaveFileManager.Load("boats.txt"); leftPort.Boats = loadBoats(boatsFromFile, leftPort.PortName); leftPort.RemovedBoats = loadBoats(boatsFromFile, leftPort.PortName + "-removed"); rightPort.Boats = loadBoats(boatsFromFile, rightPort.PortName); rightPort.RemovedBoats = loadBoats(boatsFromFile, rightPort.PortName + "-removed"); Simulate.waitingBoats = boatsFromFile.Where(boat => boat.IsInPort == "?").ToList(); //Simulate.waitingBoats = SaveFileManager.Load("waiting.txt"); //leftPort.Boats = SaveFileManager.Load("left.txt"); //leftPort.RemovedBoats = SaveFileManager.Load("left_removed.txt"); //rightPort.Boats = SaveFileManager.Load("right.txt"); //rightPort.RemovedBoats = SaveFileManager.Load("right_removed.txt"); waitingBoats = Simulate.waitingBoats; if (leftPort.Boats.Any()) { leftPort.UpdateSpots(); } if (rightPort.Boats.Any()) { rightPort.UpdateSpots(); } SaveFileManager.LoadStatistics("stats.txt"); } catch (Exception e) { MessageBox.Show(e.ToString()); } }