diff --git a/Assets/ManagedResources/~Lua/Modules/Arena/ArenaManager.lua b/Assets/ManagedResources/~Lua/Modules/Arena/ArenaManager.lua index 7a4b70464b..0cc05abe8d 100644 --- a/Assets/ManagedResources/~Lua/Modules/Arena/ArenaManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Arena/ArenaManager.lua @@ -326,7 +326,7 @@ end -- 获取竞技场赛季名称 function this.GetArenaName() - return "宇宙武道会" --GetLanguageStrById(ArenaSetting[1].AreanName) + return "天下第一武道会" --GetLanguageStrById(ArenaSetting[1].AreanName) end function this.GetArenaMyRankName() return this.ArenaInfo.rankName diff --git a/Assets/ManagedResources/~Lua/Modules/Arena/ArenaTypePanel.lua b/Assets/ManagedResources/~Lua/Modules/Arena/ArenaTypePanel.lua index cea4a12f5d..0fc781adc1 100644 --- a/Assets/ManagedResources/~Lua/Modules/Arena/ArenaTypePanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Arena/ArenaTypePanel.lua @@ -8,7 +8,9 @@ local tipStr = nil function ArenaTypePanel:InitComponent() this.spLoader = SpriteLoader.New() this.btnBack = Util.GetGameObject(self.gameObject, "rightUp/btnBack") - + Util.SetGray(Util.GetGameObject(self.gameObject, "content/btnToNothing"), true) + Util.SetGray(Util.GetGameObject(self.gameObject, "content/btnToNothing1"), true) + Util.SetGray(Util.GetGameObject(self.gameObject, "content/btnToNothing2"), true) this.btnArena = Util.GetGameObject(self.gameObject, "content/btnArena") this.btnTopMatch = Util.GetGameObject(self.gameObject, "content/btnTopMatch") this.btnYXLD = Util.GetGameObject(self.gameObject, "content/btnYXLD") @@ -24,6 +26,20 @@ function ArenaTypePanel:InitComponent() this.yxld_RankNane = Util.GetGameObject(this.yxld_normal, "Rank"):GetComponent("Text") this.yxld_Redpot = Util.GetGameObject(this.btnYXLD, "bg/redpot") + + this.btnSLZD = Util.GetGameObject(self.gameObject, "content/btnSLZD") + this.slzd_normal = Util.GetGameObject(this.btnSLZD, "normal") + this.slzd_lock = Util.GetGameObject(this.btnSLZD, "lock") + this.slzd_SeasonTime = Util.GetGameObject(this.slzd_normal, "Season"):GetComponent("Text") + this.slzd_lockTip = Util.GetGameObject(this.slzd_lock, "Season"):GetComponent("Text") + this.slzdTimeDown = 0 + + this.btnNMKXTX = Util.GetGameObject(self.gameObject, "content/btnNMKXTX") + this.nmkxtx_normal = Util.GetGameObject(this.btnNMKXTX, "normal") + this.nmkxtx_lock = Util.GetGameObject(this.btnNMKXTX, "lock") + this.nmkxtx_SeasonTime = Util.GetGameObject(this.nmkxtx_normal, "Season"):GetComponent("Text") + this.nmkxtx_lockTip = Util.GetGameObject(this.nmkxtx_lock, "Season"):GetComponent("Text") + this.Arena_Name = Util.GetGameObject(this.btnArena, "Name"):GetComponent("Text") this.Arena_Season = Util.GetGameObject(this.btnArena, "Season"):GetComponent("Text") this.Arena_SeasonTime = Util.GetGameObject(this.btnArena, "Season/Time"):GetComponent("Text") @@ -74,6 +90,51 @@ function ArenaTypePanel:BindEvent() UIManager.OpenPanel(UIName.JumpServerHightLadderPanel) end end) + --势力争夺 + Util.AddClick(this.btnSLZD, function() + if DeathPosManager.status == DeathPosStatus.Death then + PopupTipPanel.ShowTip(Language[10909]) + return + elseif DeathPosManager.status == DeathPosStatus.Close then + PopupTipPanel.ShowTip(Language[10910]) + return + end + UIManager.OpenPanel(UIName.DeathPosPanel) + end) + --娜美克星探险 + Util.AddClick(this.btnNMKXTX, function() + if not ActTimeCtrlManager.IsQualifiled(FUNCTION_OPEN_TYPE.LINGMAIMIJING) then + PopupTipPanel.ShowTip(ActTimeCtrlManager.GetFuncTip(FUNCTION_OPEN_TYPE.LINGMAIMIJING)) + return + end + -- 跨服相关判断 + if not JumpServerManager.GetLingMaiIsStart() then + PopupTipPanel.ShowTip(string.format("开服第%s周开放!", + ConfigManager.GetConfigData(ConfigName.MServerLodeSetting, 1).OpenWeek)) + return + elseif not JumpServerManager.GetHightLadderDataIsGroup() then + PopupTipPanel.ShowTip("未划分跨服分组,无法参与!") + return + end + + if ActTimeCtrlManager.SingleFuncState(FUNCTION_OPEN_TYPE.LINGMAIMIJING) then + NetManager.GetLingMaiInfoRequest(0, function() + if LingMaiMiJingManager.state == 0 then + PopupTipPanel.ShowTip("今日不开放那美克星探险玩法!") + else + if not LingMaiMiJingManager.GetData() then + LogError("那美克星探险数据为空") + PopupTipPanel.ShowTip("那美克星探险暂无法进入,请耐心等待!") + return + end + UIManager.OpenPanel(UIName.LingMaiMiJingPanel) + end + end) + else + PopupTipPanel.ShowTip(ActTimeCtrlManager.SystemOpenTip(FUNCTION_OPEN_TYPE.LINGMAIMIJIN)) + end + end) + Util.AddClick(this.btnYXLD, function() local isOpen = CheckFunctionOpen(FUNCTION_OPEN_TYPE.JumpServer_YuXu) @@ -165,7 +226,15 @@ function ArenaTypePanel:OnShow() this.RefreshTopMatchShow() end - + NetManager.GetDeathPathInfoResponse(function(msg) + if DeathPosManager.status == DeathPosStatus.Reward then + this.overTime.text = Language[11029] + elseif DeathPosManager.status == DeathPosStatus.Close then + this.overTime.text = Language[11030] + else + this.slzdTimeDown = msg.overTime + end + end) local isOpen = CheckFunctionOpen(FUNCTION_OPEN_TYPE.JumpServer_YuXu) if isOpen then @@ -182,14 +251,14 @@ function ArenaTypePanel:OnShow() -- 巅峰战 - -- ArenaTopMatchManager.RequestTopMatchBaseInfo(function() - -- this.RefreshTopMatchShow() - -- -- 计时器 - -- if this.TimeCounter then return end - -- this.TimeCounter = Timer.New(this.TimeUpdate, 1, -1, true) - -- this.TimeCounter:Start() - -- this.TimeUpdate() - -- end) + ArenaTopMatchManager.RequestTopMatchBaseInfo(function() + this.RefreshTopMatchShow() + -- 计时器 + if this.TimeCounter then return end + this.TimeCounter = Timer.New(this.TimeUpdate, 1, -1, true) + this.TimeCounter:Start() + this.TimeUpdate() + end) end -- 刷新竞技场显示 @@ -317,6 +386,9 @@ function this.RefreshTopMatchShow() this.TopMatch_Lock:SetActive(true) --this.TopMatch_Name.text = "未达到开启条件" this.TopMatch_Lock_Title.text = tipStr + if state == -6 then + this.TopMatch_Lock_Title.text = "暂未开启" + end this.TopMatch_Lock_Time.text = Language[10093] else local serData = ActTimeCtrlManager.GetSerDataByTypeId(FUNCTION_OPEN_TYPE.JumpServer_HightLadder) @@ -375,7 +447,7 @@ function this.TimeUpdate() if leftTime <= 0 then this.RefreshArenaShow() end - this.Arena_SeasonTime.text = string.format(Language[10102], TimeToHMS(leftTime)) + this.Arena_SeasonTime.text = Language[10102] .. TimeToHMS(leftTime) local isOpen = ActTimeCtrlManager.IsSwitchOpen(FUNCTION_OPEN_TYPE.JumpServer_HightLadder) if isOpen then @@ -405,7 +477,7 @@ function this.TimeUpdate() if leftTime <= 0 then this.RefreshTopMatchShow() end - this.TopMatch_SeasonTime.text = string.format(Language[10102], TimeToHMS(leftTime)) + this.TopMatch_SeasonTime.text = Language[10102] .. TimeToHMS(leftTime) else -- local startTime, endTime = ArenaTopMatchManager.GetTopMatchTime() -- if startTime then @@ -420,10 +492,55 @@ function this.TimeUpdate() local isOpen = ActTimeCtrlManager.IsSwitchOpen(FUNCTION_OPEN_TYPE.JumpServer_YuXu) if isOpen then local yuxuLeft = WorldArenaManager.GetLeftTime() - this.yxld_SeasonTime.text = string.format(Language[10102], TimeToHMS(yuxuLeft)) + this.yxld_SeasonTime.text = Language[10102] .. TimeToHMS(yuxuLeft) else end + --势力争夺战 + if DeathPosManager.status == DeathPosStatus.Reward then + this.slzd_normal:SetActive(false) + this.slzd_lock:SetActive(true) + this.slzd_lockTip.text = Language[11029] + elseif DeathPosManager.status == DeathPosStatus.Close then + this.slzd_lockTip.text = Language[11030] + this.slzd_normal:SetActive(false) + this.slzd_lock:SetActive(true) + else + this.slzd_normal:SetActive(true) + this.slzd_lock:SetActive(false) + this.slzd_SeasonTime.text = "剩余时间:" .. TimeToHMS(this.slzdTimeDown - GetTimeStamp()) + end + + --娜美克星探险 + if not ActTimeCtrlManager.IsQualifiled(FUNCTION_OPEN_TYPE.LINGMAIMIJING) then + this.nmkxtx_lockTip.text = ActTimeCtrlManager.GetFuncTip(FUNCTION_OPEN_TYPE.LINGMAIMIJING) + this.nmkxtx_normal:SetActive(false) + this.nmkxtx_lock:SetActive(true) + return + end + if not JumpServerManager.GetLingMaiIsStart() then + this.nmkxtx_lockTip.text = string.format("开服第%s周开放!", + ConfigManager.GetConfigData(ConfigName.MServerLodeSetting, 1).OpenWeek) + this.nmkxtx_normal:SetActive(false) + this.nmkxtx_lock:SetActive(true) + return + elseif not JumpServerManager.GetHightLadderDataIsGroup() then + this.nmkxtx_lockTip.text = "未划分跨服分组,无法参与!" + this.nmkxtx_normal:SetActive(false) + this.nmkxtx_lock:SetActive(true) + return + end + + if ActTimeCtrlManager.SingleFuncState(FUNCTION_OPEN_TYPE.LINGMAIMIJING) then + local yuxuLeft = LingMaiMiJingManager.GetData().endTime - GetTimeStamp() + this.nmkxtx_SeasonTime.text = "抢夺结束:" .. TimeToHMS(yuxuLeft) + this.nmkxtx_normal:SetActive(true) + this.nmkxtx_lock:SetActive(false) + else + this.nmkxtx_lockTip.text = ActTimeCtrlManager.SystemOpenTip(FUNCTION_OPEN_TYPE.LINGMAIMIJIN) + this.nmkxtx_normal:SetActive(false) + this.nmkxtx_lock:SetActive(true) + end end --界面关闭时调用(用于子类重写)