require("game.proto.339.Require339") require("game.redPacket.RedPacketModel") -- 社团红包界面 require("game.redPacket.GuildRedPacketView") -- 社团红包界面 require("game.redPacket.GuildRedPacketItem") -- 社团红包子节点 require("game.redPacket.GuildRedPacketResultView") -- 社团红包领取结果界面 RedPacketController = RedPacketController or BaseClass(BaseController) function RedPacketController:__init() RedPacketController.Instance = self self.model = RedPacketModel:GetInstance() self:InitEvent() self:registerAllProtocals() end function RedPacketController:GetInstance() if RedPacketController.Instance == nil then RedPacketController.New() end return RedPacketController.Instance end function RedPacketController:InitEvent() local function onRequestHandler(...) local args = {...} if args[1] == 33903 then self:SendFmtToGame(args[1],"is",args[2],args[3]) elseif args[1] == 33902 then self:SendFmtToGame(args[1],"l",args[2]) elseif args[1] == 33905 then self:SendFmtToGame(args[1],"li",args[2],args[3]) elseif args[1] == 33909 then --发红包 self:SendFmtToGame(args[1],"l",args[2]) else self:SendFmtToGame(args[1]) end end self.model:Bind(RedPacketModel.REQUEST_CCMD_EVENT,onRequestHandler) local function onGameStart() -- self.model:Fire(RedPacketModel.REQUEST_CCMD_EVENT,33907) self.model:CheckGuildRedPacketRed() end GlobalEventSystem:Bind(EventName.GAME_START,onGameStart) EventSystem.Bind(GlobalEventSystem,ServerTimeModel.DAY_CHANGE, function() local main_vo = RoleManager:getInstance():GetMainRoleVo() if main_vo.guild_id > 0 then self.model:Fire(RedPacketModel.REQUEST_CCMD_EVENT,33901) end end) ------------------------------------------------------- -- 打开社团红包界面 local function open_guild_redpacket_view(show) if show then if not self.guild_redpacket_view then self.guild_redpacket_view = GuildRedPacketView.New() end if not self.guild_redpacket_view:HasOpen() then self.guild_redpacket_view:Open() end else if self.guild_redpacket_view then self.guild_redpacket_view:Close() end end end self.model:Bind(RedPacketModel.OPEN_GUILD_REDPACKET_VIEW, open_guild_redpacket_view) -- 打开社团红包领取结果界面 local function open_guild_rpresult_view(vo) if not vo then return end if not self.guild_rpresult_view then self.guild_rpresult_view = GuildRedPacketResultView.New() end if not self.guild_rpresult_view:HasOpen() then self.guild_rpresult_view:Open(vo) else self.guild_rpresult_view:ReOpen(vo) end end self.model:Bind(RedPacketModel.OPEN_GUILD_REDPACKET_RESULT_VIEW, open_guild_rpresult_view) end function RedPacketController:registerAllProtocals() self:RegisterProtocal(33900,"handle33900") self:RegisterProtocal(33901,"handle33901") self:RegisterProtocal(33902,"handle33902") -- self:RegisterProtocal(33903,"handle33903") self:RegisterProtocal(33904,"handle33904") self:RegisterProtocal(33905,"handle33905") -- self:RegisterProtocal(33906,"handle33906") -- self:RegisterProtocal(33907,"handle33907") self:RegisterProtocal(33908,"handle33908") self:RegisterProtocal(33909,"handle33909") -- self:RegisterProtocal(33911,"handle33911") end function RedPacketController:handle33900() local vo = SCMD33900.New(true) if vo.errcode ~= 1 then ErrorCodeShow(vo.errcode) end end function RedPacketController:handle33901() local vo = SCMD33901.New(true) self.model:SetGuildRedpacketList(vo) self.model:CheckGuildRedPacketRed() self.model:CheckShowMsgTip() self.model:Fire(RedPacketModel.UPDATE_GUILD_RP_LIST) -- 更新社团红包列表清单 GuildModel:getInstance():CheckGuildRedDot(Config.ConfigGuild.TabId.MainInfo, true) -- 刷新社团系统的红包红点 end function RedPacketController:handle33902() local vo = SCMD33902.New(true) self.model:UpdateGuildRedpacket(vo) self.model:CheckGuildRedPacketRed() self.model:Fire(RedPacketModel.OPEN_GUILD_REDPACKET_RESULT_VIEW, vo) self.model:Fire(RedPacketModel.UPDATE_GUILD_RP_LIST) -- 更新社团红包列表清单 GuildModel:getInstance():CheckGuildRedDot(Config.ConfigGuild.TabId.MainInfo, true) -- 刷新社团系统的红包红点 self.model:CheckShowMsgTip() self.model:Fire(RedPacketModel.REQUEST_CCMD_EVENT,33908) end -- function RedPacketController:handle33903() -- local vo = SCMD33903.New(true) -- if vo.errcode == 1 then -- Message.show("发送成功~") -- self.model:Fire(RedPacketModel.UPDATE_SEND_RED_PACKET_INFO,vo) -- else -- ErrorCodeShow(vo.errcode) -- end -- end function RedPacketController:handle33904() local vo = SCMD33904.New(true) self.model:UpdateGuildNewRedPacket(vo) self.model:CheckGuildRedPacketRed() self.model:Fire(RedPacketModel.UPDATE_GUILD_RP_LIST) -- 更新社团红包列表清单 GuildModel:getInstance():CheckGuildRedDot(Config.ConfigGuild.TabId.MainInfo, true) -- 刷新社团系统的红包红点 end function RedPacketController:handle33905() local vo = SCMD33905.New(true) if vo.errcode == 1 then Message.show("发送成功") else ErrorCodeShow(vo.errcode) end end -- function RedPacketController:handle33906() -- local vo = SCMD33906.New(true) -- self.model:SetOnlineNum(vo.num) -- self.model:Fire(RedPacketModel.UPDATE_ON_LINE) -- end -- function RedPacketController:handle33907( ) -- local vo = SCMD33907.New(true) -- self.model:SetSingleGetAwardLimit(vo) -- end function RedPacketController:handle33908( ) local vo = SCMD33908.New(true) self.model:SetGuildRedPacketRecord(vo) self.model:CheckGuildRedPacketRed() GuildModel:getInstance():CheckGuildRedDot(Config.ConfigGuild.TabId.MainInfo, true) -- 刷新社团系统的红包红点 end function RedPacketController:handle33909() local vo = SCMD33909.New(true) if vo.errcode ~= 1 then ErrorCodeShow(vo.errcode) end end -- function RedPacketController:handle33911() -- local vo = SCMD33911.New(true) -- self.model:UpdateLuckyMoney(vo) -- end