public static void ResistanceInput(ResistanceWrap Resistance, ElectricalOIinheritance SourceInstance, IntrinsicElectronicData ComingFrom, IntrinsicElectronicData Thiswire) { if (Thiswire.Data.SupplyDependent.TryGetValue(SourceInstance, out ElectronicSupplyData supplyDep)) { if (!supplyDep.ResistanceComingFrom.TryGetValue(ComingFrom, out VIRResistances resComeFrom)) { resComeFrom = supplyDep.ResistanceComingFrom[ComingFrom] = ElectricalPool.GetVIRResistances(); } resComeFrom.AddResistance(Resistance); } Thiswire.ResistancyOutput(Resistance, SourceInstance); }
public VIRResistances Multiply(float Multiplier) { var newVIRResistances = ElectricalPool.GetVIRResistances(); foreach (var ResistanceS in ResistanceSources) { var newResistanceWrap = ElectricalPool.GetResistanceWrap(); newResistanceWrap.SetUp(ResistanceS); newVIRResistances.AddResistance(newResistanceWrap); } foreach (var ResistanceS in newVIRResistances.ResistanceSources) { ResistanceS.Multiply(Multiplier); } return(newVIRResistances); }
public static void ResistancyOutput(ResistanceWrap Resistance, ElectricalOIinheritance SourceInstance, IntrinsicElectronicData Thiswire) { if (Thiswire.Data.SupplyDependent.TryGetValue(SourceInstance, out ElectronicSupplyData supplyDep)) { foreach (var JumpTo in supplyDep.Upstream) { if (!supplyDep.ResistanceGoingTo.TryGetValue(JumpTo, out VIRResistances resGoTo)) { resGoTo = supplyDep.ResistanceGoingTo[JumpTo] = ElectricalPool.GetVIRResistances(); } resGoTo.AddResistance(Resistance); JumpTo.ResistanceInput(Resistance, SourceInstance, Thiswire); } } }