private IEnumerator RequestChatInfo(GameWebAPI.RespData_ChatRequestMember data)
 {
     if (ChatTools.CheckOnFLG(data.result))
     {
         RequestBase request;
         if (data.approvalType == 1)
         {
             GameWebAPI.UserChatGroupList userChatGroupList = new GameWebAPI.UserChatGroupList();
             userChatGroupList.OnReceived = delegate(GameWebAPI.RespData_UserChatGroupList response)
             {
                 ClassSingleton <ChatData> .Instance.CurrentChatInfo.joinGroupData = response;
             };
             request = userChatGroupList;
         }
         else
         {
             GameWebAPI.UserChatRequestListLogic userChatRequestListLogic = new GameWebAPI.UserChatRequestListLogic();
             userChatRequestListLogic.OnReceived = delegate(GameWebAPI.RespData_UserChatRequestList response)
             {
                 ClassSingleton <ChatData> .Instance.CurrentChatInfo.requestGroupData = response;
             };
             request = userChatRequestListLogic;
         }
         return(request.RunOneTime(new Action(ClassSingleton <ChatData> .Instance.UpdateMaxJoinState), null, null));
     }
     return(null);
 }
Beispiel #2
0
 private void OnGroupDeleteExec(int idx)
 {
     if (idx == 0)
     {
         ChatTools.ChatLoadDisplay(true);
         GameWebAPI.RespData_DeleteChatGroupLogic chatGroup            = null;
         GameWebAPI.DeleteChatGroupLogic          deleteChatGroupLogic = new GameWebAPI.DeleteChatGroupLogic();
         deleteChatGroupLogic.SetSendData = delegate(GameWebAPI.ReqData_DeleteChatGroupLogic param)
         {
             param.chatGroupId = ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId;
         };
         deleteChatGroupLogic.OnReceived = delegate(GameWebAPI.RespData_DeleteChatGroupLogic response)
         {
             chatGroup = response;
         };
         GameWebAPI.DeleteChatGroupLogic request = deleteChatGroupLogic;
         base.StartCoroutine(request.RunOneTime(delegate()
         {
             RestrictionInput.EndLoad();
             this.AfterDeleteChatGroup(chatGroup);
         }, delegate(Exception noop)
         {
             RestrictionInput.EndLoad();
         }, null));
     }
 }
Beispiel #3
0
 public void ReplyToInviteExec(int iid, int reply)
 {
     if (reply == 1 && ClassSingleton <ChatData> .Instance.CurrentChatInfo.isMaxJoin)
     {
         ChatTools.chatGroupMaxJoinDialog();
     }
     else
     {
         ChatTools.ChatLoadDisplay(true);
         this.reqReplyType = reply;
         GameWebAPI.RespData_ChatReplyToInviteLogic replyToInvite = null;
         GameWebAPI.ChatReplyToInviteLogic          request       = new GameWebAPI.ChatReplyToInviteLogic
         {
             SetSendData = delegate(GameWebAPI.ReqData_ChatReplyToInviteLogic param)
             {
                 param.chatMemberInviteId = iid;
                 param.reply = reply;
             },
             OnReceived = delegate(GameWebAPI.RespData_ChatReplyToInviteLogic response)
             {
                 replyToInvite = response;
             }
         };
         base.StartCoroutine(request.RunOneTime(delegate()
         {
             RestrictionInput.EndLoad();
             this.AfterChatReplyToInvite(replyToInvite);
         }, delegate(Exception noop)
         {
             RestrictionInput.EndLoad();
         }, null));
     }
 }
Beispiel #4
0
 public void PushedIdSearchDecisionBtn()
 {
     ChatTools.ChatLoadDisplay(true);
     long[] searchResIds = new long[]
     {
         long.Parse(this.chatIdInput.value)
     };
     GameWebAPI.RespData_ChatGroupInfo chatGroup = null;
     GameWebAPI.ChatGroupInfo          request   = new GameWebAPI.ChatGroupInfo
     {
         SetSendData = delegate(GameWebAPI.ReqData_ChatGroupInfo param)
         {
             param.chatGroupId = searchResIds;
         },
         OnReceived = delegate(GameWebAPI.RespData_ChatGroupInfo response)
         {
             chatGroup = response;
         }
     };
     base.StartCoroutine(request.RunOneTime(delegate()
     {
         RestrictionInput.EndLoad();
         this.AfterGetChatGroupInfo(chatGroup);
     }, delegate(Exception noop)
     {
         RestrictionInput.EndLoad();
     }, null));
     this.chatIdInput.value = null;
 }
    public void chatRoomInRequest()
    {
        ChatTools.ChatLoadDisplay(true);
        GameWebAPI.RespData_ChatRequestMember requestMember     = null;
        GameWebAPI.ChatRequestMember          chatRequestMember = new GameWebAPI.ChatRequestMember();
        chatRequestMember.SetSendData = delegate(GameWebAPI.ReqData_ChatRequestMember param)
        {
            param.chatGroupId = ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId;
        };
        chatRequestMember.OnReceived = delegate(GameWebAPI.RespData_ChatRequestMember response)
        {
            requestMember = response;
        };
        GameWebAPI.ChatRequestMember request = chatRequestMember;
        APIRequestTask apirequestTask        = new APIRequestTask(request, false);

        apirequestTask.Add(new NormalTask(() => this.RequestChatInfo(requestMember)));
        base.StartCoroutine(request.RunOneTime(delegate()
        {
            RestrictionInput.EndLoad();
            this.AfterChatRequestMember(requestMember);
        }, delegate(Exception noop)
        {
            RestrictionInput.EndLoad();
        }, null));
    }
 private void AfterGetChatRecruitGroupList(GameWebAPI.RespData_ChatRecruitGroupListLogic data)
 {
     if (this.recruiteChatGroupPage == 1)
     {
         int num  = data.groupNum / data.viewNum;
         int num2 = data.groupNum % data.viewNum;
         if (num == 0 || data.groupNum == data.viewNum)
         {
             num = 1;
             this.isGetChatGroupListMax = true;
         }
         else if (num2 > 0)
         {
             num++;
         }
         this.recruiteChatGroupPageMaxNum = num;
         this.UpdateChatGroupList(data);
     }
     else
     {
         if (this.recruiteChatGroupPage >= this.recruiteChatGroupPageMaxNum)
         {
             this.isGetChatGroupListMax = true;
         }
         else
         {
             this.isGetChatGroupListMax = false;
         }
         this.AddUpdateChatGroupList(data);
     }
     ChatTools.ChatLoadDisplay(false);
 }
Beispiel #7
0
    public override void Show(Action <int> f, float sizeX, float sizeY, float aT)
    {
        this.Init();
        int num = ChatConstValue.CHAT_GROUP_MEMBER_MAX_NUM - ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupMemberNum;

        if (num < 10)
        {
            this.manyInviteSelectMaxNum = num;
        }
        else
        {
            this.manyInviteSelectMaxNum = 10;
        }
        if (CMD_ChatMenu.instance.openMemberListType == 1)
        {
            ChatTools.ChatLoadDisplay(true);
            base.HideDLG();
            base.PartsTitle.SetTitle(StringMaster.GetString("ChatLogMenu-08"));
            this.ngChatFriendDefaultText      = this.chatFriendDefaultText.GetComponent <UILabel>();
            this.ngChatFriendDefaultText.text = StringMaster.GetString("ChatInvitation-01");
            this.memberNumLabel.text          = string.Format(StringMaster.GetString("SystemFraction"), 0, this.manyInviteSelectMaxNum);
            NGUITools.SetActiveSelf(this.goMemberNumBox.gameObject, true);
            NGUITools.SetActiveSelf(this.goInviteDecisionBtn.gameObject, true);
            base.StartCoroutine(this.InitFriendUI(f, sizeX, sizeY, aT));
        }
        else
        {
            this.ngChatFriendDefaultText      = this.chatFriendDefaultText.GetComponent <UILabel>();
            this.ngChatFriendDefaultText.text = StringMaster.GetString("ChatUserNone");
            this.goInviteDecisionBtn.SetActive(false);
            this.SetCommonUI();
            if (CMD_ChatMenu.instance.openMemberListType == 4)
            {
                base.PartsTitle.SetTitle(StringMaster.GetString("ChatLogMenu-09"));
                this.SetGroupRequestUserList(ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId);
            }
            else if (CMD_ChatMenu.instance.openMemberListType == 5)
            {
                base.PartsTitle.SetTitle(StringMaster.GetString("ChatLogMenu-10"));
                this.SetGroupInviteUserList(ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId);
            }
            else if (CMD_ChatMenu.instance.openMemberListType == 2)
            {
                base.PartsTitle.SetTitle(StringMaster.GetString("ChatLogMenu-07"));
                this.SetChatMemberList(ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId);
            }
            else
            {
                base.PartsTitle.SetTitle(StringMaster.GetString("ChatLogMenu-03"));
                this.SetChatMemberList(ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId);
                this.goMemberNumBox.SetActive(true);
            }
            base.Show(f, sizeX, sizeY, aT);
            ChatTools.ChatLoadDisplay(false);
        }
    }
 public void PushedCreateGroupBtn()
 {
     if (ClassSingleton <ChatData> .Instance.CurrentChatInfo.isMaxJoin)
     {
         ChatTools.chatGroupMaxJoinDialog();
     }
     else
     {
         GUIMain.ShowCommonDialog(null, "CMD_CreateChatGroup", null);
     }
 }
Beispiel #9
0
 public FFACE(int id)
 {
     var eliteApi = new EliteAPI(id);
     Chat = new ChatTools(eliteApi);
     Item = new ItemTools(eliteApi);
     Menu = new MenuTools(eliteApi);
     NPC = new NPCTools(eliteApi);
     Player = new PlayerTools(eliteApi);
     Target = new TargetTools(eliteApi);
     Windower = new WindowerTools(eliteApi);
 }
Beispiel #10
0
 private void AfterChatCancelMemberRequest(GameWebAPI.RespData_ChatCancelMemberRequestLogic data)
 {
     if (ChatTools.CheckOnFLG(data.result))
     {
         CMD_ModalMessage cmd_ModalMessage = GUIMain.ShowCommonDialog(delegate(int i)
         {
             this.GetUserChatRequestListExec();
         }, "CMD_ModalMessage", null) as CMD_ModalMessage;
         cmd_ModalMessage.Title = StringMaster.GetString("SystemConfirm");
         cmd_ModalMessage.Info  = string.Format(StringMaster.GetString("ChatApply-05"), ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupName);
     }
 }
Beispiel #11
0
 public void GetUserChatInviteListExec()
 {
     ChatTools.ChatLoadDisplay(true);
     GameWebAPI.UserChatInviteListLogic userChatInviteListLogic = new GameWebAPI.UserChatInviteListLogic();
     userChatInviteListLogic.OnReceived = delegate(GameWebAPI.RespData_UserChatInviteListLogic response)
     {
         ClassSingleton <ChatData> .Instance.CurrentChatInfo.inviteGroupData = response;
     };
     GameWebAPI.UserChatInviteListLogic request = userChatInviteListLogic;
     base.StartCoroutine(request.RunOneTime(new Action(this.AfterGetUserChatInviteList), delegate(Exception noop)
     {
         RestrictionInput.EndLoad();
     }, null));
 }
Beispiel #12
0
 private void AfterDeleteChatGroup(GameWebAPI.RespData_DeleteChatGroupLogic data)
 {
     if (ChatTools.CheckOnFLG(data.result))
     {
         this.UpdateJoinGroupData();
         CMD_ModalMessage cmd_ModalMessage = GUIMain.ShowCommonDialog(delegate(int i)
         {
             this.< ClosePanel > __BaseCallProxy0(false);
             CMD_ChatWindow.instance.ClosePanel(true);
             CMD_ChatTop.instance.GetUserChatGroupListExec();
         }, "CMD_ModalMessage", null) as CMD_ModalMessage;
         cmd_ModalMessage.Title = StringMaster.GetString("SystemConfirm");
         cmd_ModalMessage.Info  = StringMaster.GetString("ChatDeleteSuccess");
     }
 }
Beispiel #13
0
 private void AfterChatResignGroup(GameWebAPI.RespData_ChatResignGroupLogic data)
 {
     if (ChatTools.CheckOnFLG(data.result))
     {
         this.SendChatResignGroup("ChatLog-03", StringMaster.GetString("ChatConfirmTitle"), StringMaster.GetString("ChatLeavingSuccess"));
     }
     else if (data.resultCode == 90)
     {
         this.SendChatResignGroup("ChatLog-03", StringMaster.GetString("SystemConfirm"), StringMaster.GetString("ChatMemberKickNotice"));
     }
     else
     {
         RestrictionInput.EndLoad();
     }
 }
Beispiel #14
0
 private void AfterEditChatGroup(GameWebAPI.RespData_EditChatGroupLogic data)
 {
     if (ChatTools.CheckOnFLG(data.result))
     {
         CMD_ModalMessage cmd_ModalMessage = GUIMain.ShowCommonDialog(delegate(int i)
         {
             this.< ClosePanel > __BaseCallProxy0(true);
             ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupName = this.groupNameInput.value;
             CMD_ChatWindow.instance.UpdateChatWindowTitle = ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupName;
             CMD_ChatTop.instance.GetUserChatGroupListExec();
         }, "CMD_ModalMessage", null) as CMD_ModalMessage;
         cmd_ModalMessage.Title = StringMaster.GetString("ChatConfirmTitle");
         cmd_ModalMessage.Info  = StringMaster.GetString("ChatGroupUpdateSuccess");
     }
 }
 private void SetCommonUI()
 {
     this.partGroupList                        = this.partGroupList.transform.GetChild(0).gameObject;
     this.csPartGroupParent                    = this.partGroupParent.GetComponent <GUISelectChatGroupPanel>();
     this.csPartGroupParent.selectParts        = this.partGroupList;
     this.csPartGroupParent.ListWindowViewRect = ChatTools.MakeChatListRectWindow();
     this.csPartMultiParent                    = this.partMultiParent.GetComponent <GUISelectMultiRecruitListPanel>();
     this.csPartMultiParent.selectParts        = this.partMultiList;
     this.csPartMultiParent.ListWindowViewRect = ChatTools.MakeChatListRectWindow();
     this.csPartPvPParent                      = this.partPvPParent.GetComponent <GUISelectPvPListPanel>();
     this.csPartPvPParent.selectParts          = this.partPvPList;
     this.csPartPvPParent.ListWindowViewRect   = ChatTools.MakeChatListRectWindow();
     this.partGroupList.SetActive(false);
     this.partMultiList.SetActive(false);
     this.partPvPList.SetActive(false);
 }
 public void AllBuild(GameWebAPI.RespData_ChatNewMessageHistoryLogic data)
 {
     CMD_ChatWindow.instance.nowPartsCount = data.result.Length;
     ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupLastHistoryId = data.result[data.result.Length - 1].chatMessageHistoryId;
     if (base.selectCollider != null)
     {
         bool flag = true;
         this.allListHight = 0f;
         foreach (GameWebAPI.RespData_ChatNewMessageHistoryLogic.Result result2 in data.result)
         {
             BoxCollider component = this.goBaseParts.GetComponent <BoxCollider>();
             string      text;
             Vector3     colliderSize = ChatTools.GetColliderSize(result2, component, CMD_ChatWindow.instance.goBaseTXT, out text);
             this.allListHight += colliderSize.y;
             if (flag)
             {
                 if (result2.type == 3)
                 {
                     this.startPartH = colliderSize.y + 40f;
                 }
                 else
                 {
                     this.startPartH = colliderSize.y;
                 }
                 CMD_ChatWindow.instance.nowLastMessageId = result2.chatMessageHistoryId;
                 flag = false;
             }
         }
         base.InitBuild();
         this.hsize = this.allListHight + this.verticalBorder * 2f - this.verticalMargin;
         this.ypos  = this.hsize / 2f - this.startPartH / 2f;
         foreach (GameWebAPI.RespData_ChatNewMessageHistoryLogic.Result respDataChatMessageDataResult in data.result)
         {
             GameObject          gameObject = base.AddBuildPart();
             GUIListChatLogParts component2 = gameObject.GetComponent <GUIListChatLogParts>();
             if (component2 != null)
             {
                 component2.SetOriginalPos(new Vector3(0f, this.ypos, -5f));
                 component2.RespDataChatMessageDataResult = respDataChatMessageDataResult;
             }
             this.ypos -= component2.listColliderHeight;
         }
         base.height = this.hsize;
         base.InitMinMaxLocation(-1, 0f);
     }
 }
Beispiel #17
0
        public void Execute(Message message)
        {
            Manager.BotClient.DeleteMessageAsync(message.Chat.Id, message.MessageId);

            string text = Utils.Parsers.VariablesParser(CacheData.SysConfigs
                                                        .Single(x => x.SysConfigId == "HelpMenu")
                                                        .Value);

            if (ChatTools.IsUserAdmin(message.Chat.Id, message.From.Id))
            {
                text += Environment.NewLine;
                text += CacheData.SysConfigs
                        .Single(x => x.SysConfigId == "HelpMenuAdmin")
                        .Value;
            }

            if (BotTools.IsUserOperator(message.From.Id))
            {
                text += Environment.NewLine;
                text += CacheData.SysConfigs
                        .Single(x => x.SysConfigId == "HelpMenuOperatorBase")
                        .Value;

                if (BotTools.IsUserOperator(message.From.Id, Models.Operator.Levels.Advanced))
                {
                    text += Environment.NewLine;
                    text += CacheData.SysConfigs
                            .Single(x => x.SysConfigId == "HelpMenuOperatorAdv")
                            .Value;
                }
            }

            text += Environment.NewLine;
            text += Environment.NewLine;
            text += "* usernames are saved in cache and never stored on database or file. The cache is cleared at every reboot or update.";

            MessageQueueManager.EnqueueMessage(
                new Models.ChatMessage()
            {
                Timestamp = DateTime.UtcNow,
                Chat      = message.Chat,
                ParseMode = ParseMode.Html,
                Text      = text
            });
        }
Beispiel #18
0
 private void AfterChatReplyToInvite(GameWebAPI.RespData_ChatReplyToInviteLogic data)
 {
     if (ChatTools.CheckOnFLG(data.result))
     {
         CMD_ModalMessage cmd_ModalMessage = GUIMain.ShowCommonDialog(delegate(int i)
         {
             CMD_ChatModal.instance.ClosePanel(true);
             this.GetUserChatInviteListExec();
             if (this.reqReplyType == 1)
             {
                 base.StartCoroutine(Singleton <TCPUtil> .Instance.SendSystemMessege(ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId, DataMng.Instance().UserId, DataMng.Instance().UserName));
             }
         }, "CMD_ModalMessage", null) as CMD_ModalMessage;
         cmd_ModalMessage.Title = StringMaster.GetString("SystemConfirm");
         string format = (this.reqReplyType != 1) ? StringMaster.GetString("ChatInviteReplyNG") : StringMaster.GetString("ChatInviteReplyOK");
         cmd_ModalMessage.Info = string.Format(format, ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupName);
     }
 }
Beispiel #19
0
        public EliteMmoWrapper(int pid)
        {
            var eliteApi = new EliteAPI(pid);

            Navigator   = new NavigationTools(eliteApi);
            NPC         = new NpcTools(eliteApi);
            PartyMember = new Dictionary <byte, IPartyMemberTools>();
            Player      = new PlayerTools(eliteApi);
            Target      = new TargetTools(eliteApi);
            Timer       = new TimerTools(eliteApi);
            Windower    = new WindowerTools(eliteApi);
            Chat        = new ChatTools(eliteApi);

            for (byte i = 0; i < 16; i++)
            {
                PartyMember.Add(i, new PartyMemberTools(eliteApi, i));
            }
        }
 public void GetUserChatGroupListExec()
 {
     ChatTools.ChatLoadDisplay(true);
     GameWebAPI.UserChatGroupList userChatGroupList = new GameWebAPI.UserChatGroupList();
     userChatGroupList.OnReceived = delegate(GameWebAPI.RespData_UserChatGroupList response)
     {
         ClassSingleton <ChatData> .Instance.CurrentChatInfo.joinGroupData = response;
     };
     GameWebAPI.UserChatGroupList request = userChatGroupList;
     AppCoroutine.Start(request.RunOneTime(delegate()
     {
         this.UpdateChatGroupList(ClassSingleton <ChatData> .Instance.CurrentChatInfo.joinGroupData);
         RestrictionInput.EndLoad();
     }, delegate(Exception noop)
     {
         RestrictionInput.EndLoad();
     }, null), false);
 }
    public void SetChatRecruitGroupList(int page)
    {
        ChatTools.ChatLoadDisplay(true);
        List <int> categoryId   = new List <int>();
        List <int> approvalType = new List <int>();

        this.recruiteChatGroupPage = page;
        for (int i = 0; i < CMD_ChatTop.selectedRefineStatusList.Length; i++)
        {
            if (CMD_ChatTop.selectedRefineStatusList[i])
            {
                if (i < 4)
                {
                    categoryId.Add(i + 1);
                }
                else
                {
                    approvalType.Add(i - 3);
                }
            }
        }
        GameWebAPI.RespData_ChatRecruitGroupListLogic groupList = null;
        GameWebAPI.ChatRecruitGroupListLogic          request   = new GameWebAPI.ChatRecruitGroupListLogic
        {
            SetSendData = delegate(GameWebAPI.ReqData_ChatRecruitGroupListLogic param)
            {
                param.categoryId   = categoryId;
                param.approvalType = approvalType;
                param.sortType     = (int)CMD_ChatTop.selectedSortStatus;
                param.page         = this.recruiteChatGroupPage;
            },
            OnReceived = delegate(GameWebAPI.RespData_ChatRecruitGroupListLogic response)
            {
                groupList = response;
            }
        };
        base.StartCoroutine(request.RunOneTime(delegate()
        {
            this.AfterGetChatRecruitGroupList(groupList);
        }, delegate(Exception noop)
        {
            RestrictionInput.EndLoad();
        }, null));
    }
Beispiel #22
0
        public EliteMMOWrapper(int pid)
        {
            EliteAPI    = new EliteAPI(pid);
            Navigator   = new NavigationTools(EliteAPI);
            NPC         = new NPCTools(EliteAPI);
            PartyMember = new Dictionary <byte, IPartyMemberTools>();
            Player      = new PlayerTools(EliteAPI);
            Target      = new TargetTools(EliteAPI);
            Timer       = new TimerTools(EliteAPI);
            Windower    = new WindowerTools(EliteAPI);
            Chat        = new ChatTools(EliteAPI);

            //EliteAPI.Player.GetPlayerInfo().StatsModifiers.

            for (byte i = 0; i < 16; i++)
            {
                PartyMember.Add(i, new PartyMemberTools(EliteAPI, i));
            }
        }
 private void AfterChatRequestMember(GameWebAPI.RespData_ChatRequestMember data)
 {
     if (ChatTools.CheckOnFLG(data.result))
     {
         CMD_ModalMessage cmd_ModalMessage = GUIMain.ShowCommonDialog(delegate(int i)
         {
             this.ClickSearchBackBtn();
         }, "CMD_ModalMessage", null) as CMD_ModalMessage;
         cmd_ModalMessage.Title = StringMaster.GetString("ChatConfirmTitle");
         cmd_ModalMessage.Info  = StringMaster.GetString("ChatSearch-07");
         if (data.approvalType == 1)
         {
             this.UpdateJoinGroupData();
             this.SendJoinMessage();
         }
         else
         {
             this.UpdateRequestGroupData();
         }
     }
 }
Beispiel #24
0
 public void RequestCanselExec(int rid)
 {
     ChatTools.ChatLoadDisplay(true);
     GameWebAPI.RespData_ChatCancelMemberRequestLogic cancelMemberRequest = null;
     GameWebAPI.ChatCancelMemberRequestLogic          request             = new GameWebAPI.ChatCancelMemberRequestLogic
     {
         SetSendData = delegate(GameWebAPI.ReqData_ChatCancelMemberRequestLogic param)
         {
             param.chatMemberRequestId = rid;
         },
         OnReceived = delegate(GameWebAPI.RespData_ChatCancelMemberRequestLogic response)
         {
             cancelMemberRequest = response;
         }
     };
     base.StartCoroutine(request.RunOneTime(delegate()
     {
         RestrictionInput.EndLoad();
         this.AfterChatCancelMemberRequest(cancelMemberRequest);
     }, delegate(Exception noop)
     {
         RestrictionInput.EndLoad();
     }, null));
 }
Beispiel #25
0
        /// <summary>
        /// Constructor that instantiates FFACE
        /// </summary>
        /// <param name="processID">The Process ID of the POL Process you want to interface with.</param>
        public FFACE(int processID)
        {
            // create our FFACE instance
            _InstanceID = CreateInstance((UInt32)processID);

            #region Find Windower Plugin Path

            System.Diagnostics.Process[] Processes = System.Diagnostics.Process.GetProcessesByName("pol");
            if (Processes.Length > 0)
            {
                foreach (System.Diagnostics.ProcessModule mod in Processes[0].Modules)
                {
                    if (mod.ModuleName.ToLower() == "hook.dll")
                    {
                        WindowerPath = mod.FileName.Substring(0, mod.FileName.Length - 8) + @"\plugins\";
                        ParseResources.UseFFXIDatFiles = false;
                        break;
                    }
                }
            }
            // Fix for non-windower users
            if (String.IsNullOrEmpty(WindowerPath))
            {
                string ExePath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location);
                // If we have a resources folder, use the resource parser otherwise let it default to using .dat reader
                if (System.IO.Directory.Exists(ExePath + @"\resources\"))
                {
                    WindowerPath = ExePath;
                    ParseResources.UseFFXIDatFiles = false;
                }
            }

            #endregion

            // Find out if we should be using structs or not
            System.Diagnostics.FileVersionInfo fileInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(FFACE_LIBRARY);

            // Need 4, 1, 0, 14 or later.  Adjust these settings as needed.
            UInt64 version = ((UInt64)fileInfo.FileMajorPart << 48) + ((UInt64)fileInfo.FileMinorPart << 32) + ((UInt64)fileInfo.FileBuildPart << 16) + (UInt64)fileInfo.FilePrivatePart;
            if (fileInfo.FileMajorPart != 4)
            {
                throw new Exception(NEED_v410_24_OR_HIGHER);
            }
            else if (version < 0x0004000100000018UL)                    // 0004 0001 0000 000E (4, 1, 0, 14) // // 0004 0001 0000 0018 (4, 1, 0, 24)
            {
                throw new Exception(NEED_v410_24_OR_HIGHER);
            }

            /*if (fileInfo.FileMajorPart != 4)
             *  throw new Exception(NEED_v410_24_OR_HIGHER);
             * else if (fileInfo.FileMinorPart < 1)
             *  throw new Exception(NEED_v410_24_OR_HIGHER);
             * else if (fileInfo.FileBuildPart < 0)
             *  throw new Exception(NEED_v410_24_OR_HIGHER);
             * else if (fileInfo.FilePrivatePart < 14)
             *  throw new Exception(NEED_v410_24_OR_HIGHER);*/


            // instantiate our classes
            Player    = new PlayerTools(_InstanceID);
            Target    = new TargetTools(_InstanceID);
            Party     = new PartyTools(_InstanceID);
            Fish      = new FishTools(_InstanceID);
            Windower  = new WindowerTools(_InstanceID);
            Timer     = new TimerTools(_InstanceID);
            Chat      = new ChatTools(_InstanceID);
            Item      = new ItemTools(this);
            NPC       = new NPCTools(_InstanceID);
            Menu      = new MenuTools(this);
            Search    = new SearchTools(_InstanceID);
            Navigator = new NavigatorTools(this);
            Resources = ParseResources.Instance;

            #region Party Members

            // instantiate our party members
            PartyMember = new System.Collections.Generic.Dictionary <byte, PartyMemberTools>();
            PartyMember.Add(0, new PartyMemberTools(_InstanceID, 0));
            PartyMember.Add(1, new PartyMemberTools(_InstanceID, 1));
            PartyMember.Add(2, new PartyMemberTools(_InstanceID, 2));
            PartyMember.Add(3, new PartyMemberTools(_InstanceID, 3));
            PartyMember.Add(4, new PartyMemberTools(_InstanceID, 4));
            PartyMember.Add(5, new PartyMemberTools(_InstanceID, 5));
            PartyMember.Add(6, new PartyMemberTools(_InstanceID, 6));
            PartyMember.Add(7, new PartyMemberTools(_InstanceID, 7));
            PartyMember.Add(8, new PartyMemberTools(_InstanceID, 8));
            PartyMember.Add(9, new PartyMemberTools(_InstanceID, 9));
            PartyMember.Add(10, new PartyMemberTools(_InstanceID, 10));
            PartyMember.Add(11, new PartyMemberTools(_InstanceID, 11));
            PartyMember.Add(12, new PartyMemberTools(_InstanceID, 12));
            PartyMember.Add(13, new PartyMemberTools(_InstanceID, 13));
            PartyMember.Add(14, new PartyMemberTools(_InstanceID, 14));
            PartyMember.Add(15, new PartyMemberTools(_InstanceID, 15));
            PartyMember.Add(16, new PartyMemberTools(_InstanceID, 16));
            PartyMember.Add(17, new PartyMemberTools(_InstanceID, 17));

            #endregion
        } // @ public FFACEWrapper(uint processID)
Beispiel #26
0
 private void SetCommonUI()
 {
     this.csPartFriendParent                    = this.partFriendParent.GetComponent <GUISelectChatMemberPanel>();
     this.csPartFriendParent.selectParts        = this.partFriendList;
     this.csPartFriendParent.ListWindowViewRect = ChatTools.MakeChatListMemberRectWindow();
 }
Beispiel #27
0
        /// <summary>
        /// Constructor that instantiates FFACE
        /// </summary>
        /// <param name="processID">The Process ID of the POL Process you want to interface with.</param>
        public FFACE(int processID)
        {
            // create our FFACE instance
            _InstanceID = CreateInstance((UInt32)processID);

            if (!System.IO.Directory.Exists(WindowerPath) && !ParseResources.UseFFXIDatFiles)
                ParseResources.UseFFXIDatFiles = true;

            //#region Find Windower Plugin Path

            //System.Diagnostics.Process[] Processes = System.Diagnostics.Process.GetProcessesByName("pol");
            //if (Processes.Length > 0)
            //	foreach (System.Diagnostics.ProcessModule mod in Processes[0].Modules)
            //	{
            //		if (mod.ModuleName.ToLower() == "hook.dll")
            //		{
            //			WindowerPath = mod.FileName.Substring(0, mod.FileName.Length - 8) + @"\plugins\";
            //			break;
            //		}
            //	}

            //if (String.IsNullOrEmpty(WindowerPath))
            //	WindowerPath = "Windower path could not be found";

            //#endregion

            // Find out if we should be using structs or not
            System.Diagnostics.FileVersionInfo fileInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(FFACE_LIBRARY);

            // Need 4, 1, 0, 14 or later.  Adjust these settings as needed.
            UInt64 version = ((UInt64)fileInfo.FileMajorPart << 48) + ((UInt64)fileInfo.FileMinorPart << 32) + ((UInt64)fileInfo.FileBuildPart << 16) + (UInt64)fileInfo.FilePrivatePart;
            if (fileInfo.FileMajorPart != 4)
                throw new Exception(NEED_v410_14_OR_HIGHER);
            else if (version < 0x000400010000000EUL)			// 0004 0001 0000 000E (4, 1, 0, 14)
                throw new Exception(NEED_v410_14_OR_HIGHER);

            /*if (fileInfo.FileMajorPart != 4)
                throw new Exception(NEED_v410_14_OR_HIGHER);
            else if (fileInfo.FileMinorPart < 1)
                throw new Exception(NEED_v410_14_OR_HIGHER);
            else if (fileInfo.FileBuildPart < 0)
                throw new Exception(NEED_v410_14_OR_HIGHER);
            else if (fileInfo.FilePrivatePart < 14)
                throw new Exception(NEED_v410_14_OR_HIGHER);*/

            // instantiate our classes
            Player = new PlayerTools(_InstanceID);
            Target = new TargetTools(_InstanceID);
            Party = new PartyTools(_InstanceID);
            Fish = new FishTools(_InstanceID);
            Windower = new WindowerTools(_InstanceID);
            Timer = new TimerTools(_InstanceID);
            Chat = new ChatTools(_InstanceID);
            Item = new ItemTools(this);
            NPC = new NPCTools(_InstanceID);
            Menu = new MenuTools(this);
            Search = new SearchTools(_InstanceID);
            Navigator = new NavigatorTools(this);
            //Resources = ParseResources.Instance;

            #region Party Members

            // instantiate our party members
            PartyMember = new System.Collections.Generic.Dictionary<byte, PartyMemberTools>();
            PartyMember.Add(0, new PartyMemberTools(_InstanceID, 0));
            PartyMember.Add(1, new PartyMemberTools(_InstanceID, 1));
            PartyMember.Add(2, new PartyMemberTools(_InstanceID, 2));
            PartyMember.Add(3, new PartyMemberTools(_InstanceID, 3));
            PartyMember.Add(4, new PartyMemberTools(_InstanceID, 4));
            PartyMember.Add(5, new PartyMemberTools(_InstanceID, 5));
            PartyMember.Add(6, new PartyMemberTools(_InstanceID, 6));
            PartyMember.Add(7, new PartyMemberTools(_InstanceID, 7));
            PartyMember.Add(8, new PartyMemberTools(_InstanceID, 8));
            PartyMember.Add(9, new PartyMemberTools(_InstanceID, 9));
            PartyMember.Add(10, new PartyMemberTools(_InstanceID, 10));
            PartyMember.Add(11, new PartyMemberTools(_InstanceID, 11));
            PartyMember.Add(12, new PartyMemberTools(_InstanceID, 12));
            PartyMember.Add(13, new PartyMemberTools(_InstanceID, 13));
            PartyMember.Add(14, new PartyMemberTools(_InstanceID, 14));
            PartyMember.Add(15, new PartyMemberTools(_InstanceID, 15));
            PartyMember.Add(16, new PartyMemberTools(_InstanceID, 16));
            PartyMember.Add(17, new PartyMemberTools(_InstanceID, 17));

            #endregion
        }
Beispiel #28
0
 public void PushedFixedPhraseSubmitBtn()
 {
     base.StartCoroutine(Singleton <TCPUtil> .Instance.SendChatMessage(ClassSingleton <ChatData> .Instance.CurrentChatInfo.groupId, this.sendMessageParam, ChatTools.SetMessageType(), null));
     CMD_ChatWindow.instance.SetSendLock();
     base.ClosePanel(true);
 }
        /// <summary>
        /// Constructor that instantiates FFACE
        /// </summary>
        /// <param name="processID">The Process ID of the POL Process you want to interface with.</param>
        public FFACE (int processID)
        {
            // create our FFACE instance
            _InstanceID = CreateInstance((UInt32)processID);

            #region Find Windower Plugin Path

            System.Diagnostics.Process[] Processes = System.Diagnostics.Process.GetProcessesByName("pol");
            if (Processes.Length > 0)
                foreach (System.Diagnostics.ProcessModule mod in Processes[0].Modules)
                {
                    if (mod.ModuleName.ToLower() == "hook.dll")
                    {
                        WindowerPath = mod.FileName.Substring(0, mod.FileName.Length - 8) + @"\plugins\";
                        ParseResources.UseFFXIDatFiles = false;
                        break;
                    }
                }
            // Fix for non-windower users
            if (String.IsNullOrEmpty(WindowerPath))
            {
                string ExePath = System.IO.Path.GetDirectoryName(System.Reflection.Assembly.GetEntryAssembly().Location);
                // If we have a resources folder, use the resource parser otherwise let it default to using .dat reader
                if (System.IO.Directory.Exists(ExePath + @"\resources\"))
                {
                    WindowerPath = ExePath;
                    ParseResources.UseFFXIDatFiles = false;
                }
            }

            #endregion

            // Find out if we should be using structs or not
            System.Diagnostics.FileVersionInfo fileInfo = System.Diagnostics.FileVersionInfo.GetVersionInfo(FFACE_LIBRARY);

            // Need 4, 1, 0, 14 or later.  Adjust these settings as needed.
            UInt64 version = ( (UInt64)fileInfo.FileMajorPart << 48 ) + ( (UInt64)fileInfo.FileMinorPart << 32 ) + ( (UInt64)fileInfo.FileBuildPart << 16 ) + (UInt64)fileInfo.FilePrivatePart;
            if (fileInfo.FileMajorPart != 4)
                throw new Exception(NEED_v410_24_OR_HIGHER);
            else if (version < 0x0004000100000018UL)			// 0004 0001 0000 000E (4, 1, 0, 14) // // 0004 0001 0000 0018 (4, 1, 0, 24)
                throw new Exception(NEED_v410_24_OR_HIGHER);

            /*if (fileInfo.FileMajorPart != 4)
                throw new Exception(NEED_v410_24_OR_HIGHER);
            else if (fileInfo.FileMinorPart < 1)
                throw new Exception(NEED_v410_24_OR_HIGHER);
            else if (fileInfo.FileBuildPart < 0)
                throw new Exception(NEED_v410_24_OR_HIGHER);
            else if (fileInfo.FilePrivatePart < 14)
                throw new Exception(NEED_v410_24_OR_HIGHER);*/


            // instantiate our classes
            Player = new PlayerTools(_InstanceID);
            Target = new TargetTools(_InstanceID);
            Party = new PartyTools(_InstanceID);
            Fish = new FishTools(_InstanceID);
            Windower = new WindowerTools(_InstanceID);
            Timer = new TimerTools(_InstanceID);
            Chat = new ChatTools(_InstanceID);
            Item = new ItemTools(this);
            NPC = new NPCTools(_InstanceID);
            Menu = new MenuTools(this);
            Search = new SearchTools(_InstanceID);
            Navigator = new NavigatorTools(this);
            Resources = ParseResources.Instance;

            #region Party Members

            // instantiate our party members
            PartyMember = new System.Collections.Generic.Dictionary<byte, PartyMemberTools>();
            PartyMember.Add(0, new PartyMemberTools(_InstanceID, 0));
            PartyMember.Add(1, new PartyMemberTools(_InstanceID, 1));
            PartyMember.Add(2, new PartyMemberTools(_InstanceID, 2));
            PartyMember.Add(3, new PartyMemberTools(_InstanceID, 3));
            PartyMember.Add(4, new PartyMemberTools(_InstanceID, 4));
            PartyMember.Add(5, new PartyMemberTools(_InstanceID, 5));
            PartyMember.Add(6, new PartyMemberTools(_InstanceID, 6));
            PartyMember.Add(7, new PartyMemberTools(_InstanceID, 7));
            PartyMember.Add(8, new PartyMemberTools(_InstanceID, 8));
            PartyMember.Add(9, new PartyMemberTools(_InstanceID, 9));
            PartyMember.Add(10, new PartyMemberTools(_InstanceID, 10));
            PartyMember.Add(11, new PartyMemberTools(_InstanceID, 11));
            PartyMember.Add(12, new PartyMemberTools(_InstanceID, 12));
            PartyMember.Add(13, new PartyMemberTools(_InstanceID, 13));
            PartyMember.Add(14, new PartyMemberTools(_InstanceID, 14));
            PartyMember.Add(15, new PartyMemberTools(_InstanceID, 15));
            PartyMember.Add(16, new PartyMemberTools(_InstanceID, 16));
            PartyMember.Add(17, new PartyMemberTools(_InstanceID, 17));

            #endregion

        } // @ public FFACEWrapper(uint processID)
Beispiel #30
0
        public void Execute(Message message)
        {
            Manager.BotClient.DeleteMessageAsync(message.Chat.Id, message.MessageId);

            if (!BotTools.IsUserOperator(message.From.Id) &&
                !ChatTools.IsUserAdmin(message.Chat.Id, message.From.Id))
            {
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp        = DateTime.UtcNow,
                    Chat             = message.Chat,
                    ReplyToMessageId = message.MessageId,
                    Text             = CacheData.GetTranslation("en", "error_not_auth_command")
                });
                return;
            }
            int userToKick;

            if (message.ReplyToMessage == null)
            {
                if (message.Text.Split(" ")[1].StartsWith("@"))
                {
                    if (!CacheData.Usernames.Keys.Contains(message.Text.Split(" ")[1].Remove(0, 1)))
                    {
                        MessageQueueManager.EnqueueMessage(
                            new Models.ChatMessage()
                        {
                            Timestamp = DateTime.UtcNow,
                            Chat      = message.Chat,
                            Text      = CacheData.GetTranslation("en", "kick_command_error_invalidUsername")
                        });
                        return;
                    }
                    userToKick = CacheData.Usernames[message.Text.Split(" ")[1].Remove(0, 1)];
                }
                else
                {
                    bool isValid = int.TryParse(message.Text.Split(" ")[1], out userToKick);
                    if (!isValid)
                    {
                        MessageQueueManager.EnqueueMessage(
                            new Models.ChatMessage()
                        {
                            Timestamp = DateTime.UtcNow,
                            Chat      = message.Chat,
                            Text      = CacheData.GetTranslation("en", "kick_command_error_invalidUserId")
                        });
                        return;
                    }
                }
            }
            else
            {
                userToKick = message.ReplyToMessage.From.Id;
            }

            if (userToKick == 777000) // Telegram's official updateServiceNotification
            {
                Manager.BotClient.SendTextMessageAsync(
                    chatId: message.Chat.Id,
                    parseMode: ParseMode.Markdown,
                    text: String.Format(
                        "*[Error]*\n" +
                        "This is an official Telegram's user/id.")
                    );

                return;
            }

            if (BotTools.IsUserOperator(userToKick))
            {
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp = DateTime.UtcNow,
                    Chat      = message.Chat,
                    Text      = CacheData.GetTranslation("en", "command_to_operator_not_allowed")
                });

                return;
            }

            try
            {
                Manager.BotClient.KickChatMemberAsync(message.Chat.Id, userToKick);
                if (message.Chat.Type == ChatType.Supergroup)
                {
                    Manager.BotClient.UnbanChatMemberAsync(message.Chat.Id, userToKick);
                }
            }
            catch
            {
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp = DateTime.UtcNow,
                    Chat      = message.Chat,
                    ParseMode = ParseMode.Markdown,
                    Text      = CacheData.GetTranslation("en", "command_kick_error")
                });
                return;
            }

            UserTools.AddPenalty(message.Chat.Id, userToKick,
                                 Models.TrustFactorLog.TrustFactorAction.kick, Manager.MyId);
        }
Beispiel #31
0
        public void Execute(Message message)
        {
            if (!BotTools.IsUserOperator(message.From.Id, Models.Operator.Levels.Basic) &&
                !ChatTools.IsUserAdmin(message.Chat.Id, message.From.Id))
            {
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp = DateTime.UtcNow,
                    Chat      = message.Chat,
                    Text      = CacheData.GetTranslation("en", "ban_command_error_notadmin")
                });
                return;
            }

            if (Manager.BotClient.GetChatAdministratorsAsync(message.Chat.Id).Result
                .Single(x => x.User.Id == message.From.Id)
                .CanRestrictMembers == false)
            {
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp = DateTime.UtcNow,
                    Chat      = message.Chat,
                    Text      = CacheData.GetTranslation("en", "ban_command_error_adminPrivilege")
                });
                return;
            }

            int userToKick;

            if (message.ReplyToMessage == null)
            {
                if (message.Text.Split(" ")[1].StartsWith("@"))
                {
                    if (!CacheData.Usernames.Keys.Contains(message.Text.Split(" ")[1].Remove(0, 1)))
                    {
                        MessageQueueManager.EnqueueMessage(
                            new Models.ChatMessage()
                        {
                            Timestamp = DateTime.UtcNow,
                            Chat      = message.Chat,
                            Text      = CacheData.GetTranslation("en", "ban_command_error_invalidUsername")
                        });
                        return;
                    }
                    userToKick = CacheData.Usernames[message.Text.Split(" ")[1].Remove(0, 1)];
                }
                else
                {
                    bool isValid = int.TryParse(message.Text.Split(" ")[1], out userToKick);
                    if (!isValid)
                    {
                        MessageQueueManager.EnqueueMessage(
                            new Models.ChatMessage()
                        {
                            Timestamp = DateTime.UtcNow,
                            Chat      = message.Chat,
                            Text      = CacheData.GetTranslation("en", "ban_command_error_invalidUserId")
                        });
                        return;
                    }
                }
            }
            else
            {
                userToKick = message.ReplyToMessage.From.Id;
            }

            if (userToKick == 777000) // Telegram's official updateServiceNotification
            {
                Manager.BotClient.SendTextMessageAsync(
                    chatId: message.Chat.Id,
                    parseMode: ParseMode.Markdown,
                    text: String.Format(
                        "*[Error]*\n" +
                        "This is an official Telegram's user/id.")
                    );

                return;
            }

            if (BotTools.IsUserOperator(userToKick))
            {
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp = DateTime.UtcNow,
                    Chat      = message.Chat,
                    Text      = CacheData.GetTranslation("en", "command_to_operator_not_allowed")
                });

                return;
            }

            try
            {
                Manager.BotClient.KickChatMemberAsync(message.Chat.Id, userToKick,
                                                      DateTime.UtcNow.AddMinutes(-5));
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp = DateTime.UtcNow,
                    Chat      = message.Chat,
                    Text      = CacheData.GetTranslation("en", "ban_command_success")
                });
            }
            catch
            {
                MessageQueueManager.EnqueueMessage(
                    new Models.ChatMessage()
                {
                    Timestamp = DateTime.UtcNow,
                    Chat      = message.Chat,
                    Text      = CacheData.GetTranslation("en", "ban_command_error")
                });
                return;
            }

            UserTools.AddPenalty(message.Chat.Id, userToKick,
                                 Models.TrustFactorLog.TrustFactorAction.ban, Manager.MyId);
        }
    public override void ShowGUI()
    {
        base.ShowGUI();
        if (this.RespDataChatMessageDataResult.type == 3)
        {
            this.ngTX_COMMENT = this.goSYS_TX_COMMENT.GetComponent <UILabel>();
            this.goCONTENT_WRAP.SetActive(false);
            this.goSELF_CONTENT_WRAP.SetActive(false);
        }
        else if (DataMng.Instance().UserId == this.RespDataChatMessageDataResult.userId)
        {
            this.ngTX_USERNAME  = this.goSELF_TX_USERNAME.GetComponent <UILabel>();
            this.ngTX_DATE      = this.goSELF_TX_DATE.GetComponent <UILabel>();
            this.ngTX_COMMENT   = this.goSELF_TX_COMMENT.GetComponent <UILabel>();
            this.ngMONSTER_ICON = this.goSELF_MONSTER_ICON;
            this.ngTITLE_ICON   = this.goSELF_TITLE_ICON;
            this.goCONTENT_WRAP.SetActive(false);
            this.goSYS_CONTENT_WRAP.SetActive(false);
        }
        else
        {
            this.ngTX_USERNAME  = this.goTX_USERNAME.GetComponent <UILabel>();
            this.ngTX_DATE      = this.goTX_DATE.GetComponent <UILabel>();
            this.ngTX_COMMENT   = this.goTX_COMMENT.GetComponent <UILabel>();
            this.ngMONSTER_ICON = this.goMONSTER_ICON;
            this.ngTITLE_ICON   = this.goTITLE_ICON;
            if (this.RespDataChatMessageDataResult.type == 4)
            {
                this.ngMULTICODE_COL  = this.goBG_BALLOON.GetComponent <GUICollider>();
                this.ngMULTICODE_BCOL = this.goBG_BALLOON.GetComponent <BoxCollider>();
            }
            this.goSELF_CONTENT_WRAP.SetActive(false);
            this.goSYS_CONTENT_WRAP.SetActive(false);
        }
        string text = ChatTools.OutputDateCtrl(this.RespDataChatMessageDataResult.createTime);

        if (this.RespDataChatMessageDataResult.type != 3)
        {
            this.ngTX_DATE.text = text;
        }
        BoxCollider component = base.gameObject.GetComponent <BoxCollider>();
        string      text2;

        component.size          = ChatTools.GetColliderSize(this.RespDataChatMessageDataResult, component, CMD_ChatWindow.instance.goBaseTXT, out text2);
        this.listColliderHeight = component.size.y;
        int type = this.RespDataChatMessageDataResult.type;

        if (type != 3)
        {
            if (type != 4)
            {
                this.ngTX_COMMENT.text = text2;
            }
            else
            {
                string[] dungeonIds = text2.Split(new char[]
                {
                    ','
                });
                string arg;
                if (dungeonIds.Length > 2)
                {
                    GameWebAPI.RespDataMA_GetWorldStageM.WorldStageM[]     worldStageM    = MasterDataMng.Instance().RespDataMA_WorldStageM.worldStageM;
                    GameWebAPI.RespDataMA_GetWorldDungeonM.WorldDungeonM[] worldDungeonM  = MasterDataMng.Instance().RespDataMA_WorldDungeonM.worldDungeonM;
                    GameWebAPI.RespDataMA_GetWorldStageM.WorldStageM       worldStageM2   = worldStageM.SingleOrDefault((GameWebAPI.RespDataMA_GetWorldStageM.WorldStageM x) => x.worldStageId == dungeonIds[0]);
                    GameWebAPI.RespDataMA_GetWorldDungeonM.WorldDungeonM   worldDungeonM2 = worldDungeonM.SingleOrDefault((GameWebAPI.RespDataMA_GetWorldDungeonM.WorldDungeonM x) => x.worldDungeonId == dungeonIds[1]);
                    arg = string.Format(StringMaster.GetString("MultiRecruitChat-07"), worldStageM2.name, worldDungeonM2.name);
                    this.multiWorldAreaId    = worldStageM2.worldAreaId;
                    this.multiWorldDungeonId = worldDungeonM2.worldDungeonId;
                    this.multiRoomId         = dungeonIds[2];
                }
                else
                {
                    arg = text2;
                }
                this.ngTX_COMMENT.text  = string.Format(StringMaster.GetString("ChatLog-11"), arg);
                this.ngTX_COMMENT.color = this.multiPassCodeTextColor;
                if (DataMng.Instance().UserId != this.RespDataChatMessageDataResult.userId)
                {
                    this.ngMULTICODE_COL.onTouchEnded += delegate(Touch touch, Vector2 pos, bool flag)
                    {
                        this.OnMultiPassCodeClicked();
                    };
                }
            }
        }
        else
        {
            this.ngTX_COMMENT.text = string.Format("{0}\n{1}", text, text2);
        }
        if (DataMng.Instance().UserId == this.RespDataChatMessageDataResult.userId && this.RespDataChatMessageDataResult.type != 3)
        {
            this.ngTX_COMMENT.pivot = UIWidget.Pivot.Left;
        }
    }
 private void OpenMultiRecruitPartyWait(int idx)
 {
     if (idx == 0)
     {
         CMD_ChatWindow.instance.SetCloseAction(delegate(int close)
         {
             if (!Singleton <UserDataMng> .Instance.IsOverUnitLimit(ClassSingleton <MonsterUserDataMng> .Instance.GetMonsterNum() + ConstValue.ENABLE_SPACE_TOEXEC_DUNGEON))
             {
                 if (!Singleton <UserDataMng> .Instance.IsOverChipLimit(ConstValue.ENABLE_SPACE_TOEXEC_DUNGEON))
                 {
                     ChatTools.ChatLoadDisplay(true);
                     GameWebAPI.RespDataWD_GetDungeonInfo respDataWD_GetDungeonInfo = new GameWebAPI.RespDataWD_GetDungeonInfo();
                     respDataWD_GetDungeonInfo = ClassSingleton <QuestData> .Instance.GetDngeonInfoByWorldAreaId(this.multiWorldAreaId);
                     foreach (GameWebAPI.RespDataWD_GetDungeonInfo.WorldDungeonInfo worldDungeonInfo2 in respDataWD_GetDungeonInfo.worldDungeonInfo)
                     {
                         foreach (GameWebAPI.RespDataWD_GetDungeonInfo.Dungeons dungeons2 in worldDungeonInfo2.dungeons)
                         {
                             if (dungeons2.worldDungeonId == int.Parse(this.multiWorldDungeonId))
                             {
                                 ClassSingleton <PartyBossIconsAccessor> .Instance.StageEnemies = dungeons2.encountEnemies;
                             }
                         }
                     }
                     ClassSingleton <QuestData> .Instance.SelectDungeon = ClassSingleton <QuestData> .Instance.GetWorldDungeonMaster(this.multiWorldDungeonId);
                     DataMng.Instance().GetResultUtilData().SetLastDngReq(this.multiWorldDungeonId, "-1", "-1");
                     GameWebAPI.MultiRoomJoin multiRoomJoin = new GameWebAPI.MultiRoomJoin();
                     multiRoomJoin.SetSendData = delegate(GameWebAPI.ReqData_MultiRoomJoin param)
                     {
                         param.roomId   = int.Parse(this.multiRoomId);
                         param.password = string.Empty;
                     };
                     multiRoomJoin.OnReceived = delegate(GameWebAPI.RespData_MultiRoomJoin response)
                     {
                         CMD_MultiRecruitPartyWait.roomJoinData = response;
                         CMD_MultiRecruitPartyWait.StageDataBk  = new GameWebAPI.ResponseData_Common_MultiRoomList.room
                         {
                             worldAreaId    = response.multiRoomInfo.worldAreaId,
                             worldDungeonId = response.multiRoomInfo.worldDungeonId,
                             worldStageId   = response.multiRoomInfo.worldStageId
                         };
                     };
                     GameWebAPI.MultiRoomJoin request = multiRoomJoin;
                     AppCoroutine.Start(request.RunOneTime(delegate()
                     {
                         RestrictionInput.EndLoad();
                         if (CMD_ChatTop.instance != null)
                         {
                             CMD_ChatTop.instance.SetReOpendAction(delegate(int _idx)
                             {
                                 CMD_MultiRecruitPartyWait.UserType = CMD_MultiRecruitPartyWait.USER_TYPE.MEMBER;
                                 GUIMain.ShowCommonDialog(null, "CMD_MultiRecruitPartyWait", null);
                                 return(true);
                             });
                         }
                     }, delegate(Exception noop)
                     {
                         RestrictionInput.EndLoad();
                     }, null), false);
                 }
                 else
                 {
                     CMD_UpperlimitChip cmd_UpperlimitChip = GUIMain.ShowCommonDialog(null, "CMD_UpperlimitChip", null) as CMD_UpperlimitChip;
                     cmd_UpperlimitChip.SetType(CMD_UpperlimitChip.MessageType.QUEST);
                 }
             }
             else
             {
                 CMD_UpperLimit cmd_UpperLimit = GUIMain.ShowCommonDialog(null, "CMD_Upperlimit", null) as CMD_UpperLimit;
                 cmd_UpperLimit.SetType(CMD_UpperLimit.MessageType.QUEST);
             }
         });
         CMD_ChatWindow.instance.ClosePanel(true);
     }
 }