コード例 #1
0
    void InitLabels()
    {
        LoggedInAs = InstantiateChild <LMS_GuiBaseLabel>(new LMS_GuiConfig()
        {
            Rect        = new Rect(0f, 68f, 500f, 134f),
            Text        = "",
            RenderStyle = new GUIStyle
            {
                fontSize  = 19,
                fontStyle = FontStyle.Bold,
                alignment = TextAnchor.MiddleCenter,
                normal    =
                {
                    textColor = Color.white
                }
            }
        }, 15);
        Msgs = new LMS_GuiBaseLabel[8];
        float ypos = 1f;

        for (int i = 0; i < Msgs.Length; i++)
        {
            LMS_GuiBaseLabel lab = InstantiateChild <LMS_GuiBaseLabel>(new LMS_GuiConfig()
            {
                Rect        = new Rect(30f, 60f + ypos * 50f, 500f, 134f),
                Text        = "",
                RenderStyle = new GUIStyle
                {
                    fontSize  = 14,
                    fontStyle = FontStyle.Bold,
                    alignment = TextAnchor.MiddleLeft
                }
            }, 15);
            lab.Constraints["viewtick"] = (int)ypos;
            lab.RegisterClientViewTick((view) =>
            {
                try
                {
                    List <LMS_Chat.ChatMsg> msg             = LMS_SessionServerPeer.Instance.Chat.Messages;
                    LMS_Chat.ChatMsg m                      = msg[msg.Count - lab.Constraints["viewtick"]];
                    lab.Config.RenderStyle.normal.textColor = LMS_SessionServerPeer.Instance.Chat[m.Type];
                    lab.Config.Text = LMS_GuiBaseLabelBoundaries.WrapText(LMS_Chat.FixedName(m.Prefix, m.User) + ' ' + m.Text, 16, 400f);
                }
                catch { lab.Config.Text = ""; }
            }, null);
            ypos++;
            InitLabelDefault(lab);
            lab.SetRenderMode(E_ColorFlags.FIXED);
            Msgs[i] = lab;
        }
        SendButtonLabel = InstantiateChild <LMS_GuiBaseLabel>(new LMS_GuiConfig()
        {
            Rect        = new Rect(30f, 530f, 431f, 150f),
            Text        = "Send Message",
            RenderStyle = new GUIStyle
            {
                fontSize  = 19,
                fontStyle = FontStyle.Bold,
                alignment = TextAnchor.MiddleCenter,
                normal    =
                {
                    textColor = Color.white
                }
            }
        }, 15);
        MsgTextFieldRenderer = InstantiateChild <LMS_GuiBaseLabel>(new LMS_GuiConfig()
        {
            Rect        = new Rect(30f, 495f, 431f, 150f),
            Text        = "",
            RenderStyle = new GUIStyle
            {
                fontSize  = 19,
                fontStyle = FontStyle.Bold,
                alignment = TextAnchor.MiddleCenter,
                normal    =
                {
                    textColor = Color.white
                }
            }
        }, 15);
        InitLabelDefault(LoggedInAs);
        InitLabelDefault(SendButtonLabel);
        InitLabelDefault(MsgTextFieldRenderer);
        LoggedInAs.RegisterClientViewTick((view) => { LoggedInAs.Config.SetText(LMS_SessionServerPeer.Instance.Peer == null ? "dank memes kid" : "Logged in as " + LMS_SessionServerPeer.Instance.Peer.user); }, null);
        MsgTextFieldRenderer.RegisterClientViewTick((view) => { MsgTextFieldRenderer.Config.Text = MsgTextField.TextToRender; }, null);
    }
コード例 #2
0
 public void SendChatMessage(LMS_Chat.ChatMsg msg)
 {
     Lobby.RPC("ChatMessage", LobbyPeer.lobby, JsonMapper.ToJson(msg));
 }