|
|
-
- StrengthMainView = StrengthMainView or BaseClass(BaseItem)
-
- StrengthMainView.Grade = {
- [1] = "SSS",
- [2] = "SS",
- [3] = "S",
- [4] = "A",
- [5] = "B",
- [6] = "C",
- [7] = "D",
- }
-
- function StrengthMainView:__init()
- self.base_file = "strength"
- self.layout_file = "StrengthMainView"
- self.layer_name = "UI"
-
- self.model = StrengthModel:getInstance()
- self.mainRoleVo = RoleManager.Instance.mainRoleInfo
- self.item_list = {}
- self.is_load_model = false
- -- self.use_local_view = true
-
- self:Load()
- end
-
- function StrengthMainView:Load_callback()
- self.content,
- self.npcCon
- = GetChildTransforms(self.transform,
- {
- "ScrollView/Viewport/Content",
- "rolePanel/npcCon",
- })
-
- self.now_combat,
- self.ideal_combat,
- self.mark
- = GetChildTexts(self.transform,
- {
- "nowCombat",
- "idealCombat",
- "markText",
- })
-
- self.girlImg,
- self.markImg,
- self.bg,
- self.title_img
- = GetChildImages(self.transform,
- {
- "girlImg",
- "markImg",
- "bg",
- "title",
- })
- lua_resM:setOutsideImageSprite(self,self.bg,GameResPath.GetJpgImage("bqui_bg.jpg"), false)
- -- lua_resM:setOutsideImageSprite(self,self.scroll_title_bg,GameResPath.GetJpgImage("mys_buy_bg.jpg"),false)
- lua_resM:setOutsideImageSprite(self, self.girlImg, GameResPath.GetCommonImage("bqui_rw"), false)
- lua_resM:setOutsideImageSprite(self, self.title_img, GameResPath.GetStrengthImage("bqui_pfbg"), false)
- if self.need_refreshData then
- self:SetData(self.index)
- end
- self:InitEvent()
- end
-
- function StrengthMainView:InitEvent()
- local function onExpUpdate()
- self:SetPropData()
- end
- self.exp_update_id = self.mainRoleVo:BindOne("exp",onExpUpdate)
-
- local function onUpdateView() --刷新界面 现在VIP特殊 有个标签领取完后消失
- if self.index then
- self:UpdateView()
- end
- end
- self.update_view_id = self.model:Bind(StrengthModel.UPDATE_VIEW_AFTER_CLICK, onUpdateView)
- end
-
- function StrengthMainView:SetData(index)
- self.index = index
-
- if self.is_loaded then
- self:UpdateView()
- self:SetPropData()
- if not self.is_load_model then
- self:LoadNPCModel()
- end
- else
- self.need_refreshData = true
- end
- end
-
- function StrengthMainView:UpdateView()
- self.item_info = self.model:GetItemListByIndex(self.index)
-
- if self.index == 1 then
- self.type_id = 1 --进度条
- else
- self.type_id = 2 --星星
- end
- local len = TableSize(self.item_info)
- for i,v in ipairs(self.item_list) do
- v:SetVisible(false)
- end
- self.content.sizeDelta = Vector2(self.content.sizeDelta.x, len*97)
- for i=1, len do
- local item = self.item_list[i]
- if item == nil then
- item = StrengthMainItem.New(self.content)
- self.item_list[i] = item
- end
- item:SetPosition(0,-(i-1)*97)
- item:SetData(self.type_id, self.item_info[i], i)
- item:SetVisible(true)
- end
- end
-
- function StrengthMainView:SetPropData()
- local cur_level = self.mainRoleVo.level
- local min_lv = 100
- local max_lv = 105
- -- local conf_len = TableSize(self.model.fight_model)
- -- local max_lev_conf = 99 + conf_len --因为配置表是从100级开始的 所以表的最后一个数据的等级是表长+99
- -- if cur_level >= max_lev_conf then
- -- cur_level = max_lev_conf
- -- end
- -- for i,v in ipairs(self.model.fight_model) do
- -- if cur_level >= v.lv_min then
- -- min_lv = v.lv_min
- -- max_lv = v.lv_max
- -- end
- -- end
-
- local cur_fightnum = self.mainRoleVo.fighting
- local id = 1
- local have_power = false
- for i,v in pairs(self.model.fight_model) do
- if cur_level >= v.lv_min and cur_level <= v.lv_max then
- id = v.lv_min
- have_power = true
- break
- end
- end
- if have_power == false then
- -- self.mark.text = ""
- self.markImg.gameObject:SetActive(false)
- return
- end
- -- if not self.model.fight_model[cur_level] then
- -- self.mark.text = ""
- -- return
- -- end
- local rec_fightnum = self.model.fight_model[id].fight_num
- local per = cur_fightnum / rec_fightnum
- per = per * 100
- local grade = 5 --战力等级
- local config = Config.Improvefightcondition
- local all_level = #config
- if per < config[all_level].condition then
- grade = config[all_level].icon
- else
- grade = 1
- for i=0,all_level do
- if config[all_level-i] then
- if per > config[all_level-i].condition then
- grade = config[all_level-i].icon
- else
- break
- end
- else
- break
- end
- end
- end
- self.model.grade = grade
-
- self.now_combat.text = self.mainRoleVo.fighting
- -- self.ideal_combat.text = cur_level.."级推荐战力:"..rec_fightnum
- self.ideal_combat.text = rec_fightnum
- -- self.mark.text = StrengthMainView.Grade[grade]
- lua_resM:setImageSprite(self, self.markImg,"strength_asset", "icon_"..grade, true)
- end
-
- function StrengthMainView:LoadNPCModel()
- -- local model_id = 201039 --npc
- -- lua_resM:SetRoleModel(self, self.npcCon, nil, nil, model_id, nil,
- -- nil, SceneBaseType.Npc, self.layer_name, Vector3(10,175,0), {"idle"}, false, 250, Vector3(0,-220,0),nil,nil,nil,nil,nil,nil,nil)
- self.is_load_model = true
- end
-
- function StrengthMainView:__delete()
- for k,v in pairs(self.item_list) do
- v:DeleteMe()
- v = nil
- end
- self.item_list = {}
- if self.exp_update_id then
- self.mainRoleVo:UnBind(self.exp_update_id)
- self.exp_update_id = nil
- end
-
- if self.update_view_id then
- self.model:UnBind(self.update_view_id)
- self.update_view_id = nil
- end
- end
|