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); }
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)); } }
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)); } }
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); }
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); } }
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); }
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); } }
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)); }
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"); } }
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(); } }
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); } }
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 }); }
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); } }
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)); }
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(); } } }
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)); }
/// <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)
private void SetCommonUI() { this.csPartFriendParent = this.partFriendParent.GetComponent <GUISelectChatMemberPanel>(); this.csPartFriendParent.selectParts = this.partFriendList; this.csPartFriendParent.ListWindowViewRect = ChatTools.MakeChatListMemberRectWindow(); }
/// <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 }
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)
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); }
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); } }