public void CopyFrom(NodeMap otherMap) { foreach (var otherNode in otherMap.Nodes) { if (_nodeDictionary.ContainsKey(otherNode.Id)) { _nodeDictionary[otherNode.Id].CopyFrom(otherNode); } else { _nodeDictionary.Add(otherNode.Id, otherNode); } } if (_edges.Count == 0) { foreach (var otherEdge in otherMap.Edges) { _edges.Add(otherEdge); } } }
public GameState(Player player, NodeMap map) { Player = player; NodeMap = map; }