local FGInvitedMsgView = import('.FamilyInvitedMsgView') local FamilyEventView = {} local M = FamilyEventView function FamilyEventView.new(root) setmetatable(M, { __index = root }) local self = setmetatable({}, { __index = M }) local mgr_ctr = self._mgr_ctr mgr_ctr:AddEventListener(GroupMgrEvent.AddPlay, handler(self, self._evtAddPlay)) mgr_ctr:AddEventListener(GroupMgrEvent.DelPlay, handler(self, self._evtDelPlay)) mgr_ctr:AddEventListener(GroupMgrEvent.UpdatePlay, handler(self, self._evtUpdatePlay)) mgr_ctr:AddEventListener(GroupMgrEvent.AddRoom, handler(self, self._evtAddRoom)) mgr_ctr:AddEventListener(GroupMgrEvent.DelRoom, handler(self, self._evtDelRoom)) mgr_ctr:AddEventListener(GroupMgrEvent.UpdateRoom, handler(self, self._evtUpdateRoom)) mgr_ctr:AddEventListener(GroupMgrEvent.UpdatePlayerInfo, handler(self, self._evtUpdatePlayerInfo)) --mgr_ctr:AddEventListener(GroupMgrEvent.BeInvited, handler(self, self._evtInvited)) mgr_ctr:AddEventListener(GroupMgrEvent.UpdateGroup, handler(self, self._evtUpdateGroup)) mgr_ctr:AddEventListener(GroupMgrEvent.NewMailTip, handler(self, self._evtNewMailTip)) mgr_ctr:AddEventListener(GroupMgrEvent.InviteResponse, handler(self, self._evtInviteResponse)) mgr_ctr:AddEventListener(GroupMgrEvent.IsOpenChatRoom, handler(self, self._evtIsOpenChatRoom)) mgr_ctr:AddEventListener(GroupMgrEvent.ChatRoomData, handler(self, self._evtChatRoomData)) mgr_ctr:AddEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply)) mgr_ctr:AddEventListener(GroupMgrEvent.OnNewRecord, handler(self, self._evtOnNewRecord)) mgr_ctr:AddEventListener(GroupMgrEvent.Onpush_assistant, handler(self, self._evtOnPush_assistant)) mgr_ctr:AddEventListener(GroupMgrEvent.OnMemberState, handler(self, self._evtOnMemberState)) mgr_ctr:AddEventListener(GroupMgrEvent.OnFamilyReflash, handler(self, self._evtOnPush_assistant)) mgr_ctr:AddEventListener(GroupMgrEvent.OnFamilyRoomReflash, handler(self, self._evtOnFamilyRoomReflash)) return self end function M:RemoveAll() local mgr_ctr = self._mgr_ctr mgr_ctr:RemoveEventListener(GroupMgrEvent.AddPlay, handler(self, self._evtAddPlay)) mgr_ctr:RemoveEventListener(GroupMgrEvent.DelPlay, handler(self, self._evtDelPlay)) mgr_ctr:RemoveEventListener(GroupMgrEvent.UpdatePlay, handler(self, self._evtUpdatePlay)) mgr_ctr:RemoveEventListener(GroupMgrEvent.AddRoom, handler(self, self._evtAddRoom)) mgr_ctr:RemoveEventListener(GroupMgrEvent.DelRoom, handler(self, self._evtDelRoom)) mgr_ctr:RemoveEventListener(GroupMgrEvent.UpdateRoom, handler(self, self._evtUpdateRoom)) mgr_ctr:RemoveEventListener(GroupMgrEvent.UpdatePlayerInfo, handler(self, self._evtUpdatePlayerInfo)) --mgr_ctr:RemoveEventListener(GroupMgrEvent.BeInvited, handler(self, self._evtInvited)) mgr_ctr:RemoveEventListener(GroupMgrEvent.UpdateGroup, handler(self, self._evtUpdateGroup)) mgr_ctr:RemoveEventListener(GroupMgrEvent.NewMailTip, handler(self, self._evtNewMailTip)) mgr_ctr:RemoveEventListener(GroupMgrEvent.InviteResponse, handler(self, self._evtInviteResponse)) mgr_ctr:RemoveEventListener(GroupMgrEvent.IsOpenChatRoom, handler(self, self._evtIsOpenChatRoom)) mgr_ctr:RemoveEventListener(GroupMgrEvent.ChatRoomData, handler(self, self._evtChatRoomData)) mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewApply, handler(self, self._evtOnNewApply)) mgr_ctr:RemoveEventListener(GroupMgrEvent.OnNewRecord, handler(self, self._evtOnNewRecord)) mgr_ctr:RemoveEventListener(GroupMgrEvent.Onpush_assistant, handler(self, self._evtOnPush_assistant)) mgr_ctr:RemoveEventListener(GroupMgrEvent.OnMemberState, handler(self, self._evtOnMemberState)) mgr_ctr:RemoveEventListener(GroupMgrEvent.OnFamilyReflash, handler(self, self._evtOnFamilyRoomReflash)) end function M:_evtAddPlay(...) local arg = { ... } print("family event _evtAddPlay") end function M:_evtDelPlay(...) local arg = { ... } print("family event _evtDelPlay") end function M:_evtUpdatePlay(...) local arg = { ... } print("family event _evtUpdatePlay") end function M:_evtAddRoom(...) local arg = { ... } print("family event _evtAddRoom") end function M:_evtDelRoom(...) local arg = { ... } print("family event _evtDelRoom") end function M:_evtUpdateRoom(...) local arg = { ... } print("family event _evtUpdateRoom") end function M:_evtUpdatePlayerInfo(...) local arg = { ... } print("family event _evtUpdatePlayerInfo") end function M:_evtInvited(...) local arg = { ... } print("family event _evtInvited") end function M:_evtUpdateGroup(...) local arg = { ... } local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end view:ReflashFamilyList() print("family event _evtUpdateGroup") end function M:_evtNewMailTip(...) local arg = { ... } print("family event _evtNewMailTip") end function M:_evtOnNewApply(...) print("_evtOnNewApply") local arg = { ... } pt(arg) local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end view:RefalshMoreBtn() self._child_familyAuditNumber:OnNewApply(arg) end function M:_evtInviteResponse(...) local arg = { ... } local invite_id = arg[1] local g_name = arg[2] local roomid = arg[3] local pid = arg[4] local groupid = arg[5] local roomCtr = ControllerManager.GetController(RoomController) local gameId = DataManager.groups:get(groupid):getPlay(pid).gameId UIPackage.AddPackage('base/newgroup/ui/FGAssist') local imv = FGInvitedMsgView.new( self._root_view, groupid, pid, invite_id, function() roomCtr:PublicJoinRoom( Protocol.WEB_FG_JOIN_ROOM, roomid, groupid, function(response) if (response.ReturnCode == -1) then ViewUtil.ErrorMsg(self._root_view, response.ReturnCode, 'response.ReturnCode == -1') -- RestartGame() return end if response.ReturnCode ~= 0 then ViewUtil.ErrorMsg(self._root_view, response.ReturnCode, '进入房间失败') -- ViewManager.ChangeView(ViewManager.View_Lobby) return else UpdateBeat:Remove(self.OnUpdate, self) ViewManager.ChangeView(ViewManager.View_Main, gameId) end end, groupid, pid ) end ) -- imv:FillData(data) imv:Show() end function M:_evtIsOpenChatRoom(...) local arg = { ... } print("_evtIsOpenChatRoom") pt(arg) end function M:_evtChatRoomData(...) local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end local arg = { ... } --totalScore view.com_FamilyChatRoom.ChatRoomData = arg --view.com_FamilyChatRoom.list_chat.numItems = #arg view.com_FamilyChatRoom:Refalsh() end function M:_evtOnNewRecord(...) local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end local arg = { ... } view.com_FamilyChatRoom:OnNewChatRefalsh(arg[1]) end function M:_evtOnMemberState(...) local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end view:ReflashMember(...) --[[ local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end local arg = { ... } local group = DataManager.groups:get(view._group.id) for _, player in pairs(arg[1].offlineUserId) do group.memberMap[player].online = 0 end for _, player in pairs(arg[1].onlineUserId) do group.memberMap[player].online = 0 end for _, player in pairs(arg[1].playingUserId) do group.memberMap[player].playing = "startPlaying" end ]] end function M:_evtOnPush_assistant(...) local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end local arg = { ... } local groupId = arg[1].id local lev = arg[1].lev if groupId ~= view._group.id then return end view:ChangeOther(lev + 1) end -- reflashType == "joinFamily" 成功加入了亲友圈 function M:_evtOnFamilyReflash(...) local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end local arg = { ... } local reflashType = arg[1].reflashType local gourpId = arg[1].gourpId local parm = arg[1].parm if reflashType == "joinFamily" then view:Reflash() end end function M:_evtOnFamilyRoomReflash(...) local arg = { ... } print("_evtOnFamilyRoomReflash") pt(arg) local groupId = arg[1] local view = ViewManager.GetCurrenView() if view.class ~= "FamilyMainView" then return end if groupId ~= view._group.id then return end view:UpdateFamilyRoom(nil, groupId) end return M