예제 #1
0
 public static PlayerChatUIMgr getInstance()
 {
     if (instacne == null)
     {
         instacne = new PlayerChatUIMgr();
     }
     return(instacne);
 }
예제 #2
0
        public static PlayerChatUIMgr getInstance()
        {
            bool flag = PlayerChatUIMgr.instacne == null;

            if (flag)
            {
                PlayerChatUIMgr.instacne = new PlayerChatUIMgr();
            }
            return(PlayerChatUIMgr.instacne);
        }
예제 #3
0
        private void getPublish(Variant data)
        {
            debug.Log("聊天所有信息" + data.dump());
            bool flag = data.ContainsKey("cid");

            if (flag)
            {
                uint @uint = data["cid"]._uint;
                bool flag2 = BaseProxy <FriendProxy> .getInstance().BlackDataList.ContainsKey(@uint);

                if (flag2)
                {
                    return;
                }
            }
            bool flag3 = data.ContainsKey("res");

            if (flag3)
            {
                int  num   = data["res"];
                bool flag4 = num < 0;
                if (flag4)
                {
                    Globle.err_output(num);
                }
                else
                {
                    bool flag5 = num == 1;
                    if (flag5)
                    {
                        a3_chatroom._instance.meSays(false);
                    }
                }
            }
            else
            {
                ChatToType @int = (ChatToType)data["tp"]._int;
                if (@int != ChatToType.Nearby)
                {
                    if (@int == ChatToType.PrivateSecretlanguage)
                    {
                        bool iGNORE_PRIVATE_INFO = GlobleSetting.IGNORE_PRIVATE_INFO;
                        if (iGNORE_PRIVATE_INFO)
                        {
                            return;
                        }
                    }
                }
                else
                {
                    bool flag6 = !data.ContainsKey("url");
                    if (flag6)
                    {
                        uint   uint2 = data["cid"]._uint;
                        string str   = data["msg"]._str;
                        foreach (KeyValuePair <uint, ProfessionRole> current in OtherPlayerMgr._inst.m_mapOtherPlayerSee)
                        {
                            bool flag7 = current.Value.m_unCID == uint2;
                            if (flag7)
                            {
                                PlayerChatUIMgr.getInstance().show(current.Value, this.analysisStrName(str));
                            }
                        }
                    }
                }
                bool flag8 = data["tp"] == 10;
                if (flag8)
                {
                    bool flag9 = broadcasting.instance != null;
                    if (flag9)
                    {
                        broadcasting.instance.addMsg(data["msg"]);
                    }
                    data["tp"] = 6;
                    bool flag10 = a3_chatroom._instance != null;
                    if (flag10)
                    {
                        a3_chatroom._instance.otherSays(data);
                    }
                }
                else
                {
                    bool flag11 = a3_chatroom._instance != null;
                    if (flag11)
                    {
                        a3_chatroom._instance.otherSays(data);
                    }
                }
            }
        }
예제 #4
0
        void getPublish(Variant data)
        {
            if (data.ContainsKey("tp") && data["tp"] != 10)
            {
                UnityEngine.Debug.Log("聊天所有信息" + data.dump());
            }
            if (data.ContainsKey("cid"))
            {
                uint cid = data["cid"]._uint;
                if (FriendProxy.getInstance().BlackDataList.ContainsKey(cid))
                {
                    return;
                }
            }
            if (data.ContainsKey("res"))
            {
                int res = data["res"];
                if (res < 0)//-158
                {
                    Globle.err_output(res);
                    return;
                }
                if (res == 1)//私聊玩家存在情况下
                {
                    a3_chatroom._instance.meSays(false);
                }
            }
            else
            {
                switch ((ChatToType)data["tp"]._int)
                {
                case ChatToType.Nearby:
                    if (!data.ContainsKey("url"))
                    {
                        uint   cid = data["cid"]._uint;
                        string msg = data["msg"]._str;
                        foreach (KeyValuePair <uint, ProfessionRole> item in OtherPlayerMgr._inst.m_mapOtherPlayerSee)
                        {
                            if (item.Value.m_unCID == cid)
                            {
                                PlayerChatUIMgr.getInstance().show(item.Value, analysisStrName(msg));
                            }
                        }
                    }

                    break;

                case ChatToType.PrivateSecretlanguage:
                    if (GlobleSetting.IGNORE_PRIVATE_INFO)
                    {
                        return;                                       //客户端开启屏蔽私聊信息
                    }
                    break;
                }
                // UIClient.instance.dispatchEvent(GameEvent.Create(UI_EVENT.GET_PUBLISH, this, data));

                if (data["tp"] == 10)
                {//系统消息特殊处理,走马灯的同时,聊天框也要显示
                    if (broadcasting.instance != null)
                    {
                        broadcasting.instance.addGonggaoMsg(data["msg"]);
                    }

                    data["tp"] = (int)ChatToType.SystemMsg;
                    if (a3_chatroom._instance != null)
                    {
                        a3_chatroom._instance.otherSays(data);
                    }
                }
                else if (data["tp"] == 11)
                {
                    data["tp"] = (int)ChatToType.LegionSystemMsg;
                    if (data.ContainsKey("guard_time"))
                    {
                        if (A3_LegionModel.getInstance().myLegion.lvl > 1)
                        {
                            data["msg"] = ContMgr.getCont(("clan_log_12"), new List <string>()
                            {
                                (3 - data["guard_time"]).ToString(), (A3_LegionModel.getInstance().myLegion.lvl - 1).ToString()
                            });
                        }
                        else
                        {
                            data["msg"] = ContMgr.getCont(("clan_log_11"), new List <string>()
                            {
                                (3 - data["guard_time"]).ToString()
                            });
                        }

                        if (a3_chatroom._instance != null)
                        {
                            a3_chatroom._instance.otherSays(data);
                        }
                    }
                }
                else if (data["tp"] == 12)
                {
                    InterfaceMgr.getInstance().ui_async_open(InterfaceMgr.A3_CITYWARTIP);
                }
                else
                {
                    if (a3_chatroom._instance != null)
                    {
                        List <Variant> lp = null;
                        if (data.ContainsKey("xtp"))
                        {
                            int xtp = data["xtp"]._int;
                            switch (xtp)
                            {
                            case 1:
                                data = AnalysisData(data, out lp, xtp);
                                if (lp.Count == 6 &&
                                    lp[5].ContainsKey("tid") &&
                                    TeamProxy.getInstance()?.MyTeamData != null &&
                                    lp[5]["tid"] == TeamProxy.getInstance().MyTeamData.teamId&&
                                    PlayerModel.getInstance().IsCaptain)     //反馈仅对队长可见
                                {
                                    flytxt.instance.fly(ContMgr.getCont("a3_currentTeamPanel_in_fb2"));
                                }
                                break;

                            default: break;
                            }
                        }
                        a3_chatroom._instance.otherSays(data, lp);
                    }
                }
            }
        }