public TronicSequence(N8Tronic Initial, NodeType InitialOut = NodeType.FlowOutA) { data = new List<DataBlock>(); tronics = new N8BlockFactory(); CurrentTronic = (FlowTronic)Initial; CurrentOut = Initial.GetNode(InitialOut); sequence = new List<FlowTronic>(); Branches = new Stack<Tuple<FlowTronic, Node>>(); }
public virtual void RemoveWire(N8Tronic other, NodeType myNode, NodeType otherNode) { Wire temp = new Wire(this.GetNode(myNode), other.GetNode(otherNode)); this.WiredTo.Remove(temp); other.WiredTo.Remove(temp); }
//copy constructor, doesn't copy wiring. public N8Tronic(N8Tronic source, int ID) : base(source, ID) { SetNodes(); this.data = source.data; }
public void RemoveAllWires(N8Tronic other) { WiredTo.RemoveAll((wire) => wire.Left.Owner == other || wire.Right.Owner == other); other.WiredTo.RemoveAll((wire) => wire.Left.Owner == this || wire.Right.Owner == this); }