123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677 |
- ---@class KLGemInlayPanel:UIKmlLuaPanelBase
- ---@field view KLGemInlayPanelView
- ---@field equipPanel KLGemEquipUIPanel
- local KLGemInlayPanel = class(UIKmlLuaPanelBase)
- local this =KLGemInlayPanel
- ---创建时调用一次
- function this:Init()
- ---第一次打开界面
- self.firstOpen = true
- self:OpenGemEquipUI()
-
- InfoManager.gemSlateInfo:SetOptEquip(nil)
- InfoManager.gemSlateInfo:ChangeGemPosId(nil)
- InfoManager.gemSlateInfo:ChangeEquipPosId(nil)
-
- self.curSelectGemInlayType=E_GemInlayType.Gem
- self.curSelectSchemeType=1
-
- self.bagItems = {}
- self.currentAttList = {}
- GUI:DataListInitData(self.view.datalist_gemAttrs, function()
- return self:CurrentCountFunc()
- end, function(realIndex)
- return self:CurrentGetFunc(realIndex)
- end, function(realIndex, kmlcontrol)
- return self:CurrentInitFunc(realIndex, kmlcontrol)
- end, function(realIndex, kmlcontrol)
- return self:CurrentUpdateFunc(realIndex, kmlcontrol)
- end)
-
- GUI:DataListInitData(self.view.datalist_AllGemAttrs, function()
- return self:AllGemAttrCountFunc()
- end, function(realIndex)
- return self:AllGemAttrCurrentGetFunc(realIndex)
- end, function(realIndex, kmlcontrol)
- return self:AllGemAttrCurrentInitFunc(realIndex, kmlcontrol)
- end, function(realIndex, kmlcontrol)
- return self:AllGemAttrCurrentUpdateFunc(realIndex, kmlcontrol)
- end)
-
- end
- ---打开萤石装备界面
- function this:OpenGemEquipUI()
- local selectType = nil
- local equip_boot = SL:GetMetaValue("EQUIP_TARGET_DATA", 1, EEquipSlotType.TwoHandWeapon)
- if equip_boot then-- 策划要求先选中武器
- selectType = EEquipSlotType.Weapon
- end
- if not selectType then
- for index=1, 15 do
- if table.contains(InfoManager.gemSlateInfo.CanInlayGemEquipPosTbl,tostring(index)) then
- local equip = SL:GetMetaValue("EQUIP_TARGET_DATA", 1, index)
- if equip then
- selectType = index
- break
- end
- end
- end
- end
-
- GUI:UIPanel_Open("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel",
- nil,
- nil,
- { x = -465, hideTips = true, callBack = self.CloseEquipUi,selectType = selectType},
- true,
- function(equipPanel)
- self.equipPanel = equipPanel
- SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_SCHEME_INFO)
- end)
- end
- E_GemInlayType = {
- Gem = enum(0),
- Slate = enum(1),
- }
- ---注册UI事件和服务器消息
- function this:RegistEvents()
- GUI:AddOnClickEvent(self.view.CloseButton, self, self.ClosePanel)
- GUI:AddOnClickEvent(self.view.GemCellImg1, self, self.OnClickGemCellImg1)
- GUI:AddOnClickEvent(self.view.GemCellImg2, self, self.OnClickGemCellImg2)
- GUI:AddOnClickEvent(self.view.GemCellImg3, self, self.OnClickGemCellImg3)
- GUI:AddOnClickEvent(self.view.SlateImg, self, self.OnClickSlateImg)
- GUI:AddOnClickEvent(self.view.zhu_click, self, self.OnClickOptEquip)
- GUI:AddOnClickEvent(self.view.HelpBtn, self, self.OnClickHelpBtn)
-
- GUI:SetToggleOnValueChange(self.view.schemeToggle1, self, self.SchemeToggleChanged,1)
- GUI:SetToggleOnValueChange(self.view.schemeToggle2, self, self.SchemeToggleChanged,2)
- GUI:SetToggleOnValueChange(self.view.gemBtn, self, self.GemSlateToggleChanged,E_GemInlayType.Gem)
- --GUI:SetToggleOnValueChange(self.view.slateBtn, self, self.GemSlateToggleChanged,E_GemInlayType.Slate)
- SL:RegisterLUAEvent(LUA_EVENT_EQUIP_GRID_CLICK, self.OnClickEquipPanelPos, self)
- SL:RegisterLUAEvent(LUA_EVENT_REFRESH_GEM_SLATE_INFO, self.RefreshPanelShow, self)
- SL:RegisterLuaNetMsg(LuaMessageIdToClient.RES_GEM_SCHEME, self.InitSchemeByMsg, self)
-
- SL:RegisterLUAEvent(LUA_EVENT_FORGE_GROUP_PANEL_CLOSE, self.ClosePanel, self)
- end
- ---创建或者刷新界面数据时调用
- function this:Refresh()
- self:RefreshRedPoint()
- end
- function this:RefreshPanelShow()
- if self.firstOpen then
- self.firstOpen = false
- local equip_boot = SL:GetMetaValue("EQUIP_TARGET_DATA", 1, EEquipSlotType.TwoHandWeapon)
- if equip_boot then
- InfoManager.gemSlateInfo:ChangeEquipPosId(EEquipSlotType.TwoHandWeapon)
- self.bagIndex = nil
- self:ClickEquip(equip_boot)
- self.selectEquipType = EEquipSlotType.TwoHandWeapon
- return
- end
- for index=1, 15 do
- if table.contains(InfoManager.gemSlateInfo.CanInlayGemEquipPosTbl,tostring(index)) then
- local equip = SL:GetMetaValue("EQUIP_TARGET_DATA", 1, index)
- if equip then
- InfoManager.gemSlateInfo:ChangeEquipPosId(index)
- self.bagIndex = nil
- self.selectEquipType = index
- self:ClickEquip(equip)
- return
- end
- end
- end
- self:RefreshGemSlateShow(self.curSelectGemInlayType)
- return
- end
- self:RefreshGemSlateShow(self.curSelectGemInlayType)
- end
- function this:CurrentCountFunc()
- return #self.currentAttList
- end
- function this:CurrentGetFunc(realIndex)
-
- end
- function this:CurrentInitFunc(realIndex,kmlcontrol)
- end
- function this:CurrentUpdateFunc(realIndex,kmlcontrol)
- local data = self.currentAttList[realIndex + 1]
- local singleAttrTxt = GUI:GetChildControl(self.view.datalist_gemAttrs, realIndex, "singleAttrTxt")
- local cfg=SL:GetConfig("cfg_equip_gem", data)
- local attrTbl = SL:GetConfig("cfg_att_info", cfg.gemAtt[1][1])
- local slateCfg
- local addValue=0
- local factor=1
- if self.curSelectGemInlayType==E_GemInlayType.Slate then
- local inlaySlate=InfoManager.gemSlateInfo:GetCurActiveSchemeGem(nil,true)
- if inlaySlate then
- slateCfg=SL:GetConfig("cfg_equip_stoneBoard", inlaySlate)
- end
- if slateCfg then
- for k, v in pairs(slateCfg.stoneAtt2) do
- if cfg.gemBelong[1]==v[1] then
- factor=v[2]*0.0001
- break
- end
- end
- else
- factor=0
- end
- -- GUI:SetActive(self.view.NoAttribute,not slateCfg)
- end
- local attrName=attrTbl.showname
- addValue=math.floor(cfg.gemAtt[1][2]*factor)
- if cfg.gemAtt[2] then
- if cfg.gemAtt[1][1]==200011 and cfg.gemAtt[2][1]==200021 then
- attrName="攻击力"
- addValue=string.format("%s~%s",math.floor(cfg.gemAtt[1][2]*factor),math.floor(cfg.gemAtt[2][2]*factor))
- elseif cfg.gemAtt[1][1]==201011 and cfg.gemAtt[2][1]==201021 then
- attrName="攻击力"--"物理攻击力"
- addValue=string.format("%s~%s",math.floor(cfg.gemAtt[1][2]*factor),math.floor(cfg.gemAtt[2][2]*factor))
- elseif cfg.gemAtt[1][1]==202011 and cfg.gemAtt[2][1]==202021 then
- attrName="攻击力"--"魔法攻击力"
- addValue=string.format("%s~%s",math.floor(cfg.gemAtt[1][2]*factor),math.floor(cfg.gemAtt[2][2]*factor))
- elseif cfg.gemAtt[1][1]==205011 and cfg.gemAtt[2][1]==205021 then
- attrName="攻击力"--"诅咒攻击力"
- addValue=string.format("%s~%s",math.floor(cfg.gemAtt[1][2]*factor),math.floor(cfg.gemAtt[2][2]*factor))
- elseif cfg.gemAtt[1][1]==203011 and cfg.gemAtt[2][1]==203021 then
- attrName="攻击力"--"天鹰攻击力"
- addValue=string.format("%s~%s",math.floor(cfg.gemAtt[1][2]*factor),math.floor(cfg.gemAtt[2][2]*factor))
- end
- end
-
- GUI:Text_setString(singleAttrTxt,string.format("%s %s:<color=#00ff00ff>%s</color>",cfg.gemName,attrName,addValue))
- end
- function this:AllGemAttrCountFunc()
- return #InfoManager.gemSlateInfo.ActiveGemSuitCfgTbl
- end
- function this:AllGemAttrCurrentGetFunc(realIndex)
-
- end
- function this:AllGemAttrCurrentInitFunc(realIndex,kmlcontrol)
- end
- function this:AllGemAttrCurrentUpdateFunc(realIndex,kmlcontrol)
- ---@type cfg_equip_gemSuit_column
- local data = InfoManager.gemSlateInfo.ActiveGemSuitCfgTbl[realIndex + 1]
- local NotActive = GUI:GetChildControl(self.view.datalist_AllGemAttrs, realIndex, "NotActive")
- local ActiveTxt = GUI:GetChildControl(self.view.datalist_AllGemAttrs, realIndex, "ActiveTxt")
- local detialBtn = GUI:GetChildControl(self.view.datalist_AllGemAttrs, realIndex, "detialBtn")
-
- GUI:AddOnClickEvent(detialBtn, self, self.OnClickAllGemsInfoBtn)
-
- GUI:SetActive(NotActive,data.sortId>0)
- GUI:SetActive(ActiveTxt,data.sortId<0)
- local txtShowColor="#DCE1E5"
- if data.sortId>0 then
- txtShowColor="#8E8E8E"
- end
- local gemTitleParent = GUI:GetChildControl(self.view.datalist_AllGemAttrs, realIndex, "gemTitleParent")
- local attrInfoTxt = GUI:GetChildControl(self.view.datalist_AllGemAttrs, realIndex, "attrInfoTxt")
- local skillInfoTxt = GUI:GetChildControl(self.view.datalist_AllGemAttrs, realIndex, "skillInfoTxt")
- GUI:Text_setString(gemTitleParent,data.title)
- GUI:Text_setTextColor(gemTitleParent,txtShowColor)
- local attrStr=""
- for i,v in ipairs(data.suitAtt) do
- local tmpStr=SL:GetConfig("cfg_att_info", v[1]).showname..v[2].." "
- attrStr=attrStr..tmpStr
- end
- -- local attrTbl = SL:GetConfig("cfg_att_info", v[1])
- GUI:Text_setString(attrInfoTxt,attrStr)
- GUI:Text_setTextColor(attrInfoTxt,txtShowColor)
-
- GUI:Text_setString(skillInfoTxt,data.skillText)
- GUI:Text_setTextColor(skillInfoTxt,txtShowColor)
- end
- function this:RefreshGemSlateShow(EGemInlayType)
- local inlayGem1=InfoManager.gemSlateInfo:GetCurActiveSchemeGem("1")
- local inlayGem2=InfoManager.gemSlateInfo:GetCurActiveSchemeGem("2")
- local inlayGem3=InfoManager.gemSlateInfo:GetCurActiveSchemeGem("3")
- local inlaySlate=InfoManager.gemSlateInfo:GetCurActiveSchemeGem(nil,true)
- self.currentAttList={}
- if inlayGem1 then
- table.insert(self.currentAttList,inlayGem1)
- end
- if inlayGem2 then
- table.insert(self.currentAttList,inlayGem2)
- end
- if inlayGem3 then
- table.insert(self.currentAttList,inlayGem3)
- end
- if EGemInlayType==E_GemInlayType.Gem then
- GUI:SetActive(self.view.GemCellParentImg,true)
- GUI:SetActive(self.view.SlateCellParentImg,false)
- GUI:Text_setString(self.view.gemAddParentTitle,"萤石加成")
- self:SetGem1Model(inlayGem1)
- self:SetGem2Model(inlayGem2)
- self:SetGem3Model(inlayGem3)
-
- else
- if not inlaySlate then
- self:SetSlateModel(nil)
- else
- self:SetSlateModel(inlaySlate)
- end
- GUI:SetActive(self.view.GemCellParentImg,false)
- GUI:SetActive(self.view.SlateCellParentImg,true)
- GUI:Text_setString(self.view.gemAddParentTitle,"石板加成")
- end
- GUI:DataListUpdateData(self.view.datalist_gemAttrs)
- GUI:DataListUpdateData(self.view.datalist_AllGemAttrs)
- GUI:SetActive(self.view.NoAttribute,table.isNullOrEmpty(self.currentAttList))
- end
- function this:SetEquipModel(equipInfo)
- if equipInfo then
- GUI:setVisible(self.view.zhu_add, false)
- GUI:setVisible(self.view.zhu_item, true)
- GUI:Item_setItemId(self.view.zhu_item, equipInfo.cfgId)
- self:SetLiuGuang(equipInfo)
- else
- GUI:setVisible(self.view.zhu_add, true)
- GUI:setVisible(self.view.zhu_item, false)
- GUI:ResetStreamAttr(self.view.zhu_item)
- end
- end
- function this:SetLiuGuang(equipInfo)
- local liuGuangId = EquipFunc.GetEquipLiuGuangId(equipInfo)
- if liuGuangId then
- GUI:SetStreamAttr(self.view.zhu_item, liuGuangId)
- else
- GUI:ResetStreamAttr(self.view.zhu_item)
- end
- end
- function this:SetSlateModel(cfgId)
- if not cfgId then
- GUI:setVisible(self.view.SlateCell, false)
- GUI:setVisible(self.view.SlateAddImg, true)
- GUI:setVisible(self.view.slateLevelTxt, false)
- else
- GUI:setVisible(self.view.slateLevelTxt, true)
- local cfg=SL:GetConfig("cfg_equip_stoneBoard", cfgId)
- GUI:Text_setString(self.view.slateLevelTxt,cfg.stoneBoardLevel.."级")
- GUI:setVisible(self.view.SlateCell, true)
- GUI:setVisible(self.view.SlateAddImg, false)
- GUI:Item_setItemId(self.view.SlateCell, cfgId)
- end
- end
- function this:SetGem1Model(cfgId)
- if not cfgId then
- GUI:setVisible(self.view.GemCell1, false)
- GUI:setVisible(self.view.AddImg1, true)
- GUI:setVisible(self.view.gemLevelTxt1, false)
- else
- GUI:setVisible(self.view.gemLevelTxt1, true)
- local cfg=SL:GetConfig("cfg_equip_gem", cfgId)
- GUI:Text_setString(self.view.gemLevelTxt1,cfg.gemBelong[2].."级")
- GUI:setVisible(self.view.GemCell1, true)
- GUI:setVisible(self.view.AddImg1, false)
- GUI:Item_setItemId(self.view.GemCell1, cfgId)
- end
- end
- function this:SetGem2Model(cfgId)
- if not cfgId then
- GUI:setVisible(self.view.GemCell2, false)
- GUI:setVisible(self.view.AddImg2, true)
- GUI:setVisible(self.view.gemLevelTxt2, false)
- else
- GUI:setVisible(self.view.gemLevelTxt2, true)
- local cfg=SL:GetConfig("cfg_equip_gem", cfgId)
- GUI:Text_setString(self.view.gemLevelTxt2,cfg.gemBelong[2].."级")
- GUI:setVisible(self.view.GemCell2, true)
- GUI:setVisible(self.view.AddImg2, false)
- GUI:Item_setItemId(self.view.GemCell2, cfgId)
- end
- end
- function this:SetGem3Model(cfgId)
- if not cfgId then
- GUI:setVisible(self.view.GemCell3, false)
- GUI:setVisible(self.view.AddImg3, true)
- GUI:setVisible(self.view.gemLevelTxt3, false)
- else
- GUI:setVisible(self.view.gemLevelTxt3, true)
- local cfg=SL:GetConfig("cfg_equip_gem", cfgId)
- GUI:Text_setString(self.view.gemLevelTxt3,cfg.gemBelong[2].."级")
- GUI:setVisible(self.view.GemCell3, true)
- GUI:setVisible(self.view.AddImg3, false)
- GUI:Item_setItemId(self.view.GemCell3, cfgId)
- end
- end
- function this:CloseEquipUi()
- GUI:UIPanel_Close("dev/ui/UIForgeGroup/Panel/KLUIForgeGroup/KLUIForgeGroupPanel")
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel")
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemInlay/KLGemInlayPanel")
- end
- function this:ItemClick(itemControl, itemData)
- local pos = self:GetPos(itemData.id)
- SL:OpenTips(pos, itemData.cfgId, itemData.id)
- end
- function this:GetPos(itemId)
- for _, v in pairs(self.bagItems) do
- if v == itemId then
- return "bag"
- end
- end
- return "equip"
- end
- function this:GetSlateItems()
- local data = {}
- local bagItemTabl = SL:GetMetaValue("BAG_DATA")[1]
- if bagItemTabl then
- for _, v in pairs(bagItemTabl) do
- if SL:HasConfig("cfg_equip_stoneBoard", v.cfgId, "id") then
- --data[SL:GetBagIndex(v.id) - 10000] = v
- table.insert(data, v)
- table.insert(self.bagItems, v.id)
- end
- end
- end
- return SL.Bag:SortItemList(data)
- end
- function this:GetGemItems()
- local data = {}
- local bagItemTabl = SL:GetMetaValue("BAG_DATA")[1]
- if bagItemTabl then
- for _, v in pairs(bagItemTabl) do
- if SL:HasConfig("cfg_equip_gem", v.cfgId, "id") then
- --data[SL:GetBagIndex(v.id) - 10000] = v
- table.insert(data, v)
- table.insert(self.bagItems, v.id)
- end
- end
- end
- return SL.Bag:SortItemList(data)
- end
- function this:OnClickEquipPanelPos(_, index)
-
- local equip = SL:GetMetaValue("EQUIP_TARGET_DATA", 1, index)
- local realIndex=index
- if index == E_AppearEquipType.Weapon and equip == nil then
- equip = SL:GetMetaValue("EQUIP_TARGET_DATA", 1, E_AppearEquipType.TwoHandWeapon)
- realIndex=E_AppearEquipType.TwoHandWeapon
- end
- if equip then
- InfoManager.gemSlateInfo:ChangeEquipPosId(realIndex)
- if self.curSelectGemInlayType==E_GemInlayType.Gem then
- self.bagIndex = nil
- if table.contains(InfoManager.gemSlateInfo.CanInlayGemEquipPosTbl,tostring(index)) then
- self.equipPanel:SetSelectIndex(index)
- self:ClickEquip(equip)
- self.selectEquipType = index
- else
- SL:TipMessage( SL:GetConfig("cfg_string",325).text ,3, NoticeType.NoticeMid )
- end
- else
- self.bagIndex = nil
- if table.contains(InfoManager.gemSlateInfo.CanInlaySlateEquipPosTbl,tostring(index)) then
- self.equipPanel:SetSelectIndex(index)
- self:ClickEquip(equip)
- self.selectEquipType = index
- else
- SL:TipMessage( SL:GetConfig("cfg_string",326).text ,3, NoticeType.NoticeMid )
- end
- end
- else
- if self.curSelectGemInlayType==E_GemInlayType.Gem then
- SL:TipMessage( SL:GetConfig("cfg_string",327).text ,3, NoticeType.NoticeMid )
- else
- SL:TipMessage( SL:GetConfig("cfg_string",328).text ,3, NoticeType.NoticeMid )
- end
- end
- end
- -- 装备名字
- function this:SetEquipName(cfgId, strengthLevel)
- GUI:setVisible(self.view.equipName, true)
- local equipName = SL:GetConfig('cfg_item', cfgId).name
- local colorStr = EquipFunc.GetEquipNameColor(cfgId)
- --if strengthLevel > 0 then
- -- equipName = equipName .. '+' .. strengthLevel
- --end
- GUI:Text_setString(self.view.equipName, string.format("<color=%s>%s</color>", colorStr, equipName))
- end
- function this:ClickEquip(equip)
- local strengthLevel = EquipFunc.GetEquipStrengthLevel(equip)
- self:SetEquipName(equip.cfgId, strengthLevel)
- self:SetEquipModel(equip)
- InfoManager.gemSlateInfo:SetOptEquip(equip)
- -- if self.curSelectGemInlayType==E_GemInlayType.Gem then
-
- -- else
- -- end
- self:RefreshGemSlateShow(self.curSelectGemInlayType)
- end
- function this:SchemeToggleChanged(kmlCtrl, eventData, args,isMessage)
- if args[1] then
- -- logError("切换方案"..eventData)
- if eventData==1 then
- self.curSelectSchemeType=1
-
-
- GUI:Text_setString(self.view.schemeTxt1,"方案一"..string.format("<color=#00ff00ff>%s</color>", "(激活)"))
- GUI:Text_setString(self.view.schemeTxt2,"方案二")
- if not isMessage then
- SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_SCHEME_SWITCH,{schemepos=1})
- end
- elseif eventData==2 then
- self.curSelectSchemeType=2
- GUI:Text_setString(self.view.schemeTxt1,"方案一")
- GUI:Text_setString(self.view.schemeTxt2,"方案二"..string.format("<color=#00ff00ff>%s</color>", "(激活)"))
- if not isMessage then
- SL:SendLuaNetMsg(LuaMessageIdToSever.REQ_SCHEME_SWITCH,{schemepos=2})
- end
- end
- end
- end
- function this:GemSlateToggleChanged(kmlCtrl, eventData, args)
- if args[1] then
- local tmpUI=GUI:GetUI("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- self.curSelectGemInlayType=eventData
- if eventData==E_GemInlayType.Gem then
- self:RefreshGemSlateShow(E_GemInlayType.Gem)
- if tmpUI then
- GUI:UIPanel_Close("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- GUI:UIPanel_Open("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel", nil, nil, { itemList = self:GetGemItems(), x = -482, y = 0, itemClick = self.ItemClick, callBackUI = self,bagType=E_GemInlayType.Gem })
- end
- self:OnClickGemCellImg1()
- elseif eventData==E_GemInlayType.Slate then
- self:RefreshGemSlateShow(E_GemInlayType.Slate)
- if tmpUI then
- GUI:UIPanel_Close("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- GUI:UIPanel_Open("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel", nil, nil, { itemList = self:GetSlateItems(), x = -482, y = 0, itemClick = self.ItemClick, callBackUI = self,bagType=E_GemInlayType.Slate })
- end
- self:OnClickSlateImg()
- end
- end
-
- end
- ---@param message {cur:number, data:table}
- function this:InitSchemeByMsg(id, message)
- if message.cur==1 then
- GUI:SetIsOnWithoutNotify(self.view.schemeToggle1,true)
- self:SchemeToggleChanged(self.view.schemeToggle1,message.cur,{true},true)
- elseif message.cur==2 then
- GUI:SetIsOnWithoutNotify(self.view.schemeToggle2,true)
- self:SchemeToggleChanged(self.view.schemeToggle2,message.cur,{true},true)
- end
-
- GUI:SetIsOnWithoutNotify(self.view.gemBtn,true)
- end
- function this:ClosePanel()
- GUI:UIPanel_Close("dev/ui/UIForgeGroup/Panel/KLUIForgeGroup/KLUIForgeGroupPanel")
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel")
- self.equipPanel = nil
- GUI:UIPanel_Close("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemInlay/KLGemInlayPanel")
- end
- function this:OnClickGemCellImg1()
- InfoManager.gemSlateInfo:ChangeGemPosId(1)
- local tmpUI=GUI:GetUI("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- if not tmpUI then
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel")
- self.equipPanel = nil
- GUI:UIPanel_Open("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel", nil, nil, { itemList = self:GetGemItems(), x = -482, y = 0, itemClick = self.ItemClick, callBackUI = self,bagType=E_GemInlayType.Gem })
- end
- local inlayGem=InfoManager.gemSlateInfo:GetCurActiveSchemeGem("1")
- SL:OpenTips("gems", inlayGem)
- GUI:SetActive(self.view.SelectImg1,true)
- GUI:SetActive(self.view.SelectImg2,false)
- GUI:SetActive(self.view.SelectImg3,false)
-
- end
- function this:OnClickGemCellImg2()
- InfoManager.gemSlateInfo:ChangeGemPosId(2)
- local tmpUI=GUI:GetUI("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- if not tmpUI then
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel")
- self.equipPanel = nil
- GUI:UIPanel_Open("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel", nil, nil, { itemList = self:GetGemItems(), x = -482, y = 0, itemClick = self.ItemClick, callBackUI = self,bagType=E_GemInlayType.Gem })
- end
- local inlayGem=InfoManager.gemSlateInfo:GetCurActiveSchemeGem("2")
- SL:OpenTips("gems", inlayGem)
- GUI:SetActive(self.view.SelectImg1,false)
- GUI:SetActive(self.view.SelectImg2,true)
- GUI:SetActive(self.view.SelectImg3,false)
- end
- function this:OnClickGemCellImg3()
- InfoManager.gemSlateInfo:ChangeGemPosId(3)
- local tmpUI=GUI:GetUI("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- if not tmpUI then
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel")
- self.equipPanel = nil
- GUI:UIPanel_Open("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel", nil, nil, { itemList = self:GetGemItems(), x = -482, y = 0, itemClick = self.ItemClick, callBackUI = self,bagType=E_GemInlayType.Gem })
- end
- local inlayGem=InfoManager.gemSlateInfo:GetCurActiveSchemeGem("3")
- SL:OpenTips("gems", inlayGem)
- GUI:SetActive(self.view.SelectImg1,false)
- GUI:SetActive(self.view.SelectImg2,false)
- GUI:SetActive(self.view.SelectImg3,true)
- end
- function this:OnClickSlateImg()
- InfoManager.gemSlateInfo:ChangeGemPosId(nil)
- local tmpUI=GUI:GetUI("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- if not tmpUI then
- GUI:UIPanel_Close("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel")
- self.equipPanel = nil
- GUI:UIPanel_Open("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel", nil, nil, { itemList = self:GetSlateItems(), x = -482, y = 0, itemClick = self.ItemClick, callBackUI = self,bagType=E_GemInlayType.Slate })
- end
- local inlaySlate=InfoManager.gemSlateInfo:GetCurActiveSchemeGem(nil,true)
- SL:OpenTips("gems", inlaySlate)
- end
- function this:OnClickOptEquip()
- GUI:UIPanel_Close("dev/outui/Bag/Panel/KLGemSlateBag/KLGemSlateBagPanel")
- if not self.equipPanel then
- GUI:UIPanel_Open("dev/outui/Equip/Panel/KLGemEquipUI/KLGemEquipUIPanel",
- nil,
- nil,
- { x = -465, hideTips = true, callBack = self.CloseEquipUi,selectType = self.selectEquipType},
- true,function(equipPanel)
- self.equipPanel = equipPanel
- end)
- end
- end
- function this:OnClickHelpBtn()
- local helpCfg=nil
- if self.curSelectGemInlayType==E_GemInlayType.Gem then
- helpCfg=SL:GetConfig("cfg_rule_text",1)
- else
- helpCfg=SL:GetConfig("cfg_rule_text",2)
- end
- if helpCfg then
- SL:CommonStrTipsMessage({title =helpCfg.menutxt,str=helpCfg.location})
- end
- end
- function this:OnClickAllGemsInfoBtn()
- GUI:UIPanel_Open("dev/outui/Equip/Panel/KLGemInlayAllInfo/KLGemInlayAllInfoPanel", nil, nil, { x = -465})
- end
- function this:RefreshRedPoint()
- -- local gemData = {}
- -- local slateData = {}
- -- local bagItemTabl = SL:GetMetaValue("BAG_DATA")[1]
- -- if bagItemTabl then
- -- for _, v in pairs(bagItemTabl) do
- -- if SL:HasConfig("cfg_equip_gem", v.cfgId, "id") then
- -- table.insert(gemData, v)
- -- end
- -- if SL:HasConfig("cfg_equip_stoneBoard", v.cfgId, "id") then
- -- table.insert(slateData, v)
- -- end
- -- end
- -- end
- -- GUI:SetActive( self.view.redPointImg1,false)
- -- GUI:SetActive( self.view.redPointImg2,false)
- end
- function this:Close()
- end
- return this
|