--==============================-- --作者: xihan --日期: 2020-02-20 09:48:24 --文件: UIXMBossHearten.lua --模块: UIXMBossHearten' --描述: 仙盟Boss鼓舞界面 --==============================-- local UIXMBossHearten = { BackTex = nil, } --注册事件函数, 提供给CS端调用. function UIXMBossHearten:OnRegisterEvents() self:RegisterEvent(UILuaEventDefine.UIXMBossHearten_OPEN, self.OnOpen); self:RegisterEvent(UILuaEventDefine.UIXMBossHearten_CLOSE, self.OnClose); self:RegisterEvent(LogicLuaEventDefine.EID_EVENT_XMBOSSHEARTEN_REFRSH, self.Refresh) end --Load函数, 提供给CS端调用. function UIXMBossHearten:OnLoad() end --第一只显示函数, 提供给CS端调用. function UIXMBossHearten:OnFirstShow() self:FindAllComponents(); self:RegUICallback(); end --查找所有组件 function UIXMBossHearten:FindAllComponents() local _myTrans = self.Trans; self.TxtDamageAddPro = UIUtils.FindLabel(_myTrans, "Center/TxtDamageAddPro"); -- self.TxtResult1 = UIUtils.FindLabel(_myTrans, "Center/TxtResult1"); -- self.TxtResult2 = UIUtils.FindLabel(_myTrans, "Center/TxtResult2"); self.BtnLeft = UIUtils.FindBtn(_myTrans, "Center/BtnLeft"); self.BtnRight = UIUtils.FindBtn(_myTrans, "Center/BtnRight"); self.BtnClose = UIUtils.FindBtn(_myTrans, "Center/BtnClose"); self.TxtBtnLeft = UIUtils.FindLabel(_myTrans, "Center/BtnLeft/Label"); self.TxtBtnRight = UIUtils.FindLabel(_myTrans, "Center/BtnRight/Label"); self.SprLeft = UIUtils.FindSpr(_myTrans, "Center/BtnLeft") self.SprRight = UIUtils.FindSpr(_myTrans, "Center/BtnRight") self.UIIconCostLeft = UIUtils.RequireUIIconBase(UIUtils.FindTrans(_myTrans, "Center/CostLeft/SprIcon")); self.UIIconCostRight = UIUtils.RequireUIIconBase(UIUtils.FindTrans(_myTrans, "Center/CostRight/SprIcon")); self.TxtCostLeft = UIUtils.FindLabel(_myTrans, "Center/CostLeft/TxtCount"); self.TxtCostRight = UIUtils.FindLabel(_myTrans, "Center/CostRight/TxtCount"); self.SingleHeartenAddValue = GameCenter.XMBossSystem.SingleHeartenAddValue; self.CostGoldArr = GameCenter.XMBossSystem.CostGoldArr self.CostYBArr = GameCenter.XMBossSystem.CostYBArr self.UIIconCostLeft:UpdateIcon(3) self.UIIconCostRight:UpdateIcon(1) UIUtils.SetTextByEnum(self.TxtDamageAddPro, "Percent", 0) UIUtils.SetTextByNumber(self.TxtCostLeft, 0) UIUtils.SetTextByNumber(self.TxtCostRight, 0) self.BackTex = UIUtils.FindTex(_myTrans, "Center/BackTex") self.CSForm:AddNormalAnimation(0.3) end --绑定UI组件的回调函数 function UIXMBossHearten:RegUICallback() UIUtils.AddBtnEvent(self.BtnLeft, self.OnClickBtnLeftCallBack, self); UIUtils.AddBtnEvent(self.BtnRight, self.OnClickBtnRightCallBack, self); UIUtils.AddBtnEvent(self.BtnClose, self.OnClickBtnCloseCallBack, self); end --显示后的操作, 提供给CS端调用. function UIXMBossHearten:OnShowAfter() self:Refresh() self.CSForm:LoadTexture(self.BackTex,AssetUtils.GetImageAssetPath(ImageTypeCode.UI, "tex_n_d_3")); end function UIXMBossHearten:Refresh() local _MsgInspireData = GameCenter.XMBossSystem.MsgInspireData; if _MsgInspireData then UIUtils.SetTextByString(self.TxtDamageAddPro ,math.floor(_MsgInspireData.guildNum*self.SingleHeartenAddValue) .. "%") UIUtils.SetTextByString(self.TxtCostLeft ,self.CostGoldArr[_MsgInspireData.ownMoneyNum+1] or "0") UIUtils.SetTextByString(self.TxtCostRight ,self.CostYBArr[_MsgInspireData.ownGoldNum+1] or "0") self.SprLeft.IsGray = not self.CostGoldArr[_MsgInspireData.ownMoneyNum+1] self.SprRight.IsGray = not self.CostYBArr[_MsgInspireData.ownGoldNum+1] UIUtils.SetTextByEnum(self.TxtBtnLeft ,self.CostGoldArr[_MsgInspireData.ownMoneyNum+1] and "JinBiInspire" or "Inspired") UIUtils.SetTextByEnum(self.TxtBtnRight ,self.CostYBArr[_MsgInspireData.ownGoldNum+1] and "YuBaoInspire" or "Inspired") end end --[界面按钮回调 begin]-- function UIXMBossHearten:OnClickBtnLeftCallBack() local _MsgInspireData = GameCenter.XMBossSystem.MsgInspireData; if self.CostGoldArr[_MsgInspireData.ownMoneyNum+1] then GameCenter.XMBossSystem:ReqGuildBossInspire(0) else Utils.ShowPromptByEnum("JinBiTimesNotEnough") end end function UIXMBossHearten:OnClickBtnRightCallBack() local _MsgInspireData = GameCenter.XMBossSystem.MsgInspireData; if self.CostYBArr[_MsgInspireData.ownGoldNum+1] then GameCenter.XMBossSystem:ReqGuildBossInspire(1) else Utils.ShowPromptByEnum("YuBaoTimesNotEnough") end end function UIXMBossHearten:OnClickBtnCloseCallBack() self.CSForm:Hide() end ---[界面按钮回调 end]--- return UIXMBossHearten;