|
|
- ChildHandbookUpgradeView = ChildHandbookUpgradeView or BaseClass(BaseView)
- local ChildHandbookUpgradeView = ChildHandbookUpgradeView
- -- ChildHandbookUpgradeView.TabData = {
- -- [1] = {name = "人物", level = 1},
- -- [2] = {name = "人", level = 1},
- -- [3] = {name = "物", level = 1},
- -- }
-
- function ChildHandbookUpgradeView:__init()
- self.base_file = "child"
- self.layout_file = "ChildHandbookUpgradeView"
- self.layer_name = "Activity"
- self.destroy_imm = true
- self.use_background = true --全屏界面默认使用这个参数
- self.hide_maincancas = true
- self.change_scene_close = true
- self.append_to_ctl_queue = false --是否要添加进界面堆栈
- self.need_show_money = false --是否要显示顶部的金钱栏
- self.is_set_zdepth = true
- self.model = ChildModel:GetInstance()
- self.blur_activity_bg = true
-
- self.attr_item_list = {}
- self.attr_item_sum_list = {}
- self.suit_tab_item_list = {}
- self.load_callback = function ()
- self:LoadSuccess()
- self:AddEvent()
- end
- self.open_callback = function ( )
- self:OpenSuccess()
- end
- self.switch_callback = function(index)
- self:SwitchTab(index)
- end
- self.destroy_callback = function ( )
- self:DestroySuccess()
- end
- end
-
- function ChildHandbookUpgradeView:Open( )
- --self.data = data
- BaseView.Open(self)
- end
-
- function ChildHandbookUpgradeView:LoadSuccess()
- local nodes = {
- "con_money",
- "container/bg:raw",
- "container/btn_level_up:obj",
- "container/btn_level_up/red_dot_up:obj",
- -- "container/collectCon/fight_num:txt",
- "container/collectCon/collect_num:tmp","container/collectCon/percent_num:tmp",
- "container/collectCon:obj", "container/levelCon:obj",
- "container/collectCon/ScrollView_attr/Viewport/Content_attr_collect",
- "container/levelCon/ScrollView_attr/Viewport/Content_attr_level",
- "container/levelCon/level_num:txt", "container/levelCon/level_num_after:txt",
- -- "container/levelCon/fight_num_level:txt",
- "container/levelCon/money_con/money_num:tmp",
- "container/ScrollView_item/Viewport/Content_item",
- "container/levelCon/effectCon",
- "container/levelCon/maxTxt:obj:tmp",
- }
- self:GetChildren(nodes)
-
-
-
- local closeWin_callback = function()
- self:Close()
- end
- self.tabWindowComponent = UITabWindow.New(self.transform,{},select_callback,closeWin_callback,
- self.background_wnd,self.container, UITabWindow.SizeSmallNoTab, false,nil,true)
-
- self.tabWindowComponent:SetBackgroundRes("child_handbook_upgrade_bg_945_533")
- self.tabWindowComponent:SetTitleText("玩具加成")
- self.tabWindowComponent:ChangeShowFlag("Child")
- --lua_resM:setOutsideRawImage(self,self.bg_raw,GameResPath.GetChildIcon("child_hb_upgrade_bg"),false)
-
- local child_coin_good_id = self.model:GetChildCoinId()
- self.model:Fire(ChildConst.UPDATA_CHILD_COIN_NUM,GoodsModel:getInstance():GetTypeGoodsNum(child_coin_good_id))
- end
-
- function ChildHandbookUpgradeView:AddEvent()
-
- local function onBreakSuccess()
- if self:HasOpen() then
- self:UpdateView()
- end
- end
- self.onBreakSuccess_id = GlobalEventSystem:Bind(EventName.GOODS_DECOMPOSE_RESULT, onBreakSuccess)
-
- local function updata_child_dif_suit_info_fun()
- self:SetBoxDesCon()
- end
- self.updata_child_dif_suit_info = self.model:Bind(ChildConst.UPDATA_CHILD_HB_SUIT_INFO, updata_child_dif_suit_info_fun) --
-
-
- local function updata_Child_RED_DOT_VIEW_fun(id)
- if id ~= ChildConst.TabId.ChildHandbook then return end
- self:UpdateRedDot()
- end
- self.updata_Child_RED_DOT_VIEW_id = self.model:Bind(ChildConst.Child_RED_DOT_VIEW, updata_Child_RED_DOT_VIEW_fun) --红点更新
-
-
-
- local function onBtnClickHandler(target, x, y)
- if target == self.btn_level_up_obj then
- self.model:Fire(ChildConst.CHILD_REQ_EVENT, 16537) -- 升级
- end
- end
- AddClickEvent(self.btn_level_up_obj, onBtnClickHandler)
- end
-
- function ChildHandbookUpgradeView:OpenSuccess()
- self:UpdateView()
- end
-
- function ChildHandbookUpgradeView:UpdateView()
- self:SetBoxDesCon()
- self:UpdateRedDot()
- local toy_suit_list = self.model:GetToySuitInfo()
- local function callback( item )
- end
- for k,v in pairs(toy_suit_list) do
- local item = self.suit_tab_item_list[k]
- if item == nil then
- item = ChildHandbookSuitItem.New(self.Content_item)
- self.suit_tab_item_list[k] = item
- end
- --local data = self.model:GetConfigChildSkillInfo(v.skill_id,v.skill_lv)
- self.suit_tab_item_list[k]:SetData(v,callback)
- end
-
- end
-
- function ChildHandbookUpgradeView:SetBoxDesCon( ) --改为整个玩具箱的而不是单独的
-
- local handbook_list = self.model:GetSuitToyList()
- local level = self.model:GetSuitToyBoxLv()
- self.level_num_after_txt.text = level + 1
- local last_level = tonumber(self.level_num_txt.text)
- self.level_num_txt.text = level
- local up_grade_list = self.model:GetChildHandbookToyUpgradeList(level)
-
- -- self.fight_num_level_txt.text = "f"..GetFighting(stringtotable(up_grade_list.add_attr))
- self.money_num_tmp.text = stringtotable(up_grade_list.next_cost)[1][3]
-
- local up_grade_list_next = self.model:GetChildHandbookToyUpgradeList(level+1)
- if TableSize(up_grade_list_next) <= 0 then--满级
- self.level_num_after_txt.text = ""
- self.maxTxt_tmp.text = "已满级"
- else
- self.maxTxt_tmp.text = ""
- end
- if self.has_init then
- if (not self.show_fight_effect) and last_level < level then
- self.show_fight_effect = true
-
- local function call_back( )
- self.show_fight_effect = false
- end
-
- self:ClearUIEffect(self.effectCon)
- self:AddUIEffect("ui_jinjieshuxing", self.effectCon,
- self.layer_name, Vector3(-220, 20, 0), 1.2, false, 0.75, nil, call_back)
- end
- end
- if not self.has_init then -- 第一次初始化标志
- self.has_init = true
- end
-
-
- ----升级属性
- --local attr_list = self.model:GetChildVehicleShowAttrList(vehicle_id,stage)
- local attr_list = self.model:GetChildHandbookItemAttrList(level) -- stringtotable(item.data.attr_list)
- for i=1,#self.attr_item_list do
- self.attr_item_list[i]:SetVisible(false)
- end
- for k,v in pairs(attr_list) do
- local item = self.attr_item_list[k]
- if item == nil then
- item = ChildHandbookAttrItem.New(self.Content_attr_level)
- self.attr_item_list[k] = item
- end
-
- self.attr_item_list[k]:SetData(v.attr_id,v.num_before,v.num_after)
- item:SetVisible(true)
- end
-
- --------总属性,总进度
- local suitRewardList = self.model:GetChildSuitRewardList()
- local progress = 0
- local collectMaxNum = 0
- for k,v in pairs(suitRewardList) do
- progress = progress + v.progress
- collectMaxNum = collectMaxNum + v.collectMaxNum
- end
-
- self.collect_num_tmp.text = "("..progress.."/"..collectMaxNum..")"
- self.percent_num_tmp.text = (progress*100 / collectMaxNum).."%"
-
-
- --------总战力计算,总属性显示handbook_list
- local sum_attr_list = {}
- for k,v in pairs(handbook_list) do
- if v.isActive then
- local attr_list = stringtotable(v.attr_list)
- for k,v_attr in pairs(attr_list) do
- local isHad = false
- for k,v_sum in pairs(sum_attr_list) do
- if v_sum[1] == v_attr[1] then
- isHad = true
- v_sum[2] = v_sum[2] + v_attr[2]
- end
- end
- if isHad == false then
- table.insert(sum_attr_list,v_attr)
- end
- end
- end
- end
-
- for i=1,#self.attr_item_sum_list do
- self.attr_item_sum_list[i]:SetVisible(false)
- end
- for k,v in pairs(sum_attr_list) do
- local item = self.attr_item_sum_list[k]
- if item == nil then
- item = ChildHandbookAttrItem.New(self.Content_attr_collect)
- self.attr_item_sum_list[k] = item
- end
- self.attr_item_sum_list[k]:SetData(v[1],v[2],"collect")
- item:SetVisible(true)
- end
-
- -- self.fight_num_txt.text = "f"..GetFighting(sum_attr_list)
-
- end
-
-
-
- function ChildHandbookUpgradeView:SwitchTab( index )
-
- end
- function ChildHandbookUpgradeView:UpdateRedDot( )
- local red_dot_list = self.model:GetRedDotChildHandbook()
- self.red_dot_up_obj:SetActive(red_dot_list.is_level_up)
-
- end
-
-
- function ChildHandbookUpgradeView:DestroySuccess( )
-
- if self.onBreakSuccess_id then
- self.model:UnBind(self.onBreakSuccess_id)
- self.onBreakSuccess_id = nil
- end
- if self.updata_child_dif_suit_info then
- self.model:UnBind(self.updata_child_dif_suit_info)
- self.updata_child_dif_suit_info = nil
- end
- if self.updata_Child_RED_DOT_VIEW_id then
- self.model:UnBind(self.updata_Child_RED_DOT_VIEW_id)
- self.updata_Child_RED_DOT_VIEW_id = nil
- end
-
- if self.tabWindowComponent then
- self.tabWindowComponent:DeleteMe()
- self.tabWindowComponent = nil
- end
-
- for i, v in ipairs(self.attr_item_sum_list) do
- v:DeleteMe()
- v = nil
- end
- self.attr_item_sum_list = {}
-
- for i, v in ipairs(self.suit_tab_item_list) do
- v:DeleteMe()
- v = nil
- end
- self.suit_tab_item_list = {}
-
-
- for i, v in ipairs(self.attr_item_list) do
- v:DeleteMe()
- v = nil
- end
- self.attr_item_list = {}
- end
|