public static Graphic_LinkedTransmitterOverlay GetColoredVersion(Graphic_LinkedTransmitterOverlay graphic, Shader newShader, Color newColor, Color newColorTwo) { return(new Graphic_LinkedTransmitterOverlay(SubGraphic(graphic).GetColoredVersion(newShader, newColor, newColorTwo)) { data = graphic.data }); }
public static Graphic_Linked WrapLinked(Graphic subGraphic, LinkDrawerType linkDrawerType) { Graphic_Linked result; switch (linkDrawerType) { case LinkDrawerType.None: result = null; break; case LinkDrawerType.Basic: result = new Graphic_Linked(subGraphic); break; case LinkDrawerType.CornerFiller: result = new Graphic_LinkedCornerFiller(subGraphic); break; case LinkDrawerType.Transmitter: result = new Graphic_LinkedTransmitter(subGraphic); break; case LinkDrawerType.TransmitterOverlay: result = new Graphic_LinkedTransmitterOverlay(subGraphic); break; default: throw new ArgumentException(); } return(result); }
public static void DrawPowerGrid(SectionLayer layer, CompPower comp) { if (comp.TransmitsPowerNow) { //Graphic_LinkedTransmitterOverlay graphic = (Graphic_LinkedTransmitterOverlay)PowerOverlayMats.LinkedOverlayGraphic; //Color color = GetNetColor(comp); //SectionLayer l = layer; //Graphic_LinkedTransmitterOverlay colored = GetColoredVersion(graphic, graphic.Shader, color, color); //colored.Print(l, comp.parent); Graphic_LinkedTransmitterOverlay graphic = NewPowerOverlayMats.LinkedOverlayGraphic; graphic.Print(layer, comp.parent); } if (comp.parent.def.ConnectToPower) { PowerNetGraphics.PrintOverlayConnectorBaseFor(layer, comp.parent); } if (comp.connectParent != null) { PowerNetGraphics.PrintWirePieceConnecting(layer, comp.parent, comp.connectParent.parent, true); } }