local HomeLand = quick_class("HomeLand", BasePanel)
local HomeLandConfig = ConfigManager.GetConfig(ConfigName.HomeLand)
local HomeLandLevel = ConfigManager.GetConfig(ConfigName.HomeLandLevel)
local HomeLandTask = ConfigManager.GetConfig(ConfigName.HomeLandTask)
local GlobalSystemConfig = ConfigManager.GetConfig(ConfigName.GlobalSystemConfig)
local ItemConfig = ConfigManager.GetConfig(ConfigName.ItemConfig)
local costStr = string.split(ConfigManager.GetConfigData(ConfigName.SpecialConfig, 100).Value, "#")
local bool = false
function HomeLand:InitComponent()
self.spLoader = SpriteLoader.New()
-- if not self.playerInfoView then
-- self.playerInfoView = SubUIManager.Open(SubUIConfig.PlayerInfoView, self.transform)
-- end
self.UpView = SubUIManager.Open(SubUIConfig.UpView, self.transform)
self.btnBack = Util.GetGameObject(self.gameObject, "btnBack")
self.map = Util.GetGameObject(self.gameObject, "Map")
self.Grid = Util.GetGameObject(self.map, "Grid")
self.Bg = Util.GetGameObject(self.map, "Bg")
self.Privi = Util.GetGameObject(self.map, "Privi")
self.PriviBtn = Util.GetGameObject(self.map, "goBtn")
self.RightUp = Util.GetGameObject(self.map, "RightUp")
self.RightDown = Util.GetGameObject(self.map, "RightDown")
self.helpBtn = Util.GetGameObject(self.RightUp, "helpBtn")
self.helpPosition = self.helpBtn:GetComponent("RectTransform").localPosition
--privi
self.priviDi = Util.GetGameObject(self.Privi, "di")
self.priviDi:SetActive(false)
self.priviText = Util.GetGameObject(self.Privi, "di/Text"):GetComponent("Text")
--btns
self.taskBtn = Util.GetGameObject(self.RightUp, "Task")
self.taskRed = Util.GetGameObject(self.taskBtn, "redpoint")
self.yunYouBtn = Util.GetGameObject(self.RightUp, "YunYou")
self.oneKey = Util.GetGameObject(self.RightDown, "OneKey")
--产出详情框
self.GainDetail = Util.GetGameObject(self.map, "GainDetail")
self.maskBtn = Util.GetGameObject(self.GainDetail, "mask")
self.Kuang = Util.GetGameObject(self.GainDetail, "Kuang")
self.Btn = Util.GetGameObject(self.GainDetail, "Btn")
self.BtnImage = Util.GetGameObject(self.Btn, "Image")
--progress
self.progress = Util.GetGameObject(self.Kuang, "Progress")
self.helpBtn1 = Util.GetGameObject(self.progress, "Help1")
self.progressPre = Util.GetGameObject(self.progress, "progressPre")
self.preList1 = {}
--detail
self.detail = Util.GetGameObject(self.Kuang, "Detail")
self.helpBtn2 = Util.GetGameObject(self.detail, "Help2")
self.detailPre = Util.GetGameObject(self.detail, "detailPre")
self.preList2 = {}
--地图点信息
self.mapData = {}
for i = 1, 7 do
self.mapData[i] = {}
self.mapData[i].Obj = Util.GetGameObject(self.Bg, "Map (" .. i .. ")")
self.mapData[i].Title = Util.GetGameObject(self.mapData[i].Obj, "Title")
self.mapData[i].levelImg = Util.GetGameObject(self.mapData[i].Title, "levelImg")
self.mapData[i].level = Util.GetGameObject(self.mapData[i].levelImg, "levelText"):GetComponent("Text")
self.mapData[i].NameImg = Util.GetGameObject(self.mapData[i].Title, "NameImg")
self.mapData[i].RedPoint = Util.GetGameObject(self.mapData[i].Title, "redpoint")
self.mapData[i].Lock = Util.GetGameObject(self.mapData[i].Title, "lock")
self.mapData[i].RedPoint:SetActive(false)
self.mapData[i].CanGet = Util.GetGameObject(self.mapData[i].Obj, "CanGet")
self.mapData[i].Icon = Util.GetGameObject(self.mapData[i].Obj, "CanGet/Image"):GetComponent("Image")
self.mapData[i].Btns = Util.GetGameObject(self.mapData[i].Obj, "Btns")
self.mapData[i].BtnsCanvas = self.mapData[i].Btns:GetComponent("Canvas")
self.mapData[i].OpenLimit = Util.GetGameObject(self.mapData[i].Title, "OpenLimit")
self.mapData[i].limitText = Util.GetGameObject(self.mapData[i].OpenLimit, "OpenLimitText"):GetComponent("Text")
self.mapData[i].upgradeImg = Util.GetGameObject(self.mapData[i].Obj, "Updating")
self.mapData[i].upgradeImg:SetActive(true)
self.mapData[i].updateTime = Util.GetGameObject(self.mapData[i].Obj, "updateTime")
self.mapData[i].updateTimeText = Util.GetGameObject(self.mapData[i].updateTime, "updateText"):GetComponent(
"Text")
self.mapData[i].timeSlide = Util.GetGameObject(self.mapData[i].updateTime, "Slide/Image"):GetComponent("Image")
self.mapData[i].btnDetail = Util.GetGameObject(self.mapData[i].Btns, "Detail")
self.mapData[i].btnUpgrade = Util.GetGameObject(self.mapData[i].Btns, "Upgrade")
self.mapData[i].upGradeRed = Util.GetGameObject(self.mapData[i].btnUpgrade, "upGradeRed")
self.mapData[i].btnCancel = Util.GetGameObject(self.mapData[i].Btns, "Cancel")
self.mapData[i].btnCancel:SetActive(false)
self.mapData[i].btnSpeedUp = Util.GetGameObject(self.mapData[i].Btns, "Speed")
self.mapData[i].btnUsePri = Util.GetGameObject(self.mapData[i].Btns, "UsePri")
self.mapData[i].leftTime = -1
self.mapData[i].showTime = -1
self.mapData[i].effect1 = Util.GetGameObject(self.mapData[i].upgradeImg, "c_jianzao")
self.mapData[i].effect2 = Util.GetGameObject(self.mapData[i].upgradeImg, "c_shengji")
self.mapData[i].effect1:SetActive(false)
self.mapData[i].effect2:SetActive(false)
end
self.curSelect = 0
end
function HomeLand:BindEvent()
Util.AddClick(self.btnBack, function()
PlaySoundWithoutClick(SoundConfig.Sound_UICancel)
self:ClosePanel()
end)
--帮助按钮
Util.AddClick(self.helpBtn, function()
UIManager.OpenPanel(UIName.HelpPopup, HELP_TYPE.HomeLand, self.helpPosition.x, self.helpPosition.y)
end)
Util.AddClick(self.Bg, function()
self.curSelect = 0
for j = 1, 5 do
self.mapData[j].Btns:SetActive(false)
end
end)
for i = 1, 5 do
--打开菜单
Util.AddOnceClick(self.mapData[i].Obj, function()
if self.curSelect ~= i then
for j = 1, 5 do
self.mapData[j].Btns:SetActive(false)
end
self.curSelect = i
if HomeLandManager.BuildData[i].dataMain.IsOpen ~= 1 then
PopupTipPanel.ShowTip(string.format(Language[11585],
GetLanguageStrById(HomeLandManager.BuildData[i].dataMain.Name)))
return
end
if HomeLandConfig[i].UnlockLevel[1] == 2 and HomeLandManager.BuildData[5].level < HomeLandConfig[i].UnlockLevel[2] then
PopupTipPanel.ShowTip(string.format(Language[11586], HomeLandConfig[i].UnlockLevel[2]))
return
end
self.mapData[i].Btns:SetActive(true)
HomeLandManager.SetButtonPosition(self.mapData[i].Btns)
PlayUIAnim(self.mapData[i].Btns)
end
end)
--打开信息界面
Util.AddOnceClick(self.mapData[i].btnDetail, function()
UIManager.OpenPanel(UIName.GeneralInfoPopup, GENERALINFO_TYPE.HomeLandBuildingDetail,
HomeLandManager.BuildData[i])
end)
--打开升级界面
Util.AddOnceClick(self.mapData[i].btnUpgrade, function()
UIManager.OpenPanel(UIName.GeneralInfoPopup, GENERALINFO_TYPE.HomeLandUpgrade,
{ HomeLandManager.BuildData[i], self.mapData[i] })
end)
--打开加速
Util.AddOnceClick(self.mapData[i].btnSpeedUp, function()
local value = math.ceil((HomeLandManager.BuildData[i].endTime - GetTimeStamp()) / tonumber(costStr[1])) *
tonumber(costStr[3])
-- LogGreen("需要16:"..tostring(value).." 现有:"..tostring(BagManager.GetTotalItemNum(16)))
if BagManager.GetTotalItemNum(16) >= value then
MsgPanel.ShowTwo(string.format(Language[11129], value), function() end, function()
if BagManager.GetTotalItemNum(16) < value then
PopupTipPanel.ShowTip(Language[11562])
return
end
NetManager.ArchitectureOperateRequest({ HomeLandManager.BuildData[i].dataMain.Id }, 2, 0, function()
self.mapData[i].leftTime = -1
PopupTipPanel.ShowTip(string.format(Language[11130],
GetLanguageStrById(HomeLandManager.BuildData[i].dataMain.Name),
HomeLandManager.BuildData[i].dataSingle.level))
--特效
self.mapData[i].effect2:SetActive(true)
Timer.New(function()
self.mapData[i].effect2:SetActive(false)
end, 1):Start()
NetManager.HomeInfoRequest(function()
self:OnShow()
end)
end)
end, Language[10685], Language[10686])
else
PopupTipPanel.ShowTip(Language[11562])
end
end)
--特权加速
Util.AddOnceClick(self.mapData[i].btnUsePri, function()
local level = HomeLandManager.BuildData[i].dataSingle.level
NetManager.ArchitectureOperateRequest({ HomeLandManager.BuildData[i].dataMain.Id }, 4, 4021, function()
PrivilegeManager.RefreshPrivilegeUsedTimes(4021, 1)
self.mapData[i].leftTime = -1
if level ~= HomeLandManager.BuildData[i].dataSingle.level then
PopupTipPanel.ShowTip(string.format(Language[11130],
GetLanguageStrById(HomeLandManager.BuildData[i].dataMain.Name),
HomeLandManager.BuildData[i].dataSingle.level))
end
--特效
self.mapData[i].effect2:SetActive(true)
Timer.New(function()
self.mapData[i].effect2:SetActive(false)
end, 1):Start()
NetManager.HomeInfoRequest(function()
self:OnShow()
end)
end)
end)
--取消
-- Util.AddOnceClick(self.mapData[i].btnCancel,function ()
-- NetManager.ArchitectureOperateRequest({HomeLandManager.BuildData[i].dataMain.Id},3,0,function ()
-- self:OnShow()
-- end)
-- end)
end
--建木神树
Util.AddOnceClick(self.mapData[7].Obj, function()
if ActTimeCtrlManager.SingleFuncState(FUNCTION_OPEN_TYPE.SACREDTREE) then
UIManager.OpenPanel(UIName.SacredTreePanel)
end
end)
--摘星阁
Util.AddOnceClick(self.mapData[6].Obj, function()
if HomeLandManager.BuildData[6].dataMain.IsOpen ~= 1 then
PopupTipPanel.ShowTip(string.format(Language[11585], HomeLandManager.BuildData[6].dataMain.Name))
return
end
if HomeLandConfig[6].UnlockLevel[1] == 2 and HomeLandManager.BuildData[5].level < HomeLandConfig[6].UnlockLevel[2] then
PopupTipPanel.ShowTip(string.format(Language[11586], HomeLandConfig[6].UnlockLevel[2]))
return
end
-- UIManager.OpenPanel(UIName.GeneralPopup,GENERAL_POPUP_TYPE.HomeLandEquip)
UIManager.OpenPanel(UIName.HomeLandEquipPopup)
end)
--产出详情框
Util.AddClick(self.maskBtn, function()
bool = false
self.maskBtn:SetActive(bool)
self:SetDetailBar()
end)
Util.AddClick(self.Btn, function()
bool = not bool
self:SetDetailBar()
end)
--一键收获
Util.AddClick(self.oneKey, function()
local time = GetTimeStamp()
local count1 = 0 --是否到达可收取的时间
local count2 = 0
for i = 1, 4 do
local curObjData = self.mapData[i].data
-- LogGreen("curObjData:"..tostring(curObjData.dataSingle.Id))
local remainTime = time - curObjData.startTime
if remainTime < 60 then
count1 = count1 + 1 --时间不够
end
if curObjData.dataSingle.Storage and curObjData.dataSingle.Storage[2][1] ~= 14 and curObjData.dataSingle.Storage[2][2] <= BagManager.GetTotalItemNum(curObjData.dataSingle.Storage[2][1]) then
count2 = count2 + 1 --容量不够
end
end
if count1 == 4 then
PopupTipPanel.ShowTip(Language[11587])
return
end
if count2 == 4 then
PopupTipPanel.ShowTip(Language[11588])
return
elseif count2 == 0 then
--全部都可以收取
else
local thread = coroutine.start(function()
for i = 1, 4 do
local curObjData = self.mapData[i].data
LogRedTable(curObjData.dataSingle.Storage)
if curObjData.dataSingle.Storage and curObjData.dataSingle.Storage[2][1] ~= 14 and curObjData.dataSingle.Storage[2][2] ~= 0 and curObjData.dataSingle.Storage[2][2] <= BagManager.GetTotalItemNum(curObjData.dataSingle.Storage[2][1]) then
LogError("curObjData.dataSingle.Storage[2][2]==" ..
curObjData.dataSingle.Storage[2][1] ..
" " .. BagManager.GetTotalItemNum(curObjData.dataSingle.Storage[2][1]))
PopupTipPanel.ShowTip(string.format(Language[11589],
ItemConfig[curObjData.dataSingle.Storage[2][1]].Name))
end
coroutine.wait(0.1)
end
end)
end
NetManager.HomeAllGainRequset(0, function()
self:OnShow()
end)
end)
--特权卡
Util.AddClick(self.Privi, function()
UIManager.OpenPanel(UIName.GeneralInfoPopup, GENERALINFO_TYPE.HomeLandPrivilege)
end)
Util.AddClick(self.PriviBtn, function()
UIManager.OpenPanel(UIName.GeneralInfoPopup, GENERALINFO_TYPE.HomeLandPrivilege)
end)
--右侧按钮们
Util.AddClick(self.taskBtn, function()
MonsterCampManager.preType = 5
UIManager.OpenPanel(UIName.TrialRewardPopup, HomeLandManager.SetRewardData(), function(id, rewardFunc)
NetManager.TakeMissionRewardRequest(TaskTypeDef.HomeLandTask, id, function(msg)
UIManager.OpenPanel(UIName.RewardItemPopup, msg.drop, 1, function()
if rewardFunc then
rewardFunc()
end
end)
end)
end, 5)
end)
end
function HomeLand:AddListener()
Game.GlobalEvent:AddEvent(GameEvent.UI.OnUpdateData, self.OnShow, self)
Game.GlobalEvent:AddEvent(GameEvent.Bag.BagGold, self.OnShow, self)
Game.GlobalEvent:AddEvent(GameEvent.Privilege.OnPrivilegeZeroUpdate, self.OnShow, self)
end
function HomeLand:RemoveListener()
Game.GlobalEvent:RemoveEvent(GameEvent.UI.OnUpdateData, self.OnShow, self)
Game.GlobalEvent:RemoveEvent(GameEvent.Bag.BagGold, self.OnShow, self)
Game.GlobalEvent:RemoveEvent(GameEvent.Privilege.OnPrivilegeZeroUpdate, self.OnShow, self)
end
--待功能扩展(试图打开某个状态)
function HomeLand:OnOpen()
self.UpView:OnOpen({ showType = UpViewOpenType.ShowLeft, panelType = PanelType.HomeLand })
end
function HomeLand:OnSortingOrderChange()
for i = 1, 7 do
local curObj = self.mapData[i]
Util.SetParticleSortLayer(curObj.effect1, self.sortingOrder + 1)
Util.SetParticleSortLayer(curObj.effect2, self.sortingOrder + 1)
curObj.BtnsCanvas.overrideSorting = true
curObj.BtnsCanvas.sortingOrder = self.sortingOrder + 2
end
SetParticleSortLayer(self.PriviBtn, self.sortingOrder + 2)
end
function HomeLand:OnShow()
self.curSelect = 0
for j = 1, 5 do
self.mapData[j].Btns:SetActive(false)
end
HomeLandManager.CheckPrivilege()
self:SetBuildsState()
self:SetTime()
self:InitDetailBar()
self:SetRedPoint()
self.Privi:SetActive(false)
self.PriviBtn:SetActive(false)
end
--初始化详细信息列表
function HomeLand:InitDetailBar()
local targetPos = bool and Vector3.zero or Vector3.New(863, -722, 0)
self.Kuang:GetComponent("RectTransform").localPosition = targetPos
self.maskBtn:SetActive(bool)
for key, value in pairs(self.preList1) do
value:SetActive(false)
end
for key, value in pairs(self.preList2) do
value:SetActive(false)
end
for i = 1, 7 do
local data = HomeLandManager.BuildData[i]
if data.dataMain.Type == 1 and data.startTime > 0 then
--进度条部分
if data.dataSingle.Gain[1] ~= 14 and data.dataSingle.Storage[2][2] ~= 0 then
local go = self.preList1[i]
if not go then
go = newObjToParent(self.progressPre, self.progress.transform)
self.preList1[i] = go
end
go:SetActive(true)
local icon = Util.GetGameObject(go, "Icon"):GetComponent("Image")
local num = Util.GetGameObject(go, "Num"):GetComponent("Text")
local slider = Util.GetGameObject(go, "Slide/Image"):GetComponent("Image")
icon.sprite = self.spLoader:LoadSprite(GetSpriteNameByItemId(data.dataSingle.Gain[1]))
local value = data.dataSingle.Storage[2][2] / 100000 > 10 and
math.floor(data.dataSingle.Storage[2][2] / 10000) .. Language[10037] or data.dataSingle.Storage[2]
[2]
num.text = string.format("%s/%s", BagManager.GetTotalItemNum(data.dataSingle.Storage[2][1]), value)
slider.fillAmount = BagManager.GetTotalItemNum(data.dataSingle.Storage[2][1]) /
data.dataSingle.Storage[2][2]
end
--数值部分
local go2 = self.preList2[i]
if not go2 then
go2 = newObjToParent(self.detailPre, self.detail.transform)
self.preList2[i] = go2
end
go2:SetActive(true)
local icon = Util.GetGameObject(go2, "Icon"):GetComponent("Image")
local num = Util.GetGameObject(go2, "Num"):GetComponent("Text")
icon.sprite = self.spLoader:LoadSprite(GetSpriteNameByItemId(data.dataSingle.Gain[1]))
--local v = ConfigManager.GetConfigData(ConfigName.PrivilegeTypeConfig,4022).Condition[1][2]/10000-1
local lv = GetShenzunLv()
local v = ConfigManager.GetConfigData(ConfigName.PrivilegeTypeConfig, 4022).Condition[lv + 1][2] / 10000 - 1
-- local priValue = HomeLandManager.activePrivilege and string.format("+%s",math.ceil(data.dataSingle.Gain[2]*v)) or ""
local priValue = string.format("+%s", math.ceil(data.dataSingle.Gain[2] * v))
num.text = string.format(Language[11590], ItemConfig[data.dataSingle.Gain[1]].Name, data.dataSingle.Gain[2],
priValue)
end
end
end
--详细信息列表的移动
function HomeLand:SetDetailBar()
self.maskBtn:SetActive(bool)
local targetPos = bool and Vector3.New(216, -722, 0) or Vector3.New(863, -722, 0)
local rotation = bool and Vector3.New(0, 180, 0) or Vector3.zero
self.Kuang.transform:DOLocalMove(targetPos, 0.8)
self.BtnImage.transform:DORotate(rotation, 0.8)
end
--设置地图内建筑信息
function HomeLand:SetBuildsState()
for i = 1, 7 do
local data = HomeLandManager.BuildData[i]
local curObj = self.mapData[i]
curObj.data = HomeLandManager.BuildData[i]
curObj.OpenLimit:SetActive(true)
curObj.Lock:SetActive(true)
curObj.btnUpgrade:SetActive(false)
-- curObj.btnCancel:SetActive(false)
curObj.btnSpeedUp:SetActive(false)
curObj.btnUsePri:SetActive(false)
curObj.levelImg:SetActive(false)
Util.SetGray(curObj.NameImg, true)
curObj.effect1:SetActive(false)
curObj.updateTime:SetActive(false)
curObj.CanGet:SetActive(false)
Util.SetParticleSortLayer(curObj.effect1, self.sortingOrder + 1)
Util.SetParticleSortLayer(curObj.effect2, self.sortingOrder + 1)
curObj.BtnsCanvas.overrideSorting = true
curObj.BtnsCanvas.sortingOrder = self.sortingOrder + 2
if data.dataMain.IsOpen == 1 then --部分建筑未进入版本显示未开放
--如果主城未到等级,显示开启条件
if HomeLandConfig[i].UnlockLevel[1] == 1 and PlayerManager.level < HomeLandConfig[i].UnlockLevel[2] then
curObj.limitText.text = string.format(Language[11591], HomeLandConfig[i].UnlockLevel[2])
elseif HomeLandConfig[i].UnlockLevel[1] == 2 and HomeLandManager.BuildData[5].level < HomeLandConfig[i].UnlockLevel[2] then
curObj.limitText.text = string.format(Language[11586], HomeLandConfig[i].UnlockLevel[2])
elseif HomeLandConfig[i].UnlockLevel[1] == 3 and PlayerManager.level < GlobalSystemConfig[HomeLandConfig[i].UnlockLevel[2]].OpenRules[2] then
curObj.limitText.text = string.format(Language[11591],
GlobalSystemConfig[HomeLandConfig[i].UnlockLevel[2]].OpenRules[2])
else
curObj.OpenLimit:SetActive(false)
curObj.Lock:SetActive(false)
Util.SetGray(curObj.NameImg, false)
if data.dataSingle then
curObj.level.text = string.format(Language[11132], data.dataSingle.level)
curObj.levelImg:SetActive(true)
end
end
if data.dataSingle then
if data.dataSingle.Gain then --有产出的才需要icon
curObj.Icon.sprite = self.spLoader:LoadSprite(GetSpriteNameByItemId(data.dataSingle.Gain[1]))
if not curObj.OpenLimit.activeInHierarchy then
curObj.showTime = data.startTime + 60
curObj.CanGet:SetActive(data.startTime + 60 < GetTimeStamp())
PlayUIAnim(curObj.CanGet)
end
end
if data.endTime > GetTimeStamp() then --如果有结束时间说明在升级,可以取消,可以加速
-- curObj.btnCancel:SetActive(true)
curObj.btnSpeedUp:SetActive(true)
curObj.btnUsePri:SetActive(PrivilegeManager.GetPrivilegeRemainValue(4021) > 0)
curObj.effect1:SetActive(true)
curObj.updateTime:SetActive(true)
curObj.leftTime = data.endTime - GetTimeStamp() >= 0 and data.endTime - GetTimeStamp() or -1
curObj.updateTimeText.text = TimeToFelaxible(curObj.leftTime)
curObj.timeSlide.fillAmount = (data.dataSingle.Time - curObj.leftTime) / data.dataSingle.Time
-- PlayUIAnim(curObj.upgradeImg)
else --如果没有就是可以点击升级
if data.dataSingle.Cost then
-- LogGreen("Name:"..tostring(data.dataSingle.Name).." cost:"..tostring(data.dataSingle.Cost[1][1]).."#"..data.dataSingle.Cost[1][2])
curObj.btnUpgrade:SetActive(true)
end
end
end
else
curObj.limitText.text = Language[10098]
end
Util.AddOnceClick(curObj.CanGet, function()
if data.dataSingle.Storage[2][1] ~= 14 and data.dataSingle.Storage[2][2] ~= 0 and data.dataSingle.Storage[2][2] <= BagManager.GetTotalItemNum(data.dataSingle.Storage[2][1]) then
PopupTipPanel.ShowTip(Language[11592])
return
end
NetManager.HomeAllGainRequset(data.dataMain.Id, function()
self:OnShow()
end)
end)
end
end
--时间
function HomeLand:SetTime()
if self.timer then
self.timer:Stop()
self.timer = nil
end
Util.SetGray(self.Privi, not HomeLandManager.activePrivilege)
self.timer = Timer.New(function()
for i = 1, 7 do
local curObj = self.mapData[i]
curObj.updateTime:SetActive(curObj.leftTime >= 0)
if curObj.leftTime >= 0 then
curObj.updateTimeText.text = TimeToFelaxible(curObj.leftTime)
curObj.leftTime = curObj.leftTime - 1
curObj.timeSlide.fillAmount = (curObj.data.dataSingle.Time - curObj.leftTime) /
curObj.data.dataSingle.Time
if curObj.leftTime < 0 then
curObj.effect2:SetActive(true)
NetManager.HomeInfoRequest(function()
self:OnShow()
if UIManager.IsOpen(UIName.MsgPanel) then
UIManager.ClosePanel(UIName.MsgPanel)
end
PopupTipPanel.ShowTip(string.format(Language[11130],
GetLanguageStrById(curObj.data.dataMain.Name),
curObj.data.dataSingle.level))
Timer.New(function()
curObj.effect2:SetActive(false)
end, 1):Start()
end)
end
end
curObj.CanGet:SetActive(curObj.showTime > 0 and curObj.showTime < GetTimeStamp())
if curObj.showTime > 0 then
local bool = (GetTimeStamp() - curObj.data.startTime) / 60 * curObj.data.dataSingle.Gain[2] >=
curObj.data.dataSingle.Storage[1][2]
local img = bool and "f_fushengmeni_qipaohuang" or "f_fushengmeni_qipao"
curObj.CanGet:GetComponent("Image").sprite = self.spLoader:LoadSprite(img)
end
end
--self.priviDi:SetActive(HomeLandManager.activePrivilege)
--self.PriviBtn:SetActive(not HomeLandManager.activePrivilege)
--Util.SetGray(self.Privi,not HomeLandManager.activePrivilege)
local leftTime = PrivilegeManager.GetPrivilegeLeftTimeById(4022)
--self.priviText.text= "剩余:"..GetLeftTimeStrByDeltaTime(leftTime)
--self.priviText.text = string.format("今日剩余:%s",HomeLandManager.priviLeftTime)
end, 1, -1, true)
self.timer:Start()
end
function HomeLand:SetRedPoint()
for i = 1, 5 do
self.mapData[i].RedPoint:SetActive(HomeLandManager.singleGet(i) or HomeLandManager.singleUpgrade(i))
self.mapData[i].upGradeRed:SetActive(HomeLandManager.singleUpgrade(i))
end
self.mapData[6].RedPoint:SetActive(HomeLandManager.CheckEquipUpgrade())
self.taskRed:SetActive(HomeLandManager.CheckMission())
end
function HomeLand:OnClose()
self.curSelect = 0
bool = false
for j = 1, 5 do
self.mapData[j].Btns:SetActive(false)
end
end
function HomeLand:OnDestroy()
self.spLoader:Destroy()
SubUIManager.Close(self.UpView)
self.UpView = nil
if self.timer then
self.timer:Stop()
self.timer = nil
end
-- if self.playerInfoView then
-- SubUIManager.Close(self.playerInfoView)
-- self.playerInfoView = nil
-- end
end
return HomeLand