Exemple #1
0
 /// <summary>
 /// Gets the children transforms of this specific part
 /// </summary>
 public static List<Renderer> GetPartRenderers(this Part part, RealChuteModule module)
 {
     List<Renderer> toRemove = new List<Renderer>(part.children.Select(p => p.transform).SelectMany(t => t.GetComponentsInChildren<Renderer>()));
     toRemove.AddRange(module.parachutes.Select(p => p.parachute).SelectMany(t => t.GetComponents<Renderer>()));
     List<Renderer> renderers = part.transform.GetComponentsInChildren<Renderer>().Except(toRemove).ToList();
     return renderers;
 }
Exemple #2
0
 /// <summary>
 /// Gets the children transforms of this specific part
 /// </summary>
 public static List<Renderer> GetPartRenderers(this Part part, RealChuteModule module)
 {
     List<Renderer> renderers = new List<Renderer>(part.transform.GetComponentsInChildren<Renderer>());
     if (part.children.Count > 0)
     {
         foreach (Part p in part.children)
         {
             p.transform.GetComponentsInChildren<Renderer>().Where(r => renderers.Contains(r)).ToList().ForEach(r => renderers.Remove(r));
         }
     }
     module.main.parachute.GetComponents<Renderer>().ToList().ForEach(r => renderers.Remove(r));
     if (module.secondaryChute) { module.secondary.parachute.GetComponents<Renderer>().ToList().ForEach(r => renderers.Remove(r)); }
     return renderers;
 }
Exemple #3
0
 /// <summary>
 /// Gets the children transforms of this specific part
 /// </summary>
 public static IEnumerable<Renderer> GetPartRenderers(this Part part, RealChuteModule module)
 {
     List<Renderer> toRemove = new List<Renderer>(part.children.SelectMany(p => p.transform.GetComponentsInChildren<Renderer>()));
     toRemove.AddRange(module.parachutes.SelectMany(p => p.parachute.GetComponents<Renderer>()));
     return part.transform.GetComponentsInChildren<Renderer>().Except(toRemove);
 }