public void SetUp() { if (HasRed && _redNetwork == null) { var network = new WireNetwork(); FloodFill( Location, wire => wire._hasRed, wire => wire._redNetwork = network ); _networks.Add(network); } if (HasGreen && _greenNetwork == null) { var network = new WireNetwork(); FloodFill( Location, wire => wire._hasGreen, wire => wire._greenNetwork = network ); _networks.Add(network); } }
private void Start() { _redNetwork = null; _greenNetwork = null; UpdateAllTextures(); }
/// <summary> /// Attempts to send the <paramref name="flux"/> to a connected <seealso cref="WireNetwork"/>. The flux is split among all connected networks. /// </summary> /// <param name="flux"></param> public void ExportFlux(WireNetwork network) { TerraFlux flux = new TerraFlux(Math.Min((float)StoredFlux, (float)ExportRate)); //Ran out of TF if ((float)flux <= 0) { return; } TerraFlux send = flux / NetworkCollection.GetWireNetworksConnectedTo(this).Count; network.ImportFlux(this, ref send); if ((float)send > 0) { ImportFlux(ref send); } }
public void TearDown() { _redNetwork = null; _greenNetwork = null; }