/// <summary> /// Syncs text to all connected displays. /// </summary> public void SyncText() { foreach (IMyTextPanel Display in ConnectedDisplays) { Display.WriteText(Text, false); } }
public Program() { Runtime.UpdateFrequency = UpdateFrequency.Update100; GridTerminalSystem.GetBlocksOfType <IMyTerminalBlock>(null, CollectParts); StatusBuilder.Clear(); var AOK = true; if (SmallHinge == null) { AOK = false; StatusBuilder.AppendLine("SMALL HINGE NOT FOUND!"); } if (LargeHinge == null) { AOK = false; StatusBuilder.AppendLine("LARGE HINGE NOT FOUND!"); } if (Sweeper == null) { AOK = false; StatusBuilder.AppendLine("SWEEPER NOT FOUND!"); } if (BaseProjector == null) { AOK = false; StatusBuilder.AppendLine("BASE PROJECTOR NOT FOUND!"); } if (TopProjector == null) { AOK = false; StatusBuilder.AppendLine("TOP PROJECTOR NOT FOUND!"); } if (TopMerge == null) { AOK = false; StatusBuilder.AppendLine("TOP MERGE NOT FOUND!"); } if (BaseMerge == null) { AOK = false; StatusBuilder.AppendLine("BASE MERGE NOT FOUND!"); } if (Welders.Count < 5) { AOK = false; StatusBuilder.AppendLine("NOT ENOUGH WELDERS!"); } if (Display != null) { Display.ContentType = ContentType.TEXT_AND_IMAGE; Display.WriteText(StatusBuilder.ToString()); } if (!AOK) { Echo(StatusBuilder.ToString()); Runtime.UpdateFrequency = UpdateFrequency.None; } else { var baseOtherMerge = GridTerminalHelper.OtherMergeBlock(BaseMerge); var topOtherMerge = GridTerminalHelper.OtherMergeBlock(TopMerge); if (topOtherMerge != null && baseOtherMerge == null) { State = 4; } } ReleaseListener = IGC.RegisterBroadcastListener("[PDCFORGE]"); ReleaseListener.SetMessageCallback("release"); }