diff --git a/lua/app/config/tutorial.lua b/lua/app/config/tutorial.lua index 350de8d7..d05e0d87 100644 --- a/lua/app/config/tutorial.lua +++ b/lua/app/config/tutorial.lua @@ -619,6 +619,7 @@ local tutorial = { ["next_id"]=80010, ["type"]=2, ["target_name"]="main_ui(Clone)/bottom_node/bottom_btn_cell_2", + ["func_id"]="dungeon_weapon_open", ["arrow_direction"]=2, ["arrow_offset"]={ 0, @@ -639,6 +640,7 @@ local tutorial = { ["delay"]=0.5, ["type"]=2, ["target_name"]="main_ui(Clone)/sub_ui_node/hero_ui/formation/hero_3", + ["func_id"]="dungeon_weapon_open", ["arrow_direction"]=2, ["arrow_offset"]={ 0, @@ -650,6 +652,7 @@ local tutorial = { ["next_id"]=80030, ["type"]=2, ["target_name"]="hero_detail_ui(Clone)/common/btns/btn_weapon", + ["func_id"]="dungeon_weapon_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -663,7 +666,8 @@ local tutorial = { ["txt_offset"]={ 0, 200 - } + }, + ["func_id"]="dungeon_weapon_open" }, [80040]={ ["next_id"]=80050, @@ -674,6 +678,7 @@ local tutorial = { 200 }, ["target_name"]="hero_detail_ui(Clone)/common/btn_close", + ["func_id"]="dungeon_weapon_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -684,6 +689,7 @@ local tutorial = { ["next_id"]=80060, ["type"]=2, ["target_name"]="main_ui(Clone)/bottom_node/bottom_btn_cell_1", + ["func_id"]="dungeon_weapon_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -703,6 +709,7 @@ local tutorial = { ["next_id"]=80070, ["type"]=2, ["target_name"]="main_ui(Clone)/sub_ui_node/main_comp/right/dungeon", + ["func_id"]="dungeon_weapon_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -717,7 +724,8 @@ local tutorial = { }, [80070]={ ["type"]=2, - ["target_name"]="main_ui(Clone)/sub_ui_node/main_comp/dungeon_comp/scrollrect/viewport/content/scroll_cell_2/btn_start", + ["target_name"]="main_ui(Clone)/sub_ui_node/main_comp/dungeon_comp/scrollrect/viewport/content/dungeon_weapon_open/btn_start", + ["func_id"]="dungeon_weapon_open", ["arrow_direction"]=2, ["arrow_offset"]={ 0, @@ -728,6 +736,7 @@ local tutorial = { ["next_id"]=90010, ["type"]=2, ["target_name"]="main_ui(Clone)/bottom_node/bottom_btn_cell_2", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=2, ["arrow_offset"]={ 0, @@ -748,6 +757,7 @@ local tutorial = { ["delay"]=0.5, ["type"]=2, ["target_name"]="main_ui(Clone)/sub_ui_node/hero_ui/formation/hero_3", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=2, ["arrow_offset"]={ 0, @@ -759,6 +769,7 @@ local tutorial = { ["next_id"]=90030, ["type"]=2, ["target_name"]="hero_detail_ui(Clone)/common/btns/btn_armor", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -772,7 +783,8 @@ local tutorial = { ["txt_offset"]={ 0, 200 - } + }, + ["func_id"]="dungeon_armor_open" }, [90040]={ ["next_id"]=90050, @@ -783,6 +795,7 @@ local tutorial = { 200 }, ["target_name"]="hero_detail_ui(Clone)/common/btn_close", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -793,6 +806,7 @@ local tutorial = { ["next_id"]=90060, ["type"]=2, ["target_name"]="main_ui(Clone)/bottom_node/bottom_btn_cell_1", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -812,6 +826,7 @@ local tutorial = { ["next_id"]=90070, ["type"]=2, ["target_name"]="main_ui(Clone)/sub_ui_node/main_comp/right/dungeon", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=1, ["arrow_offset"]={ 0, @@ -827,7 +842,8 @@ local tutorial = { [90070]={ ["next_id"]=90080, ["type"]=2, - ["target_name"]="main_ui(Clone)/sub_ui_node/main_comp/dungeon_comp/scrollrect/viewport/content/scroll_cell_3/btn_start", + ["target_name"]="main_ui(Clone)/sub_ui_node/main_comp/dungeon_comp/scrollrect/viewport/content/dungeon_armor_open/btn_start", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=2, ["arrow_offset"]={ 0, @@ -837,6 +853,7 @@ local tutorial = { [90080]={ ["type"]=2, ["target_name"]="dungeon_armor_main_ui(Clone)/scrollrect/viewport/content/scroll_cell_1/touch_node", + ["func_id"]="dungeon_armor_open", ["arrow_direction"]=4, ["arrow_offset"]={ 20, diff --git a/lua/app/ui/dungeon/dungeon_board_cell.lua b/lua/app/ui/dungeon/dungeon_board_cell.lua index 206e67b3..a8b672e6 100644 --- a/lua/app/ui/dungeon/dungeon_board_cell.lua +++ b/lua/app/ui/dungeon/dungeon_board_cell.lua @@ -30,6 +30,7 @@ end function DungeonBoardCell:refresh(moduleKey) self.moduleKey = moduleKey + self:getGameObject().name = self.moduleKey self:refreshInfo() self:refreshRewards() end diff --git a/lua/app/ui/dungeon_armor/armor_fund_ui.lua b/lua/app/ui/dungeon_armor/armor_fund_ui.lua index e1f13df9..bc5315a9 100644 --- a/lua/app/ui/dungeon_armor/armor_fund_ui.lua +++ b/lua/app/ui/dungeon_armor/armor_fund_ui.lua @@ -76,7 +76,7 @@ end function ArmorFundUI:refreshBuy() local gift = DataManager.ShopData:getActGiftConfig()[self.curGiftId] - self.txDesc:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_16) .. " " .. gift.value .. "%") + self.txDesc:setText(I18N:getGlobalText(I18N.GlobalConst.DUNGEON_ARMOR_DESC_16) .. " " .. gift.value .. "%") if not self.armorEntity:isBoughtFundStage(self.curStage) then -- 可购买 self.txBuy:setText(GFunc.getFormatPrice(gift.recharge_id)) diff --git a/lua/app/ui/dungeon_armor/cell/armor_fund_reward_cell.lua b/lua/app/ui/dungeon_armor/cell/armor_fund_reward_cell.lua index 45a50267..49a6c155 100644 --- a/lua/app/ui/dungeon_armor/cell/armor_fund_reward_cell.lua +++ b/lua/app/ui/dungeon_armor/cell/armor_fund_reward_cell.lua @@ -62,7 +62,11 @@ function ArmorFundRewardCell:refresh(id) if not self.armorEntity:isMeetFundReward(self.rewardId) or self.armorEntity:isGotFundReward(self.rewardId) then -- 不满足条件 or 已领取 self.txBtn:setActive(true) - self.txBtn:setText(I18N:getGlobalText(I18N.GlobalConst.BTN_CLAIM)) + if self.armorEntity:isGotFundReward(self.rewardId) then + self.txBtn:setText(I18N:getGlobalText(I18N.GlobalConst.BTN_DONE)) + else + self.txBtn:setText(I18N:getGlobalText(I18N.GlobalConst.BTN_CLAIM)) + end self.btnGet:setTouchEnable(false) self.btnGet:setSprite(GConst.ATLAS_PATH.COMMON, "common_btn_grey_2") self.baseObject:setSprite(GConst.ATLAS_PATH.UI_DUGEON_ARMOR, "dungeon_armor_bg_1") diff --git a/lua/app/ui/main_city/component/dungeon_comp.lua b/lua/app/ui/main_city/component/dungeon_comp.lua index 74c85f10..bd9de764 100644 --- a/lua/app/ui/main_city/component/dungeon_comp.lua +++ b/lua/app/ui/main_city/component/dungeon_comp.lua @@ -31,13 +31,22 @@ function DungeonComp:init() self:refreshShow() end -function DungeonComp:refreshShow() +function DungeonComp:refreshShow(targetMuduleKey) if EDITOR_MODE then Logger.logHighlight("更新副本显示."..tostring(Time:getTodaySurplusTime())) end self.openDungeons = DataManager.DungeonData:getOpenDungeons() + local targetIndex + if targetMuduleKey then + for index, dungeon in ipairs(self.openDungeons) do + if dungeon.module == targetMuduleKey then + targetIndex = index + break + end + end + end self.scrollRectComp:clearCells() - self.scrollRectComp:refillCells(#self.openDungeons) + self.scrollRectComp:refillCells(#self.openDungeons, nil, targetIndex) -- 跨天定时器 if self.countdownSid then diff --git a/lua/app/ui/main_city/component/main_comp.lua b/lua/app/ui/main_city/component/main_comp.lua index 9c167abc..99e93112 100644 --- a/lua/app/ui/main_city/component/main_comp.lua +++ b/lua/app/ui/main_city/component/main_comp.lua @@ -87,6 +87,14 @@ function MainComp:refreshModule(selectModule) if DataManager.ArenaData:needShowPopGift() and DataManager.ArenaData:getGiftId() then ModuleManager.ArenaManager:showGiftPopUI() end + elseif self.curModuleType == GConst.MainCityConst.MAIN_MODULE.DUNGEON then + if DataManager.TutorialData:getIsInTutorial() then + local moduleKey = DataManager.TutorialData:getTargetFuncId() + if moduleKey then + local dungeonComp = self.moduleMap[self.curModuleType] + dungeonComp:refreshShow(moduleKey) + end + end end for idx, cell in pairs(self.moduleMap) do diff --git a/lua/app/userdata/dungeon/dungeon_armor_entity.lua b/lua/app/userdata/dungeon/dungeon_armor_entity.lua index 82a5f306..0697e22e 100644 --- a/lua/app/userdata/dungeon/dungeon_armor_entity.lua +++ b/lua/app/userdata/dungeon/dungeon_armor_entity.lua @@ -410,25 +410,23 @@ end -- 基金阶段是否已购买 function DungeonArmorEntity:isBoughtFundStage(stage) - local bought = DataManager.ShopData:getActGiftMapByType(PayManager.PURCHARSE_TYPE.ACT_GIFT) - if not stage then return false end - if not self:getFundStageGiftId(stage) then - return + local giftId = self:getFundStageGiftId(stage) + + if not giftId then + return false end + local count = DataManager.ShopData:getGiftBoughtNum(PayManager.PURCHARSE_TYPE.ACT_GIFT, giftId) + if EDITOR_MODE then - Logger.logHighlight("支线基金购买状态/"..self:getFundStageGiftId(stage)) - Logger.printTable(bought) - end - if bought then - return bought[self:getFundStageGiftId(stage)] + Logger.logHighlight("支线基金购买状态:"..giftId.."/"..count) end - return false + return count > 0 end -- 获取基金阶段标题 diff --git a/lua/app/userdata/hero/hero_entity.lua b/lua/app/userdata/hero/hero_entity.lua index bb62c403..035c44b3 100644 --- a/lua/app/userdata/hero/hero_entity.lua +++ b/lua/app/userdata/hero/hero_entity.lua @@ -168,9 +168,10 @@ function HeroEntity:addTotalAttrValue(name, add) end function HeroEntity:getTotalAttrValue(name) - if #table.keys(self.allAttr) == 0 then + if table.nums(self.allAttr) <= 0 then self:initAttr() end + if not self.allAttr[name] then return 0 end diff --git a/lua/app/userdata/player/player_data.lua b/lua/app/userdata/player/player_data.lua index ffaafe8a..b6bc9827 100644 --- a/lua/app/userdata/player/player_data.lua +++ b/lua/app/userdata/player/player_data.lua @@ -251,7 +251,7 @@ end -- 获取玩家昵称 function PlayerData:getNickname() if self.data.playInfo.nickName == nil or #self.data.playInfo.nickName == 0 then - self.data.playInfo.nickName = I18N:getGlobalText(I18N.GlobalConst.NEW_PLAYER) + return I18N:getGlobalText(I18N.GlobalConst.NEW_PLAYER) end return self.data.playInfo.nickName end diff --git a/lua/app/userdata/tutorial/tutorial_data.lua b/lua/app/userdata/tutorial/tutorial_data.lua index c47a17b1..6415d6e0 100644 --- a/lua/app/userdata/tutorial/tutorial_data.lua +++ b/lua/app/userdata/tutorial/tutorial_data.lua @@ -191,6 +191,10 @@ function TutorialData:getTargetName() return self.tutorialInfo.target_name end +function TutorialData:getTargetFuncId() + return self.tutorialInfo.func_id +end + function TutorialData:getTargetHeroId() return self.tutorialInfo.heroid end