120 lines
4.5 KiB
Lua
120 lines
4.5 KiB
Lua
|
|
--==============================--
|
|
--作者: 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;
|