|
|
- GuildEventPartyView = GuildEventPartyView or BaseClass(BaseItem)
- local GuildEventPartyView = GuildEventPartyView
-
- function GuildEventPartyView:__init()
- self.base_file = "guild"
- self.layout_file = "GuildEventPartyView"
- self.model = GuildModel:getInstance()
-
- self:Load()
- end
-
- function GuildEventPartyView:Load_callback()
- self.nodes = {
- "bg:raw",
- "event_time:tmp",--活动时间
- "enter_btn/reddot:obj",
- -- 活动奖励容器
- "reward_scroll", "reward_scroll/Viewport/reward_con",
- -- 入口按钮
- "enter_btn:obj",
- "help_btn:obj",
- "title_txt_img:img",
- }
- self:GetChildren(self.nodes)
- lua_resM:setOutsideRawImage(self, self.bg_raw, GameResPath.GetViewBigBg("guild_event_party_bg_1020_618"), false)
- lua_resM:setOutsideImageSprite(self,self.title_txt_img_img,GameResPath.GetGuildImage("guild_event_ad_txt2_pointfilter"))
- self:AddEvents()
- if self.need_refresh_evt_time then
- self:UpdateEventTime()
- self:UpdateView()
- end
- end
-
- function GuildEventPartyView:AddEvents( )
- local on_click = function ( click_obj )
- if self.enter_btn_obj == click_obj then -- 进入社团驻地场景
- self.model:Fire(GuildModel.ENTER_GUILD_BASE)
- elseif click_obj == self.help_btn_obj then
- EventSystem.Fire(GlobalEventSystem,EventName.OPEN_INSTRUCTION_VIEW, 40007)
- end
- end
- AddClickEvent(self.enter_btn_obj, on_click, LuaSoundManager.SOUND_UI.NONE)
- AddClickEvent(self.help_btn_obj, on_click, LuaSoundManager.SOUND_UI.NONE)
- local function updatePartyRed(type)
- if type == GuildEventType.GuildParty then
- self:UpdateRedDot()
- end
- end
- self:BindEvent(self.model, GuildModel.UPDATE_RED_DOT_BY_TYPE, updatePartyRed)
- end
-
- function GuildEventPartyView:UpdateView( )
- self:UpdateRewardItem()
- self:UpdateRedDot()
- end
-
- -- 这里只传入活动日历中的活动时间相关数据,活动协议内容界面自己获取
- function GuildEventPartyView:SetEventAcData( evt_time_data)
- self.evt_time_data = evt_time_data
- if self.is_loaded then
- self.need_refresh_evt_time = false
- self:UpdateView()
- self:UpdateEventTime()
- self:UpdateRedDot()
- else
- self.need_refresh_evt_time = true
- end
- end
-
- -- 设置活动的开始时间
- function GuildEventPartyView:UpdateEventTime( )
- self.event_time_tmp.text = self.model:GetGuildEventOpenTime(self.evt_time_data.module_id, self.evt_time_data.module_sub)
- end
-
- function GuildEventPartyView:UpdateRewardItem( )
- local reward_data = DailyModel.Instance:GetRewardList(400,7,1)
- self.reward_item_creator = self.reward_item_creator or self:AddUIComponent(UI.ItemListCreator)
- local info = {
- data_list = reward_data,
- item_con = self.reward_con,
- scroll_view = self.reward_scroll,
- obj_pool_type = UIObjPool.UIType.AwardItem,
- item_width = 78,
- --item_height = 78,
- start_x = 5,
- start_y = -6,
- space_x = 9,
- create_frequency = 0.01,
- alignment = UnityEngine.TextAnchor.UpperLeft,
- on_update_item = function(item, i, v)
- local goods_Id, lock = GoodsModel:getInstance():GetMappingTypeId(v[1], v[2])
- local goodVo = GoodsModel:getInstance():GetGoodsBasicByTypeId(goods_Id)
- if goodVo then
- item:SetData(goodVo.type_id, v.count , goodVo.color, nil, lock)
- end
- end,
- }
- self.reward_item_creator:UpdateItems(info)
- end
-
- function GuildEventPartyView:UpdateRedDot( )
- -- self.reddot_obj:SetActive(self.model:GetGuildEventTabRed("400@7"))
- -- 2021.3.23 优化需求:社团活动页签不再给红点
- self.reddot_obj:SetActive(false)
- end
-
- function GuildEventPartyView:__delete( )
-
- end
|