public PolluterAttrib(PolluterAttrib other) { title = other.title; economicAttrib = (EconomicAttrib)other.economicAttrib.Clone(); pollutionAttrib = (PollutionAttrib)other.pollutionAttrib.Clone(); vulnerabilityAttrib = (VulnerabilityAttrib)other.vulnerabilityAttrib.Clone(); placementAttrib = other.placementAttrib; visualAttrib = (VisualAttrib)other.visualAttrib.Clone(); }
public object Clone() { var clone = new PollutionAttrib { }; if (emissions != null) { clone.emissions = new Emission[emissions.Length]; for (int i = 0; i != clone.emissions.Length; ++i) { clone.emissions[i] = (Emission)emissions[i].Clone(); } } return(clone); }
public void SetBaseEmission(PollutionAttrib attrib) { var baseEmission = new PollutionMap(attrib.emissions); var baseEmissionComps = GetComponentsInChildren <BaseEmission>(); var validBaseEmissionComps = new List <BaseEmission>(); foreach (var comp in baseEmissionComps) { if (comp.gameObject.activeInHierarchy) { validBaseEmissionComps.Add(comp); } } var divided = Util.DivideMap(baseEmission, baseEmissionComps.Length); foreach (var comp in validBaseEmissionComps) { comp.SetLocalPollution(divided); } }