Exemple #1
0
        public void OnInputfieldAddItem(ChatBoxAddInputFieldItemData msgData)
        {
            ResNode itemPrefab = LogicDataCenter.chatMessageManager.GetChatItemPrefabByObjType(msgData.objInfo.type);

            if (itemPrefab == null)
            {
                return;
            }

            GameObject itemObj = itemPrefab.InstanceMainRes();

            if (itemObj == null)
            {
                return;
            }

            IChatItem subItem = itemObj.GetComponent <IChatItem>();

            subItem.SetResNode(itemPrefab);

            if (subItem == null)
            {
                itemPrefab.DestroyInstanceRes(ref itemObj);
                return;
            }

            if (subItem.SetItemData(msgData.objInfo) == false)
            {
                itemPrefab.DestroyInstanceRes(ref itemObj);
                return;
            }

            if (msgData.bClearInputField)
            {
                inputField.ClearContent();
            }

            if (msgData.bActiveInputField)
            {
                inputField.ActivateInputField();
            }


            inputField.selectionFocusPosition = inputField.caretPosition;
            inputField.InsertItem(itemObj, subItem, -1);

            // 自动发送
            if (msgData.bAutoSend)
            {
                OnSendBtnClick();
            }
        }
Exemple #2
0
        public void OnInviteFrameClick()
        {
            // 临时邀请组队
            SChatMessageObjectInfo channelObj;

            channelObj.type    = ChatItemType.ObjType_Text;
            channelObj.subType = ChatItemSubType.ObjSubType_Text_JoinTeam;
            channelObj.text    = "加入我的队伍";
            channelObj.param   = new Dictionary <String, String>();
            channelObj.param.Add("color", LogicDataCenter.chatMessageManager.CreateColorParam(235, 80, 30));
            channelObj.param.Add("id", "" + EntityFactory.MainHeroView.Property.GetNumProp(ENTITY_PROPERTY.PROPERTY_ID));
            channelObj.param.Add("name", EntityFactory.MainHeroView.Property.CreatureName);
            ChatBoxAddInputFieldItemData uiData = new ChatBoxAddInputFieldItemData();

            uiData.msgID   = (int)WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM;
            uiData.objInfo = channelObj;
            UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM, uiData);
        }
Exemple #3
0
        /// <summary>
        /// 输入框设置私聊格式
        /// </summary>
        /// <param name="name"></param>
        public void addPrivateChatToInputField(string name)
        {
            if (string.IsNullOrEmpty(name))
            {
                return;
            }

            SChatMessageObjectInfo channelObj;

            channelObj.type    = ChatItemType.ObjType_Text;
            channelObj.subType = ChatItemSubType.ObjSubType_Text_Text;
            channelObj.text    = "/" + name + " ";
            channelObj.param   = new Dictionary <String, String>();
            ChatBoxAddInputFieldItemData uiData = new ChatBoxAddInputFieldItemData();

            uiData.msgID            = (int)WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM;
            uiData.objInfo          = channelObj;
            uiData.bClearInputField = true;
            UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM, uiData);
        }
Exemple #4
0
        public override void OnPointerClick(PointerEventData eventData)
        {
            base.OnPointerClick(eventData);

            SChatMessageObjectInfo emotionObj;

            emotionObj.type    = ChatItemType.ObjType_Image;
            emotionObj.subType = ChatItemSubType.ObjSubType_Image_Emotion;
            emotionObj.text    = "";
            emotionObj.param   = new Dictionary <String, String>();
            emotionObj.param.Add("id", emotionID.ToString());
            emotionObj.param.Add("type", ((int)emotionType).ToString());
            emotionObj.param.Add("serialid", serialID.ToString());
            emotionObj.param.Add("animkey", emotionKey);
            ChatBoxAddInputFieldItemData uiData = new ChatBoxAddInputFieldItemData();

            uiData.msgID             = (int)WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM;
            uiData.objInfo           = emotionObj;
            uiData.bActiveInputField = true;
            UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM, uiData);
        }
Exemple #5
0
        // 炫耀战绩到聊听框
        public void ShowWarResult(int nActorID, long nWarID, int nGlory, int nMultiKillMax, int nContinueKillMax)
        {
            if (nWarID == 0 || nActorID == 0)
            {
                Debug.LogError("nWarID=" + nWarID + ", nActorID =" + nActorID);
                return;
            }

            SChatMessageObjectInfo channelObj;

            channelObj.type    = ChatItemType.ObjType_Text;
            channelObj.subType = ChatItemSubType.ObjSubType_Text_ActorWarResult;
            channelObj.text    = GetWarResultItemName(nGlory, nMultiKillMax, nContinueKillMax);
            channelObj.param   = new Dictionary <String, String>();
            channelObj.param.Add("color", LogicDataCenter.chatMessageManager.CreateColorParam(235, 80, 30));
            channelObj.param.Add("id", "" + nActorID);
            channelObj.param.Add("war", "" + nWarID);
            ChatBoxAddInputFieldItemData uiData = new ChatBoxAddInputFieldItemData();

            uiData.msgID   = (int)WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM;
            uiData.objInfo = channelObj;
            UISystem.Instance.SendWndMessage(WndMsgID.WND_MSG_CHATBOX_INPUTFIELDADDITEM, uiData);
        }