private void InitRigester() { SoundManager.inst.Register(this.gameObject); MicroManager.inst.Register(this.gameObject); DispatchManager.inst.Register(MainEvent.RESTART_GAME, RESTART_GAME); DispatchManager.inst.Register(MainEvent.RELOGIN_GAME, RELOGIN_GAME); DispatchManager.inst.Register(MainEvent.SHOW_USER, SHOW_USER); DispatchManager.inst.Register(MainEvent.SOCKET_ERROR, SOCKET_ERROR); DispatchManager.inst.Register(MainEvent.FIGHT_RESULT, FIGHT_RESULT); DispatchManager.inst.Register(MainEvent.START_FIGHT, START_FIGHT); DispatchManager.inst.Register(MainEvent.CLOSE_FIGHT, CLOSE_FIGHT); DispatchManager.inst.Register(MainEvent.FIGHT_INIT_COMPLETE, FIGHT_INIT_COMPLETE); DispatchManager.inst.Register(MainEvent.FIGHT_QUIT, FIGHT_QUIT); DispatchManager.inst.Register(MainEvent.FIGHT_ING, FIGHT_ING); DispatchManager.inst.Register(MainEvent.SHOW_FIGHTDETAIL, SHOW_FIGHTDETAIL); DispatchManager.inst.Register(MainEvent.SOCKET_CLOSE, SOCKET_CLOSE); userModel = ModelManager.inst.userModel; roleModel = ModelManager.inst.roleModel; chatModel = ModelManager.inst.chatModel; guildModel = ModelManager.inst.guildModel; fightModel = ModelManager.inst.fightModel; shareModel = ModelManager.inst.shareModel; gameModel.width = GRoot.inst.width; gameModel.height = GRoot.inst.height; this.initQueue.Next(); }
/// <summary> Удалить чат (локально) </summary> public static bool DeleteModelChat(ModelChat modelChat) { string[] arrayChatId; Logic.ClearChats(new[] { modelChat.Id }, out arrayChatId); return(!arrayChatId.Contains(modelChat.Id)); }
/// <summary> Возвращает список сообщений по ModelChat </summary> public static List <ModelChatMessage> GetListModelChatMessageByIdChat(ModelChat modelChat) { var chatId = modelChat.Id; var listChatMessageModelManaged = ConvertChatMessageModelManagedAtModelChatMessage(Logic.GetChatMessages(chatId)); return(listChatMessageModelManaged); }
/// <summary> Получить ChatModelManaged из ModelChat </summary> private static ChatModelManaged GetChatModelManagedFromModelChat(ModelChat modelChat) { var result = new ChatModelManaged { // тут сетим поля из modelChat }; return(result); }
public PresentorChatClient(ChatClient view, ModelChat model) { chatClient = view; modelChat = model; ReceiveMessagesAsync(); modelChat.SendMessage(" вошел в чат"); chatClient.ChatClientClosed += ChatClientClosedHandler; chatClient.SendBtnClick += SendBtnClickHandler; }
/// <summary> Возвращает список сообщений постранично </summary> public static List <ModelChatMessage> GetPagedModelChatMessageByIdChat(ModelChat modelChat) { var chatId = modelChat.Id; var listChatMessageModelManaged = Logic.GetChatMessagesPaged(chatId, 50, "", -1); var listModelChatMessage = ConvertChatMessageModelManagedAtModelChatMessage(listChatMessageModelManaged); return(listModelChatMessage); }
public override void Init() { base.Init(); this.Create(Config.SCENE_GUILDMAIN); roleModel = ModelManager.inst.roleModel; guildModel = ModelManager.inst.guildModel; chatModel = ModelManager.inst.chatModel; userModel = ModelManager.inst.userModel; Init_LeftTab(new string[] { Tools.GetMessageById("19908") }, "n22"); // frind_left_tab1 = (GComponent)this.GetChild ("n6"); // frind_left_tab_1_0 = frind_left_tab1.GetChild ("n0").asButton; // frind_left_tab_1_1 = frind_left_tab1.GetChild ("n1").asButton; // frind_left_tab_1_2 = frind_left_tab1.GetChild ("n2").asButton; // frind_left_tab_1_3 = frind_left_tab1.GetChild ("n3").asButton; this.GetChild("n9").asTextField.text = Tools.GetMessageById("20170"); this.GetChild("n4").asButton.text = ""; back = this.GetChild("n2").asButton; back.onClick.Add(OnCloseHandel); this.AddGlobalListener(MainEvent.GUILD_ESC, OnExcFunction); this.GetChild("n4").asButton.onClick.Add(() => { ModelManager.inst.fightModel.OpenFreeMatchInvite(); }); // this.GetChild ("n3").asButton.text = Tools.GetMessageById ("19908"); n0 = this.GetChild("bg").asCom; tabC1 = this.GetController("c2"); tabC2 = this.GetController("c3"); tabC2.onChanged.Add(() => { base.OnTabLeftChange(); }); tabC2.onChanged.Call(); tabC1.onChanged.Add(On_Left_Change1); // this.GetChild ("n8").asGroup.visible = false; if (ModelManager.inst.userModel.Get_NoticeState(ModelUser.RED_GUILDJOIN) != 0) { jiaru = true; } this.AddGlobalListener(MainEvent.GUILDICON_CHANGE, GUILDICON_CHANGE); this.AddGlobalListener(MainEvent.CHANGE_GUILD_NAME, CHANGE_GUILD_NAME); this.AddGlobalListener(MainEvent.GUILDDIZHI_CHANGE, GUILDDIZHI_CHANGE); GetGuildInfo(guildModel.viewData); // if (roleModel.tab_Select2 != -1 && roleModel.tab_Select2 != 0) // { // tabC2.selectedIndex = roleModel.tab_Select2; // roleModel.tab_Select2 = -1; // } }
public override void Init() { base.Init(); this.Create(Config.VIEW_LOGINCARD, false); userModel = ModelManager.inst.userModel; chatModel = ModelManager.inst.chatModel; // this.GetChild("n17").asTextField.text = Tools.GetMessageById("25501"); // listData = new List <object[]> (); Dictionary <string, object> data = (Dictionary <string, object>)userModel.records ["guild_support_logs"]; this.GetChild("n7").text = Tools.GetMessageById("25502"); this.GetChild("n9").text = Tools.GetMessageById("25503"); card = this.GetChild("n8").asCom as ComCard; list = this.GetChild("n12").asList; // bar = this.GetChild ("n4").asCom as ComProgressBar; // bar.skin = ComProgressBar.BAR7; int count = 0; Dictionary <string, object> users = (Dictionary <string, object>)data ["data"]; object[] obj; foreach (string n in users.Keys) { obj = new object[3]; object[] ob = (object[])users [n]; obj [0] = n; obj [1] = ob [0]; obj [2] = ob [1]; listData.Add(obj); count += Convert.ToInt32(obj [2]); } int max = chatModel.GetCardRequestCount(data ["cid"].ToString(), userModel.effort_lv); // bar.value = count; // bar.max = max; this.GetChild("n19").asTextField.text = count + "/" + max; CardVo vo = DataManager.inst.GetCardVo(data ["cid"].ToString()); card.SetData(vo.id, 1, 1); card.SetText(Tools.GetMessageById(vo.name)); this.GetChild("n11").text = vo.exp + ""; // + "/" + vo.maxExp; this.GetChild("n18").text = "/" + vo.maxExp; list.itemRenderer = Item_Render; list.SetVirtual(); list.numItems = listData.Count; }
/// <summary> Добавление/удаление собеседников в чат</summary> public static bool InviteAndRevokeChatMembers(ModelChat modelChat, List <ModelContact> membersToInvite, List <ModelContact> membersToRevoke) { if (String.IsNullOrWhiteSpace(modelChat.Id) || membersToInvite == null || membersToRevoke == null) { return(false); } var resString = Logic.InviteAndRevokeChatMembers(modelChat.Id, DataSourceContact.ConvertListModelContactFromArrayContactModelManaged(membersToInvite).ToArray(), DataSourceContact.ConvertListModelContactFromArrayContactModelManaged(membersToRevoke).ToArray()); return(!String.IsNullOrWhiteSpace(resString)); }
public void Register() { gameModel = new ModelGame(); alertModel = new ModelAlert(); userModel = new ModelUser(); roleModel = new ModelRole(); guildModel = new ModelGuild(); chatModel = new ModelChat(); cardModel = new ModelCard(); mailModel = new ModelMail(); fightModel = new ModelFight(); rankModel = new ModelRank(); guideModel = new ModelGuide(); shareModel = new ModelShare(); }
/// <summary> Переименовать чат</summary> public static bool RenameModelChat(ModelChat modelChat) { var result = true; if (modelChat == null) { return(false); } var thread = new Thread(obj => Logic.RenameChat(modelChat.Id, modelChat.Title)); thread.Start(); return(result); }
private void EnterBtn_Click(object sender, EventArgs e) { try { var modelchat = new ModelChat(); modelchat.Remoteport = Convert.ToInt32(RemotePortTB.Text); modelchat.Localport = Convert.ToInt32(LocalPortTB.Text); this.Hide(); UserLogin userlogin = new UserLogin(); _ = new UDPChat.Presentor.PresentorUserLogin(userlogin, modelchat); userlogin.ShowDialog(); } catch (Exception ex) { MessageBox.Show(ex.Message, "Error"); } }
public override void Init() { base.Init(); this.Create(Config.VIEW_REQUEST, false, Tools.GetMessageById("22025")); chatModel = ModelManager.inst.chatModel; userModel = ModelManager.inst.userModel; list = this.GetChild("n5").asList; btn = this.GetChild("n4").asButton; btn.text = Tools.GetMessageById("22048"); ld = chatModel.GetRequestCards(); list.itemRenderer = Item_Render; list.SetVirtual(); list.numItems = ld.Count; btn.onClick.Add(Btn_Click); }
/// <summary> Получить чат из текушего списка чатов </summary> public ModelChat GetChatFromList(ModelChat modelChat) { var result = new ModelChat(); var modelChatFromList = CurrentListModelChat.FirstOrDefault(obj => obj.Id == modelChat.Id); if (modelChatFromList != null) { result = modelChatFromList; } else { CurrentListModelChat.Add(modelChat); result = modelChat; } return(result); }
/// <summary> Получить ModelChat из ChatModelManaged </summary> private static ModelChat GetModelChatFromChatModelManaged(ChatModelManaged chatModelManaged) { var result = new ModelChat { Id = chatModelManaged.Id, Active = chatModelManaged.Active, LastModifiedDate = chatModelManaged.LastModifiedDate, NewMessagesCount = chatModelManaged.NewMessagesCount, Title = chatModelManaged.Title, TotalMessagesCount = chatModelManaged.TotalMessagesCount, IsP2P = chatModelManaged.IsP2p, Secured = chatModelManaged.Secured, ListModelContact = DataSourceContact.GetListModelContactFromArrayContactModelManaged(chatModelManaged.Contacts), LastMessage = GetModelChatMessageFromChatMessageModelManaged(chatModelManaged.LastMessage), DraftMessage = GetModelChatMessageFromChatMessageModelManaged(chatModelManaged.DraftMessage) }; return(result); }
public override void Init() { base.Init(); chatModel = ModelManager.inst.chatModel; userModel = ModelManager.inst.userModel; cfg = DataManager.inst.guild; string title = Tools.GetMessageById("22018", new string[] { chatModel.grab_List.Length.ToString(), Tools.Analysis(cfg, "redbag_society_" + (chatModel.grab_Type + 1).ToString() + ".times").ToString() }); this.Create(Config.VIEW_RED2, false, title); // gold = view.GetChild ("n6").asCom.GetChild ("n0").asTextField; list = this.GetChild("n8").asList; // text = view.GetChild ("n2").asTextField; // txt1 = view.GetChild ("n25").asTextField; // txt2 = view.GetChild ("n26").asTextField; // txt3 = view.GetChild ("n27").asTextField; // (view.GetChild ("n6").asCom as ComGold).RemoveListener (); ld = chatModel.GetRedCards(); // gold.text = chatModel.GetRedGolds ().ToString (); // text.text = Tools.GetMessageById ("22018", new string[] { // chatModel.grab_List.Length.ToString (), // Tools.Analysis (cfg, "redbag_society_" + (chatModel.grab_Type + 1).ToString () + ".times").ToString () // }); // int[] counts = chatModel.GetCardRarity (); // txt1.text = Tools.GetMessageById ("14016", new string[]{ counts [0].ToString () }); // txt2.text = Tools.GetMessageById ("14016", new string[]{ counts [1].ToString () }); // txt3.text = Tools.GetMessageById ("14016", new string[]{ counts [2].ToString () }); list.itemRenderer = Item_Render; list.numItems = chatModel.grab_List.Length; }
///<summary> Выбрать чат </summary> public void SetModelChat(ModelChat modelChat) { var modelChatFromList = _viewModelChat.GetChatFromList(modelChat); ListBoxChat.SelectedItem = modelChatFromList; }
/// <summary> Отправить контакты </summary> public static bool SendListModelContactToChat(List <ModelContact> listModelContact, ModelChat modelChat) { var result = true; if (listModelContact == null) { return(false); } foreach (var i in listModelContact) { Logic.SendContactToChat(Logic.PregenerateMessageId(), modelChat.Id, DataSourceContact.GetContactModelManagedFromModelContact(i)); } return(result); }
/// <summary> Инициализация конструкторов </summary> private void InitializatiOnoverallConstructors(ModelChat modelChat) { if (modelChat != null) { var modelChatFromList = ViewModelChat.CurrentViewModelChat.CurrentListModelChat.FirstOrDefault(obj => obj.Id == modelChat.Id); if (modelChatFromList == null) { ViewModelChat.CurrentViewModelChat.CurrentListModelChat.Add(modelChat); CurrentModelChat = modelChat; } else { CurrentModelChat = modelChatFromList; } } _listModelChatMessage = DataSourceChat.GetPagedModelChatMessageByIdChat(CurrentModelChat); foreach (var i in ListModelChatMessage) { var modelContact = ListModelConctactChatMembers.FirstOrDefault(obj => obj?.DodicallId == i?.Sender?.DodicallId); if (modelContact == null) { ListModelConctactChatMembers.Add(i.Sender); } } foreach (var i in _listModelChatMessage) { // Сделать отдельный список с собеседниками+теми кто когда-то был в чате // Брать ссылку на объект из этого списка, тогда все будет работать //var modelContactFromModelChat = CurrentModelChat.ListModelContact.FirstOrDefault(obj => obj.Id == i?.Sender?.Id); var modelContactFromChatMessageSenders = ListModelConctactChatMembers.FirstOrDefault(obj => obj?.DodicallId == i?.Sender?.DodicallId); if (modelContactFromChatMessageSenders != null) { i.Sender = modelContactFromChatMessageSenders; } //if (modelContactFromModelChat != null) i.Sender = modelContactFromModelChat; } SortCurrentListModelChatMessage(); if (!CurrentModelChat.IsP2P) { CurrentModelChat.ListModelContact = ListModelContactSort(CurrentModelChat.ListModelContact); //_dataSourceContact.RefreshModelContactStatus(_listModelChatMessage.Select(obj => obj?.Sender).ToList()); DataSourceContact.RefreshModelContactStatus(GetAllSendersAndUserFromChat()); //_dataSourceContact.RefreshModelContactStatus(CurrentModelChat.ListModelContact); } CommandSendModelMessage = new Command(obj => SendModelMessage()); CommandRenameChatModel = new Command(obj => RenameChatModel()); CommandRemoveFromChat = new Command(obj => RemoveFromChatContactModel((ModelContact)obj)); //CommandInviteAndRevokeChatMembers = new Command(obj => InviteAndRevokeChatMembers()); if (CurrentModelChat.HaveDraft) { CurrentModelChatMessage = CurrentModelChat.DraftMessage; } CallbackRouter.Instance.ListModelChatMessageChanged += OnListModelChatMessageChanged; CallbackRouter.Instance.ListModelContactStatusChanged += OnListModelContactStatusChanged; CallbackRouter.Instance.ListModelContactSubscriptionChanged += OnListModelContactSubscriptionChanged; CallbackRouter.Instance.ModelUserSettingsChanged += OnModelUserSettingsChanged; }
///<summary> Открыть вкладку чатов и выбрать чат </summary> public void OpenChat(ModelChat modelChat) { GridChat_Click(null, null); ViewChat.CurrentViewChat.SetModelChat(modelChat); }
public override void Init() { base.Init(); this.Create(Config.VIEW_CHAT); chatModel = ModelManager.inst.chatModel; userModel = ModelManager.inst.userModel; roleModel = ModelManager.inst.roleModel; cfg = (Dictionary <string, object>)DataManager.inst.guild ["chat"]; list = this.GetChild("n2").asList; txt = this.GetChild("n11").asTextInput; btn_Send = this.GetChild("n9").asButton; btn_Send.text = Tools.GetMessageById("13064"); btn_Red = this.GetChild("n7").asButton; btn_Req = this.GetChild("n8").asButton; btn_Req.text = Tools.GetMessageById("22048"); g1 = this.GetChild("n21").asGroup; g2 = this.GetChild("n22").asGroup; gTop = new GComponent(); this.GetChild("n12").asGraph.ReplaceMe(gTop); gBottom = new GComponent(); this.GetChild("n13").asGraph.ReplaceMe(gBottom); txt.promptText = Tools.GetMessageById("22001"); txt.maxLength = Convert.ToInt32(cfg ["speak_length"]); if (!chatModel.isLoad) { NetHttp.inst.Send(NetBase.HTTP_CHATS, "", (VoHttp vo) => { chatModel.isLoad = true; Dictionary <string, object> data = (Dictionary <string, object>)vo.data; chatModel.chats = (object[])data ["chat_list"]; chatModel.guild = (object[])data ["guild_apply_list"]; chatModel.guild_Join = (object[])data ["guild_join_list"]; chatModel.guild_Modify = (object[])data ["guild_modify_list"]; chatModel.reds = (object[])data ["redbag_list"]; chatModel.support = (object[])data ["support_list"]; chatModel.share = (object[])data ["guild_fight_share"]; ld = chatModel.GetAll(); list.itemRenderer = List_Render; list.SetVirtual(); list.numItems = ld.Count; // btn_Send.onClick.Add(BtnSend_Click); btn_Red.onClick.Add(BtnRed_Click); btn_Req.onClick.Add(BtnReq_Click); this.AddListen(); list.scrollPane.onScroll.Add(Scorll_Change); list.scrollPane.ScrollBottom(); // Scorll_Change (); // DispatchManager.inst.Dispatch (new MainEvent (MainEvent.RED_CHATUPDATE)); rem = TimerManager.inst.Add(0.05f, 1, (float t) => { TimerManager.inst.Remove(rem); if (ld.Count != 0) { list.ScrollToView(ld.Count - 1); } rem = TimerManager.inst.Add(0.1f, 1, (float f) => { TimerManager.inst.Remove(rem); // Scorll_Change (); // DispatchManager.inst.Dispatch (new MainEvent (MainEvent.RED_CHATUPDATE)); }); }); }); } else { ld = chatModel.CheckOutTimeData(); list.itemRenderer = List_Render; list.SetVirtual(); list.numItems = ld.Count; btn_Send.onClick.Add(BtnSend_Click); btn_Red.onClick.Add(BtnRed_Click); btn_Req.onClick.Add(BtnReq_Click); this.AddListen(); list.scrollPane.onScroll.Add(Scorll_Change); // if (ld.Count != 0) // list.ScrollToView (ld.Count - 1, true); // Scorll_Change (); // DispatchManager.inst.Dispatch (new MainEvent (MainEvent.RED_CHATUPDATE)); rem = TimerManager.inst.Add(0.05f, 1, (float t) => { TimerManager.inst.Remove(rem); if (ld.Count != 0) { list.ScrollToView(ld.Count - 1); } rem = TimerManager.inst.Add(0.1f, 1, (float f) => { TimerManager.inst.Remove(rem); // Scorll_Change (); // DispatchManager.inst.Dispatch (new MainEvent (MainEvent.RED_CHATUPDATE)); }); }); } this.CheckRequestCard(); this.CheckSendRedbag(); this.AddGlobalListener(MainEvent.RED_CHATUPDATE, RED_CHATUPDATE); this.AddGlobalListener(MainEvent.CHAT_SENDREQUESTCARD, CHAT_SENDREQUESTCARD); this.AddGlobalListener(MainEvent.CHAT_SENDREDBAG, CHAT_SENDREDBAG); this.AddGlobalListener(MainEvent.CHAT_ISSENDREDBAG, CHAT_ISSENDREDBAG); this.AddGlobalListener(MainEvent.GONGGAO_CHANGE, GONGGAO_CHANGE); Dictionary <string, object> datas = (Dictionary <string, object>)(Tools.Clone(ModelManager.inst.guildModel.my_guild_info)); this.GetChild("n23").text = Tools.GetMessageById("20115", new string[] { (datas ["content"]).ToString() }); }
public PresentorUserLogin(UserLogin view, ModelChat model) { userlogin = view; modelchat = model; userlogin.LoginBtnClick += LoginBtnClickHandler; }
///// <summary> Команда удаления из чата </summary> //public Command CommandNeedGet { get; set; } /// <summary> Конструктор </summary> public ViewModelChatDetail(ModelChat modelChat) { CurrentModelChat = modelChat; InitializatiOnoverallConstructors(null); }