diff --git a/Assets/ManagedResources/~Lua/Modules/Harmony/Panel/HongMengEnvoyPanel.lua b/Assets/ManagedResources/~Lua/Modules/Harmony/Panel/HongMengEnvoyPanel.lua index ded543b5cf..926d16f176 100644 --- a/Assets/ManagedResources/~Lua/Modules/Harmony/Panel/HongMengEnvoyPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Harmony/Panel/HongMengEnvoyPanel.lua @@ -107,6 +107,7 @@ function HongMengEnvoyPanel:BindEvent() Game.GlobalEvent:DispatchEvent(GameEvent.HongMeng.UpdateGongMingLv) CheckRedPointStatus(RedPointType.HongMeng_UpTower) + HeroPropManager.SetFormationDirtyByType(FormationTypeDef.FORMATION_NORMAL,Hero_Prop_Type.Base) HarmonyManager.WarPowerChangeNotify() end) else diff --git a/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua b/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua index ead7153e03..b7e4e46204 100644 --- a/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua @@ -418,7 +418,7 @@ function this.NewHeroProp(dId, powerType, propList) this.IsHeroDirty[dId][powerType] = false end --- 设置脏数据 +-- 设置单个神将某一类型属性为脏数据 function this.SetDirtyByType(dId, powerType) if not this.IsHeroDirty[dId] then this.IsHeroDirty[dId] = {} @@ -429,13 +429,21 @@ function this.SetDirtyByType(dId, powerType) HeroPowerManager.SetPowerDirty(dId) end +-- 设置某编队全部神将某一类型属性为脏数据 +function this.SetFormationDirtyByType(formationType,powerType) + local herodata = FormationManager.GetFormationByID(formationType)--FormationTypeDef.FORMATION_NORMAL) + for k,v in pairs(herodata.teamHeroInfos) do + this.SetDirtyByType(v.heroId, powerType) + end +end + -- 将整个人置为脏数据 function this.SetHeroDirty(dId) this.IsHeroDirty[dId] = {} -- 战斗力需要重新计算 HeroPowerManager.SetPowerDirty(dId) end --- 将个人某个数据置为脏数据 +-- 将所有人某个数据置为脏数据 function this.SetAllHeroDirtyByType(powerType) for dId, data in pairs(this.IsHeroDirty) do data[powerType] = true