diff --git a/Assets/ManagedResources/Prefabs/UI/Mail/MainSingleInfoPanel.prefab b/Assets/ManagedResources/Prefabs/UI/Mail/MainSingleInfoPanel.prefab index 7717e5e422..e2f048297e 100644 --- a/Assets/ManagedResources/Prefabs/UI/Mail/MainSingleInfoPanel.prefab +++ b/Assets/ManagedResources/Prefabs/UI/Mail/MainSingleInfoPanel.prefab @@ -33,7 +33,7 @@ RectTransform: m_Children: - {fileID: 224844119586139480} m_Father: {fileID: 224352509590574532} - m_RootOrder: 10 + m_RootOrder: 11 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -357,7 +357,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!224 &224211946037199562 RectTransform: m_ObjectHideFlags: 0 @@ -371,7 +371,7 @@ RectTransform: m_Children: - {fileID: 224590269023440768} m_Father: {fileID: 224352509590574532} - m_RootOrder: 9 + m_RootOrder: 10 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0} m_AnchorMax: {x: 0.5, y: 0} @@ -866,8 +866,8 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} - m_AnchoredPosition: {x: 51.99829, y: 0.000010692089} - m_SizeDelta: {x: 837.9, y: 11.82} + m_AnchoredPosition: {x: 51.99829, y: -0.000019782978} + m_SizeDelta: {x: 837.9, y: 0} m_Pivot: {x: -9.313226e-10, y: -0.00000009685755} --- !u!114 &114856704771779596 MonoBehaviour: @@ -1186,6 +1186,7 @@ RectTransform: - {fileID: 224787721365717512} - {fileID: 224771781814760738} - {fileID: 224593020912391396} + - {fileID: 1973047851017621686} - {fileID: 224211946037199562} - {fileID: 224801584438335912} - {fileID: 3870214860758081861} @@ -1517,7 +1518,7 @@ RectTransform: m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0, y: 1} m_AnchorMax: {x: 0, y: 1} - m_AnchoredPosition: {x: -0.000061035156, y: -0.00007426977} + m_AnchoredPosition: {x: -0.000061035156, y: -0.000036707417} m_SizeDelta: {x: 857, y: 0} m_Pivot: {x: 0, y: 1} --- !u!222 &4820645118571433122 @@ -1754,7 +1755,7 @@ RectTransform: m_LocalScale: {x: 1, y: 1, z: 1} m_Children: [] m_Father: {fileID: 224352509590574532} - m_RootOrder: 12 + m_RootOrder: 13 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -1831,7 +1832,7 @@ RectTransform: m_Children: - {fileID: 3635776725646956425} m_Father: {fileID: 224352509590574532} - m_RootOrder: 11 + m_RootOrder: 12 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} @@ -1937,3 +1938,77 @@ Animator: m_HasTransformHierarchy: 1 m_AllowConstantClipSamplingOptimization: 1 m_KeepAnimatorControllerStateOnDisable: 0 +--- !u!1 &8506394037060393049 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 1973047851017621686} + - component: {fileID: 873176990563179154} + - component: {fileID: 3063341330409987123} + m_Layer: 5 + m_Name: line + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &1973047851017621686 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8506394037060393049} + m_LocalRotation: {x: -0, y: -0, z: -0, w: 1} + m_LocalPosition: {x: 0, y: 0, z: 0} + m_LocalScale: {x: 1, y: 1, z: 1} + m_Children: [] + m_Father: {fileID: 224352509590574532} + m_RootOrder: 9 + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: -0.56073, y: -89.29999} + m_SizeDelta: {x: 912.8, y: 4.4400024} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &873176990563179154 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8506394037060393049} + m_CullTransparentMesh: 0 +--- !u!114 &3063341330409987123 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 8506394037060393049} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: -765806418, guid: f70555f144d8491a825f0804e09c671c, type: 3} + m_Name: + m_EditorClassIdentifier: + m_Material: {fileID: 0} + m_Color: {r: 1, g: 1, b: 1, a: 1} + m_RaycastTarget: 1 + m_OnCullStateChanged: + m_PersistentCalls: + m_Calls: [] + m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, + Version=1.0.0.0, Culture=neutral, PublicKeyToken=null + m_Sprite: {fileID: 21300000, guid: 19d5542f3ad36154883cfc2022d17e0a, type: 3} + m_Type: 0 + m_PreserveAspect: 0 + m_FillCenter: 1 + m_FillMethod: 4 + m_FillAmount: 1 + m_FillClockwise: 1 + m_FillOrigin: 0 + m_UseSpriteMesh: 0 diff --git a/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua b/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua index d8f1f9fc3a..dfddb7a983 100644 --- a/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/Hero/HeroPropManager.lua @@ -249,7 +249,7 @@ function this.GetHeroProp(dId, formationId, NoFuncProp) DoubleTableCompound(allPropList, basePropList) -- 自身条件属性加成 - local conPropList = this.GetConditionProp(dId) + local conPropList = this.GetConditionProp(dId,formationId) Log_Prop("自身条件属性") LogGreenTable_Prop(conPropList) DoubleTableCompound(allPropList, conPropList) @@ -286,7 +286,7 @@ function this.GetHeroProp(dId, formationId, NoFuncProp) DoubleTableCompound(allPropList, teamProp) -- 团队条件属性加成 Log_Prop("团队条件属性") - local conTeamProp = this.GetConditionTeamData(heroId, dId) + local conTeamProp = this.GetConditionTeamData(heroId, dId,formationId) LogGreenTable_Prop(conTeamProp) DoubleTableCompound(allPropList, conTeamProp) end @@ -488,7 +488,7 @@ function this.GetConditionPropByType(dId, powerType) end -- 获取自身的条件属性 -function this.GetConditionProp(dId) +function this.GetConditionProp(dId,teamId) -- 判空 if not this.IsConPropDirty[dId] then this.IsConPropDirty[dId] = {} @@ -496,6 +496,7 @@ function this.GetConditionProp(dId) if this.IsConPropDirty[dId].isDirty ~= false then -- 创建计算属性的数据 local list = {} + local formationList = FormationManager.GetFormationByID(teamId) local cData = this.CreateHeroCountData(dId) for _, powerType in pairs(Hero_Prop_Type) do if this.IsConPropDirty[dId][powerType] ~= false then @@ -503,7 +504,7 @@ function this.GetConditionProp(dId) if this.ConList[dId] and this.ConList[dId][powerType] then for _, cond in ipairs(this.ConList[dId][powerType]) do if Condition_Prop_Func[cond.type] then - local propList = Condition_Prop_Func[cond.type](cData, cData, cond.propList, cond.args) + local propList = Condition_Prop_Func[cond.type](cData, cData, cond.propList, cond.args,formationList) DoubleTableCompound(condProp, propList) end end @@ -591,15 +592,16 @@ function this.SetConditionTeamData(dId, powerType, condList) end -- 获取团队条件数据(动态计算,不缓存属性) -function this.GetConditionTeamData(dId, tdId) +function this.GetConditionTeamData(dId, tdId,teamId) local list = {} + local formationList = FormationManager.GetFormationByID(teamId) if this.ConTeamList[dId] then local dData = this.CreateHeroCountData(dId) local tdData = this.CreateHeroCountData(tdId) for powerType, conds in pairs(this.ConTeamList[dId]) do for _, cond in ipairs(conds) do if Condition_Prop_Func[cond.type] then - local propList = Condition_Prop_Func[cond.type](dData, tdData, cond.propList, cond.args) + local propList = Condition_Prop_Func[cond.type](dData, tdData, cond.propList, cond.args,formationList) DoubleTableCompound(list, propList) end end diff --git a/Assets/ManagedResources/~Lua/Modules/Hero/PropCondition.lua b/Assets/ManagedResources/~Lua/Modules/Hero/PropCondition.lua index bfc28f912a..1748062e9c 100644 --- a/Assets/ManagedResources/~Lua/Modules/Hero/PropCondition.lua +++ b/Assets/ManagedResources/~Lua/Modules/Hero/PropCondition.lua @@ -5,6 +5,7 @@ local heroConfig = ConfigManager.GetConfig(ConfigName.HeroConfig) Condition_Prop_Type = { LV_100 = 1, -- 100级生效的属性 ELE_TEAM_ADD = 2, -- 元素属性 + TEAM_ELE_NUM = 3, } @@ -30,7 +31,24 @@ Condition_Prop_Func = { if config and args and config.PropertyName == tonumber(args[1]) then return propList end - end + end, + [Condition_Prop_Type.TEAM_ELE_NUM] = function(ower, target, propList, args,teamInfo) + if teamInfo and teamInfo.teamHeroInfos and #teamInfo.teamHeroInfos > 0 then + local num=0 + for _, hero in ipairs(teamInfo.teamHeroInfos) do + local heroData=HeroManager.GetSingleHeroData(hero.heroId) + if heroData and heroData.heroConfig.PropertyName==args[1] then + num=num+1 + end + end + local newProList={} + for key, value in pairs(propList) do + newProList[key]=value*num + end + return newProList + end + + end, } \ No newline at end of file diff --git a/Assets/ManagedResources/~Lua/Modules/Hero/PropHero.lua b/Assets/ManagedResources/~Lua/Modules/Hero/PropHero.lua index d91f9075c4..f1c3b09a9b 100644 --- a/Assets/ManagedResources/~Lua/Modules/Hero/PropHero.lua +++ b/Assets/ManagedResources/~Lua/Modules/Hero/PropHero.lua @@ -75,7 +75,7 @@ local function PassiveListToPropList(skillids) if curSkillData.EffectiveRange > 1 then local args = curSkillData.Value -- 计算 - local pId, v, ct + local pId, v, ct,ele if curSkillData.Type == 90 then -- [a]增加[b],[c]改变 || a[属性]b[float]c[改变类型] pId, v, ct = args[1], args[2], args[3] elseif curSkillData.Type == 94 then -- 全体上阵武将增加[a]%[b],[c]改变 || a[float]b[属性]c[改变类型] @@ -84,6 +84,8 @@ local function PassiveListToPropList(skillids) pId, v, ct = args[1], args[2], args[3] elseif curSkillData.Type == 129 then -- 全体上阵[a]元素角色增加[b]%[c],[d]改变 || a[元素]b[float]c[属性]d[改变类型] pId, v, ct = args[3], args[2], args[4] + elseif curSkillData.Type ==413 then + pId, v, ct,ele = args[3],args[2],args[4],args[1] --a[int],b[float],c[属性],d[int] end -- 获取UI属性 @@ -110,6 +112,10 @@ local function PassiveListToPropList(skillids) local propList = {} propList[propId] = value table.insert(conTeamPropList, {type = Condition_Prop_Type.ELE_TEAM_ADD, propList = propList, args = args}) + elseif curSkillData.Type == 413 then + local propList = {} + propList[propId] = value + table.insert(conTeamPropList, {type = Condition_Prop_Type.TEAM_ELE_NUM, propList = propList, args = args}) else if not teamPropList[propId] then teamPropList[propId] = 0 diff --git a/Assets/ManagedResources/~Lua/Modules/Mail/MainSingleInfoPanel.lua b/Assets/ManagedResources/~Lua/Modules/Mail/MainSingleInfoPanel.lua index 6aecf164d7..31c60106a5 100644 --- a/Assets/ManagedResources/~Lua/Modules/Mail/MainSingleInfoPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/Mail/MainSingleInfoPanel.lua @@ -22,6 +22,7 @@ function MainSingleInfoPanel:InitComponent() self.btnSure=Util.GetGameObject(self.gameObject, "bg/btnSure") self.btnDel = Util.GetGameObject(self.gameObject, "bg/btnDel") self.root = Util.GetGameObject(self.gameObject, "bg/newScroll") + self.line = Util.GetGameObject(self.gameObject, "bg/line") local v21 = Util.GetGameObject(self.gameObject, "bg/newScroll"):GetComponent("RectTransform").rect self.ScrollView = SubUIManager.Open(SubUIConfig.ScrollCycleView, Util.GetGameObject(self.gameObject, "bg/newScroll").transform, self.itemPre, nil, Vector2.New(v21.width, v21.height), 1, 5, Vector2.New(20,15)) @@ -181,10 +182,12 @@ function MainSingleInfoPanel:OnShowMailData(mailData) -- 根据是否有附件动态修改邮件内容显示状态 if #rewardStr > 0 then self.root:SetActive(true) + self.line:SetActive(true) self.mialInfoRoot.transform.sizeDelta = Vector2.New(857, 526) self.mialInfoRoot.transform.localPosition = Vector2.New(0, 173) else self.root:SetActive(false) + self.line:SetActive(false) self.mialInfoRoot.transform.sizeDelta = Vector2.New(857, 898) self.mialInfoRoot.transform.localPosition = Vector2.New(0, 0) end