public MyTextPanel()
        {
            m_publicDescription = new StringBuilder();
            m_textBox           = null;
            m_publicTitle       = new StringBuilder();
            m_isOpen            = false;

            m_privateDescription = new StringBuilder();
            m_privateTitle       = new StringBuilder();

            Render = new MyRenderComponentTextPanel();
            m_definitions.Clear();
            foreach (var textureDefinition in MyDefinitionManager.Static.GetLCDTexturesDefinitions())
            {
                m_definitions.Add(textureDefinition);
            }

            m_backgroundColor.Value = Color.Black;
            m_fontColor.Value       = Color.White;
            m_changeInterval.Value  = 0;
            m_fontSize.Value        = 1.0f;

            m_backgroundColor.ValueChanged += m_backgroundColor_ValueChanged;
            m_fontColor.ValueChanged       += m_fontColor_ValueChanged;
            m_showFlag.ValueChanged        += m_showFlag_ValueChanged;
            m_changeInterval.ValueChanged  += m_changeInterval_ValueChanged;
            m_fontSize.ValueChanged        += m_fontSize_ValueChanged;
        }
Beispiel #2
0
 private void CreateTextBox(bool isEditable, StringBuilder description, bool isPublic)
 {
     m_textBox = new MyGuiScreenTextPanel(missionTitle: isPublic ? m_publicTitle.ToString() : m_privateTitle.ToString(),
                                          currentObjectivePrefix: "",
                                          currentObjective: "",
                                          description: description.ToString(),
                                          editable: isEditable,
                                          resultCallback: OnClosedTextBox);
 }
 private void CreateTextBox(bool isEditable, string description)
 {
     m_textBox = new MyGuiScreenTextPanel(CustomName.ToString(),
                                          currentObjectivePrefix: "",
                                          currentObjective: MyTexts.GetString(MySpaceTexts.Terminal_CustomData),
                                          description: description,
                                          editable: isEditable,
                                          resultCallback: OnClosedTextBox);
 }
Beispiel #4
0
        public override void UpdateAfterSimulation()
        {
            base.UpdateAfterSimulation();
            if (IsBeingHacked)
            {
                PrivateDescription.Clear();
                SendChangeDescriptionMessage(PrivateDescription, false);
            }
            ResourceSink.Update();
            if (IsFunctional && IsWorking)
            {
                if (ShowTextOnScreen && IsInRange() == false)
                {
                    if (!m_isOutofRange)
                    {
                        m_isOutofRange = true;
                        ReleaseRenderTexture();
                    }
                    return;
                }

                if (ShowTextOnScreen && (NeedsToDrawText() || m_isOutofRange || m_forceUpdateText))
                {
                    m_descriptionChanged     = false;
                    m_forceUpdateText        = false;
                    m_fontColorChanged       = false;
                    m_fontSizeChanged        = false;
                    m_backgroundColorChanged = false;
                    Render.RenderTextToTexture(EntityId, ShowTextFlag == ShowTextOnScreenFlag.PUBLIC ? m_publicDescription.ToString() : m_privateDescription.ToString(), FontSize * BlockDefinition.TextureResolution / DEFAULT_RESOLUTION, FontColor, BackgroundColor, BlockDefinition.TextureResolution, BlockDefinition.TextureAspectRadio);
                    FailedToRenderTexture = false;
                }

                m_isOutofRange = false;

                if (ShowTextOnScreen == false)
                {
                    UpdateTexture();
                }
            }
            else if (IsOpen)
            {
                SendChangeOpenMessage(false);
                if (m_textBox != null)
                {
                    m_textBox.CloseScreen();
                    m_textBox = null;
                }
                MyScreenManager.CloseScreen(typeof(MyGuiScreenTerminal));
            }
        }
Beispiel #5
0
        public MyTextPanel()
        {
            m_publicDescription = new StringBuilder();
            m_textBox           = null;
            m_publicTitle       = new StringBuilder();
            m_isOpen            = false;

            m_privateDescription = new StringBuilder();
            m_privateTitle       = new StringBuilder();

            Render = new MyRenderComponentTextPanel();
            m_definitions.Clear();
            foreach (var textureDefinition in MyDefinitionManager.Static.GetLCDTexturesDefinitions())
            {
                m_definitions.Add(textureDefinition);
            }
        }
Beispiel #6
0
        public MyTextPanel()
        {
#if XB1 // XB1_SYNC_NOREFLECTION
            m_backgroundColor = SyncType.CreateAndAddProp <Color>();
            m_fontColor       = SyncType.CreateAndAddProp <Color>();
            m_accessFlag      = SyncType.CreateAndAddProp <TextPanelAccessFlag>();
            m_showFlag        = SyncType.CreateAndAddProp <ShowTextOnScreenFlag>();
            m_changeInterval  = SyncType.CreateAndAddProp <float>();
            m_fontSize        = SyncType.CreateAndAddProp <float>();
#endif // XB1
            CreateTerminalControls();

            m_publicDescription = new StringBuilder();
            m_textBox           = null;
            m_publicTitle       = new StringBuilder();
            m_isOpen            = false;

            m_privateDescription = new StringBuilder();
            m_privateTitle       = new StringBuilder();

            Render = new MyRenderComponentTextPanel(this);
            m_definitions.Clear();
            foreach (var textureDefinition in MyDefinitionManager.Static.GetLCDTexturesDefinitions())
            {
                m_definitions.Add(textureDefinition);
            }

            m_backgroundColor.Value = Color.Black;
            m_fontColor.Value       = Color.White;
            m_changeInterval.Value  = 0;
            m_fontSize.Value        = 1.0f;
            m_font.Value            = "Debug";

            m_backgroundColor.ValueChanged += m_backgroundColor_ValueChanged;
            m_font.ValueChanged            += m_font_ValueChanged;
            m_fontColor.ValueChanged       += m_fontColor_ValueChanged;
            m_showFlag.ValueChanged        += m_showFlag_ValueChanged;
            m_changeInterval.ValueChanged  += m_changeInterval_ValueChanged;
            m_fontSize.ValueChanged        += m_fontSize_ValueChanged;
        }