diff --git a/Assets/ManagedResources/Prefabs/UI/Formation/FormationPanelV2.prefab b/Assets/ManagedResources/Prefabs/UI/Formation/FormationPanelV2.prefab index 9a494d1465..cf31070de7 100644 --- a/Assets/ManagedResources/Prefabs/UI/Formation/FormationPanelV2.prefab +++ b/Assets/ManagedResources/Prefabs/UI/Formation/FormationPanelV2.prefab @@ -29417,6 +29417,81 @@ MonoBehaviour: m_FillClockwise: 1 m_FillOrigin: 0 m_UseSpriteMesh: 0 +--- !u!1 &3003175890636348891 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 5079487216724770517} + - component: {fileID: 6381495182951933313} + - component: {fileID: 4780278568646986318} + m_Layer: 5 + m_Name: tips + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!224 &5079487216724770517 +RectTransform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3003175890636348891} + m_LocalRotation: {x: 0.0003645682, y: 0.017011939, z: -0.02142212, w: 0.9996258} + m_LocalPosition: {x: 0, y: 0, z: -1} + m_LocalScale: {x: 1.0125, y: 1, z: 1} + m_Children: + - {fileID: 8058424431263567449} + m_Father: {fileID: 3460517663753271504} + m_RootOrder: 6 + m_LocalEulerAnglesHint: {x: 0.08400001, y: 1.9480001, z: -2.4540002} + m_AnchorMin: {x: 0.5, y: 0.5} + m_AnchorMax: {x: 0.5, y: 0.5} + m_AnchoredPosition: {x: 42, y: 146} + m_SizeDelta: {x: 600, y: 100} + m_Pivot: {x: 0.5, y: 0.5} +--- !u!222 &6381495182951933313 +CanvasRenderer: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3003175890636348891} + m_CullTransparentMesh: 0 +--- !u!114 &4780278568646986318 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 3003175890636348891} + 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: a53c2e2ae3539624f875064614af67c9, 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 --- !u!1 &3030424547301511535 GameObject: m_ObjectHideFlags: 0 @@ -41804,7 +41879,7 @@ GameObject: m_Icon: {fileID: 0} m_NavMeshLayer: 0 m_StaticEditorFlags: 0 - m_IsActive: 0 + m_IsActive: 1 --- !u!224 &8058424431263567449 RectTransform: m_ObjectHideFlags: 0 @@ -41812,16 +41887,16 @@ RectTransform: m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 5203907596944178455} - 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_LocalRotation: {x: -0.0003645682, y: -0.017011939, z: 0.02142212, w: 0.9996258} + m_LocalPosition: {x: 0, y: 0, z: -0.4168604} + m_LocalScale: {x: 0.9876912, y: 0.99997735, z: 0.99998575} m_Children: [] - m_Father: {fileID: 3460517663753271504} - m_RootOrder: 6 + m_Father: {fileID: 5079487216724770517} + m_RootOrder: 0 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, y: 138.09} + m_AnchoredPosition: {x: -41.118496, y: -9.702057} m_SizeDelta: {x: 600, y: 73.2} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &6735249265126055928 @@ -58972,7 +59047,7 @@ RectTransform: - {fileID: 6181894268526856646} - {fileID: 2849262556332886968} - {fileID: 1902571392055290900} - - {fileID: 8058424431263567449} + - {fileID: 5079487216724770517} m_Father: {fileID: 224946850722905528} m_RootOrder: 15 m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} diff --git a/Assets/ManagedResources/Prefabs/UI/Popup/TalismanInfoPopup.prefab b/Assets/ManagedResources/Prefabs/UI/Popup/TalismanInfoPopup.prefab index ef5dc318b0..65a87c085a 100644 --- a/Assets/ManagedResources/Prefabs/UI/Popup/TalismanInfoPopup.prefab +++ b/Assets/ManagedResources/Prefabs/UI/Popup/TalismanInfoPopup.prefab @@ -145,7 +145,7 @@ MonoBehaviour: m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: - m_Font: {fileID: 12800000, guid: 6fa15837529b0e640af6620b07d3207d, type: 3} + m_Font: {fileID: 12800000, guid: 4b73e9e4512d17e4daeea351e090d33c, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 @@ -157,7 +157,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 0 m_LineSpacing: 1.1 - m_Text: "\u5347\u7EA7\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5566\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427" + m_Text: LanguageIndex: 0 --- !u!1 &369614544467485400 GameObject: @@ -599,7 +599,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 0, y: 0} - m_SizeDelta: {x: 840, y: 0} + m_SizeDelta: {x: 750, y: 0} m_Pivot: {x: 0, y: 0.5} --- !u!222 &692488858698044537 CanvasRenderer: @@ -630,7 +630,7 @@ MonoBehaviour: m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: - m_Font: {fileID: 12800000, guid: 6fa15837529b0e640af6620b07d3207d, type: 3} + m_Font: {fileID: 12800000, guid: 4b73e9e4512d17e4daeea351e090d33c, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 @@ -642,7 +642,7 @@ MonoBehaviour: m_HorizontalOverflow: 0 m_VerticalOverflow: 1 m_LineSpacing: 1.4 - m_Text: "\u5347\u7EA7\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5427\u5566\u5427\u5566\u5427\u5566\u5427\u5566\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427\u5427\u5566\u5427" + m_Text: LanguageIndex: 0 --- !u!1 &1521916040631642428 GameObject: @@ -1008,7 +1008,7 @@ RectTransform: m_AnchorMin: {x: 0, y: 0} m_AnchorMax: {x: 0, y: 0} m_AnchoredPosition: {x: 450, y: 0} - m_SizeDelta: {x: 840, y: 0} + m_SizeDelta: {x: 750, y: 0} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &3784488904274813491 CanvasRenderer: @@ -2187,7 +2187,7 @@ MonoBehaviour: m_TypeName: UnityEngine.UI.MaskableGraphic+CullStateChangedEvent, UnityEngine.UI, Version=1.0.0.0, Culture=neutral, PublicKeyToken=null m_FontData: - m_Font: {fileID: 12800000, guid: 6fa15837529b0e640af6620b07d3207d, type: 3} + m_Font: {fileID: 12800000, guid: 4b73e9e4512d17e4daeea351e090d33c, type: 3} m_FontSize: 32 m_FontStyle: 0 m_BestFit: 0 diff --git a/Assets/ManagedResources/Prefabs/UI/RoleInfo/RoleAwakeSuccessPanel.prefab b/Assets/ManagedResources/Prefabs/UI/RoleInfo/RoleAwakeSuccessPanel.prefab index ae0e5688e5..ac2d4cdeae 100644 --- a/Assets/ManagedResources/Prefabs/UI/RoleInfo/RoleAwakeSuccessPanel.prefab +++ b/Assets/ManagedResources/Prefabs/UI/RoleInfo/RoleAwakeSuccessPanel.prefab @@ -4943,7 +4943,7 @@ ParticleSystem: --- !u!199 &1856257942139737830 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -9625,7 +9625,7 @@ ParticleSystem: --- !u!199 &1856080476376360000 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -14390,7 +14390,7 @@ ParticleSystem: --- !u!199 &1856296212845401034 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -19371,7 +19371,7 @@ ParticleSystem: --- !u!199 &1855965046494566518 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -24326,7 +24326,7 @@ ParticleSystem: --- !u!199 &1856514560942937682 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -29037,7 +29037,7 @@ ParticleSystem: --- !u!199 &1855895684385913908 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -33793,7 +33793,7 @@ ParticleSystem: --- !u!199 &1856180451866631520 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -38585,7 +38585,7 @@ ParticleSystem: --- !u!199 &1856629332692429568 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -38702,7 +38702,7 @@ MonoBehaviour: m_Name: m_EditorClassIdentifier: m_Material: {fileID: 0} - m_Color: {r: 0.3019608, g: 0.54509807, b: 0.41176474, a: 1} + m_Color: {r: 0.4, g: 1, b: 0, a: 1} m_RaycastTarget: 1 m_OnCullStateChanged: m_PersistentCalls: @@ -38759,7 +38759,7 @@ RectTransform: m_AnchorMin: {x: 0.5, y: 0.5} m_AnchorMax: {x: 0.5, y: 0.5} m_AnchoredPosition: {x: 53.79, y: -20} - m_SizeDelta: {x: 108, y: 30} + m_SizeDelta: {x: 108, y: 50} m_Pivot: {x: 0.5, y: 0.5} --- !u!222 &1734632983288119862 CanvasRenderer: @@ -38793,7 +38793,7 @@ MonoBehaviour: m_Font: {fileID: 12800000, guid: 6fa15837529b0e640af6620b07d3207d, type: 3} m_FontSize: 40 m_FontStyle: 0 - m_BestFit: 1 + m_BestFit: 0 m_MinSize: 20 m_MaxSize: 40 m_Alignment: 4 @@ -43605,7 +43605,7 @@ ParticleSystem: --- !u!199 &1855777142281396492 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -48447,7 +48447,7 @@ ParticleSystem: --- !u!199 &1856183630649036132 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -54085,7 +54085,7 @@ ParticleSystem: --- !u!199 &8249727502637510580 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} @@ -59035,7 +59035,7 @@ ParticleSystem: --- !u!199 &8250219202736023134 ParticleSystemRenderer: serializedVersion: 6 - m_ObjectHideFlags: 0 + m_ObjectHideFlags: 2 m_CorrespondingSourceObject: {fileID: 0} m_PrefabInstance: {fileID: 0} m_PrefabAsset: {fileID: 0} diff --git a/Assets/ManagedResources/~Lua/Modules/ActivityGift/CourtesyDressPanel.lua b/Assets/ManagedResources/~Lua/Modules/ActivityGift/CourtesyDressPanel.lua index 2466f4c3ce..15793911a2 100644 --- a/Assets/ManagedResources/~Lua/Modules/ActivityGift/CourtesyDressPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/ActivityGift/CourtesyDressPanel.lua @@ -202,7 +202,7 @@ function CourtesyDressPanel:OnShowActivityData(activityData, activityType, getRe for i = viewCacheNum + 1, #shows do --his.viewCache[item].views[i].gameObject:SetActive(true) local view = SubUIManager.Open(SubUIConfig.ItemView, Util.GetTransform(item, "content").transform) - view:OnOpen(false, { shows[i][1], 0 }, 0.97,false,false,false,self.sortingOrder) + view:OnOpen(false, { shows[i][1], shows[i][2] }, 0.97,false,false,false,self.sortingOrder) viewCacheItem.views[i] = view end this.viewCache[item] = viewCacheItem diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua index 85bfd325ab..3dae1a7af1 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Base/Passivity.lua @@ -167,17 +167,24 @@ local passivityList = { role.Event:AddEvent(BattleEventName.PassiveTreating, OnPassiveTreating,nil,nil,role) end, - --受击后,[a]的概率,回复自身的[b]*[c]的血量 - --a[float],b[属性],c[float] + --受击后,[a]的概率,回复自身的[b]*[c]的血量,伤害类型[d](1:直接伤害 0/不填:所有伤害) + --a[float],b[属性],c[float],d[int] [8] = function(role, args,id,judge) local f1 = args[1] local pro = args[2] local f2 = args[3] - + local type = args[4] local OnBeHit = function(atkRole,damage, bCrit, finalDmg, damageType,skill) + if type and not skill then + return + end BattleUtil.RandomAction(f1, function () local val = floor(BattleUtil.FP_Mul(f2, role:GetRoleData(BattlePropList[pro]))) - BattleUtil.CalTreat(role, role, val) + if pro==12 then + BattleUtil.FinalTreat(role, role, val) + else + BattleUtil.CalTreat(role, role, val) + end end) end role.Event:AddEvent(BattleEventName.RoleBeHit, OnBeHit,nil,nil,role) @@ -3249,15 +3256,22 @@ local passivityList = { role.Event:AddEvent(BattleEventName.PassiveTreatingFactor, onPassiveTreatingFactor,nil,nil,role) end, - -- 受到普攻后降低攻击自己武将的[c]点怒气 - -- c[int] + -- 受到普攻后降低攻击自己武将的[a]点怒气,攻击类型为[b](b:不填或0 为普攻 1:为技能) + -- a[int],b[int] [156] = function(role, args) local i1 = args[1] + local type = args[2] + if not type then + type=0 + end local onBeSkillCastEnd = function(skill) - --同阵营给自己普攻加血不扣除怒气 - if skill.owner.camp~=role.camp and skill.type == BattleSkillType.Normal then - BattleUtil.CalRage(role, skill.owner, i1, CountTypeName.Sub) - end + if type==0 and skill.type~=BattleSkillType.Normal then + return + end + if type==1 and skill.type~=BattleSkillType.Special and skill.type~=BattleSkillType.Extra and skill.type~=BattleSkillType.DeadSkill then + return + end + BattleUtil.CalRage(role, skill.owner, i1, CountTypeName.Sub) end role.Event:AddEvent(BattleEventName.BeSkillCastEnd, onBeSkillCastEnd,nil,nil,role) end, @@ -5923,11 +5937,13 @@ local passivityList = { role.Event:AddEvent(BattleEventName.PassiveDamaging,passiveBeBeDamage,nil,nil,role) end, - --技能击中受到[a,控制效果]的目标,会额外降低[b]点怒气 - -- a[int 控制效果]b[int] + --技能击中受到[a,控制效果]的目标,会额外降低[b]点怒气,额外造成其[c]属性[d]%的间接伤害 + -- a[int 控制效果]b[int],c[int 属性],d[float] [267]=function(role,args,id,judge) local dot=args[1] local i1 = args[2] + local pro = args[3] + local v1 = args[4] --defRole, damage, bCrit, finalDmg, damageType, skill local OnRoleHit = function(skill) if skill and not skill.isTriggerJudge and judge==1 then @@ -5942,7 +5958,18 @@ local passivityList = { for key, value in pairs(list) do local isHave=BattleLogic.BuffMgr:HasBuff(value, BuffName.Control, function(buff) return buff.ctrlType == dot end) if isHave then - BattleUtil.CalRage(role, value, i1, CountTypeName.Sub) + if i1>0 then + BattleUtil.CalRage(role, value, i1, CountTypeName.Sub) + end + if pro and v1 then + --如果是boss 并且额外伤害是根据最大生命则返回 + local isBoss=BattleUtil.CheckIsBoss(value) + if isBoss and pro==12 then + return + end + local val = floor(BattleUtil.FP_Mul(v1, value:GetRoleData(BattlePropList[pro]))) + BattleUtil.FinalDamageCountShield(nil,role, value, val) + end end end end @@ -6181,7 +6208,7 @@ local passivityList = { end, - -- 释放技能后[a]方 [b]最高[c]阵营 友方改变[d][e]点怒气 + -- 释放技能后[a]方 [b]最高[c]阵营 友方改变[d][e]点怒气 (c 填0为所有阵营) -- a[int,敌我方] 0:我方 1:敌方,b[int 属性类型], c[int 阵营id], d[int 改变类型], e[int] [275] = function(role, args,id,judge) local camp = args[1] @@ -6197,9 +6224,9 @@ local passivityList = { if skill.type == BattleSkillType.Special or skill.type==BattleSkillType.Extra then local list=nil if camp==0 then - list= RoleManager.Query(function(v) return v.camp == role.camp and v.element==ele end) + list= RoleManager.Query(function(v) return v.camp == role.camp and (ele==0 or v.element==ele) end) elseif camp==1 then - list= RoleManager.Query(function(v) return v.camp ~= role.camp and v.element==ele end) + list= RoleManager.Query(function(v) return v.camp ~= role.camp and (ele==0 or v.element==ele) end) end if not list or #list == 0 then return @@ -6284,7 +6311,7 @@ local passivityList = { end BattleLogic.Event:AddEvent(BattleEventName.ShieldBuffEnd, OnBuffEnd,nil,nil,role) end, - --发动技能后,[a]概率给我方[b]最高[c]名[d]阵营 [e]属性[f]改变[g],持续[h]回合 + --发动技能后,[a]概率给我方[b]最高[c]名[d]阵营 [e]属性[f]改变[g],持续[h]回合(d 填0为所有阵营) --a[float],b[int 属性],c[int], d[int],e[int 属性],f[int 改变类型],g[float] h[int] [279] = function(role, args,id,judge) local p1=args[1] @@ -6302,7 +6329,7 @@ local passivityList = { end if skill and (skill.type==BattleSkillType.Special or skill.type==BattleSkillType.Extra) then BattleUtil.RandomAction(p1, function () - local list= RoleManager.Query(function(v) return v.camp == role.camp and v.element==ele and not v:IsDead() end) + local list= RoleManager.Query(function(v) return v.camp == role.camp and (ele==0 or v.element==ele) and not v:IsDead() end) if not list or #list ==0 then return end @@ -6322,10 +6349,14 @@ local passivityList = { [280]=function(role,args) role.isImmuneReduceRage=true end, - --当己方[a]阵营神将释放技能怒气不足时,将从精卫身上额外转移怒气释放技能(转移的怒气首先可以保证精卫释放技能) - --a[int 阵营id] + --当己方[a]阵营神将释放技能怒气不足时,将从精卫身上额外转移怒气释放技能,精卫转移有[b]%的概率不减怒 (转移的怒气首先可以保证精卫释放技能) + --a[int 阵营id],b[flaot] [281]=function(role,args) local ele=args[1] + local pro=args[2] + if not pro then + pro=0 + end local onRoleCastSkillBrfore=function(caster) -- 施法者不是自身/自身不足已释放技能/不是己方英雄/不是a 阵营 if caster==role or role.Rage <= role.SuperSkillRage or caster.camp~=role.camp or caster.element~=role.element then @@ -6340,7 +6371,9 @@ local passivityList = { local num=moreRage-lessRage if num>=0 then --精卫转移怒气不算减怒 - role.Rage=role.Rage-lessRage + BattleUtil.RandomAction(1-pro,function() + role.Rage=role.Rage-lessRage + end) BattleUtil.CalRage(role,caster,lessRage,CountTypeName.Add,true) -- 用于记录统计 BattleLogic.Event:DispatchEvent(BattleEventName.RecordTransRage, role, caster, lessRage) @@ -8979,5 +9012,263 @@ local passivityList = { role.Event:AddEvent(BattleEventName.SkillCast, OnSkillCast,nil,nil,role) end, + --释放技能后有[a]%/[b]%/[c]%概率为[d]方属性[e]最[f]的目标改变[g] [h]/[i]/[j]点怒气 + --a[float],b[float],c[float],d[int 0:我方 1:敌方],e[int ],f[int 1:低 0:高],g[int 改变类型],h[int],i[int],j[int] + [372]=function(role, args,id,judge) + local p1=args[1] + local p2=args[2] + local p3=args[3] + local camp=args[4] + local pro=args[5] + local sort=args[6] + local ct=args[7] + local v1=args[8] + local v2=args[9] + local v3=args[10] + local onSkillCast=function(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if not skill then + return + end + if skill.type~=BattleSkillType.Special then + return + end + local seed=Random.Range01() + local addNum=0 + if p3 and seed<=p3 and v3 then + addNum=v3 + end + if addNum==0 and p2 and v2 and seed<=p2 then + addNum=v2 + end + if addNum==0 and p1 and v1 then + addNum=v1 + end + local list=nil + if camp==0 then + list= RoleManager.Query(function(v) return v.camp == role.camp end) + elseif camp==1 then + list= RoleManager.Query(function(v) return v.camp ~= role.camp end) + end + if not list or #list == 0 then + return + end + list = BattleUtil.SortByProp(list, BattlePropList[pro],sort) + BattleUtil.CalRage(role,list[1],addNum,ct) + end + role.Event:AddEvent(BattleEventName.SkillCastEnd,onSkillCast,nil,nil,role) + end, + --己方神将被动附加[a]效果,有[b]%概率立即为其清除,每回合最多生效[c]次,单场战斗最多[d]次;具体效果类型为[e],[f],[g],[h] + --a[int],b[float],c[int],d[int],e[int],f[int],g[int],h[int] + [373]=function(role, args,id,judge) + local type=args[1] + local pro=args[2] + local num=args[3] + local maxNum=args[4] + local v1=args[5] + local v2=args[6] + local v3=args[7] + local v4=args[8] + local ctrls={} + local maxTime=0 + local roundTime=0 + if v1 then + table.insert(ctrls,v1) + end + if v2 then + table.insert(ctrls,v2) + end + if v3 then + table.insert(ctrls,v3) + end + if v4 then + table.insert(ctrls,v4) + end + + local onBuffRecord=function(buff) + if maxTime==maxNum then + return + end + if roundTime==num then + return + end + if buff.caster.camp==role.camp then + return + end + if buff.type~=type then + return + end + local isCon=false + if type==BuffName.Control then + isCon=BattleUtil.ChecklistIsContainValue(ctrls,buff.ctrlType) + end + if isCon then + BattleUtil.RandomAction(pro,function() + --LogError("111111111") + BattleLogic.BuffMgr:ClearBuff(buff.target,function(buff1) + return buff1==buff + end) + roundTime=roundTime+1 + maxTime=maxTime+1 + end) + end + end + BattleLogic.Event:AddEvent(BattleEventName.BuffStart,onBuffRecord,nil,nil,role) + + local onRoundChange=function() + roundTime=0 + end + BattleLogic.Event:AddEvent(BattleEventName.BattleRoundStart,onRoundChange,nil,nil,role) + end, + --技能伤害的[a]%转化为御甲 + --a[float] + [374]=function(role, args,id,judge) + local f1 = args[1] + + local allDamage = 0 + local OnHit = function(atkRole, damage, bCrit, finalDmg, damageType, skill) + if skill and skill.type == BattleSkillType.Special then + --吸血修改,finaldag 改成 damage by:王振兴 2020/08/17 + allDamage = allDamage + damage + end + end + local function onSkillCast(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if skill.type == BattleSkillType.Special then + allDamage = 0 + role.Event:AddEvent(BattleEventName.RoleHit, OnHit,nil,nil,role) + end + end + local function onSkillCastEnd(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if skill.type == BattleSkillType.Special then + role.Event:RemoveEvent(BattleEventName.RoleHit, OnHit) + local value=floor(BattleUtil.ErrorCorrection(allDamage*f1)) + if role.bloodShield then + role.bloodShield:AddValue(value) + else + role:AddBuff(Buff.Create(role, BuffName.Blood,0,value)) + end + -- 清空伤害记录 + allDamage = 0 + end + end + role.Event:AddEvent(BattleEventName.SkillCast, onSkillCast,nil,nil,role) + role.Event:AddEvent(BattleEventName.SkillCastEnd, onSkillCastEnd,nil,nil,role) + end, + --御甲破除时,对攻击者反弹其[a]属性[b]%的伤害 + --a[int],b[float] + [375]=function(role, args,id,judge) + local p1 = args[1] + local v1 = args[2] + local onValueChange=function(pro,caster) + if pro==0 and caster then + --如果是boss 并且额外伤害是根据最大生命则返回 + local isBoss=BattleUtil.CheckIsBoss(caster) + if isBoss and p1==12 then + return + end + local tv = floor(BattleUtil.ErrorCorrection(caster:GetRoleData(BattlePropList[p1]) * v1)) + BattleUtil.FinalDamageCountShield(nil,role,caster,tv) + end + end + role.Event:AddEvent(BattleEventName.BloodValueChange,onValueChange,nil,nil,role) + end, + --自身生命[a]次低于[b]%时,为[c]目标改变[d][e]属性[f]%的效果,持续[g]回合 + --a[int],b[flaot],c[int 查找目标系数],d[int 改变类型],e[int 属性id],f[flaot],g[int] + [376]=function(role, args,id,judge) + local time=args[1] + local pro=args[2] + local targets=args[3] + local ct = args[4] + local p1 = args[5] + local v1 = args[6] + local round = args[7] + + local triggerTime= 0 + local onBeDanage=function() + if triggerTime==time then + return + end + local hp=BattleUtil.GetHPPencent(role) + if hp>=pro or hp==0 then + return + end + local arr = BattleUtil.ChooseTarget(role,targets) + for i=1, #arr do + arr[i]:AddBuff(Buff.Create(arr[i], BuffName.PropertyChange, round, BattlePropList[p1],v1, ct)) + end + triggerTime=triggerTime+1 + end + role.Event:AddEvent(BattleEventName.RoleBeDamaged,onBeDanage,nil,nil,role) + end, + --释放技能时,同时给[a]目标增加减伤[b]%的减伤盾,持续[c]回合。 + --a[int 技能目标参数],b[float],c[int] + [377]=function(role, args,id,judge) + local targets=args[1] + local pro = args[2] + local v1 = args[3] + local onSkillCast=function(skill) + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if not skill then + return + end + local cl = {} + local arr = BattleUtil.ChooseTarget(role,targets) + if not arr or #arr==0 then + return + end + if arr[1].position<=3 then + return + end + local function _CallBack(v, ct) + if v then + table.insert(cl, {v, ct}) + end + end + + role.Event:DispatchEvent(BattleEventName.PassiveShield, _CallBack, ShieldTypeName.RateReduce) + arr[1].Event:DispatchEvent(BattleEventName.PassiveBeShield, _CallBack, ShieldTypeName.RateReduce) + pro = BattleUtil.CountChangeList(pro, cl) + + arr[1]:AddBuff(Buff.Create(role, BuffName.Shield, v1, ShieldTypeName.RateReduce,pro, 0)) + end + role.Event:AddEvent(BattleEventName.SkillCastEnd,onSkillCast,nil,nil,role) + end, + --释放技能时,如对方位处于[a]类型[b]效果,则该次攻击[c]%概率附加[d]类型[e]效果(每回合对目标造成自身[f]属性[g]%的伤害,持续[h]回合) + --a[int],b[int],c[float],d[int],e[int],f[int],g[float],h[int] + [378]=function(role, args,id,judge) + local t1=args[1] + local t2=args[2] + local pro=args[3] + local t3=args[4] + local t4=args[5] + local p1=args[6] + local v1=args[7] + local round=args[8] + + local onRoleHit=function(defRole, damage, bCrit, finalDmg, damageType, skill) + if not skill or skill.type~=BattleSkillType.Special then + return + end + if skill and not skill.isTriggerJudge and judge==1 then + return + end + if not BattleLogic.BuffMgr:HasBuff(defRole, t1, function (buff) return buff.type== t1 and buff.damageType==t2 end,role,1) then + local damage = BattleUtil.ErrorCorrection(v1 * role:GetRoleData(BattlePropList[p1])) + BattleUtil.RandomDot(pro,t4, role, defRole,round, 1, floor(damage)) + end + end + role.Event:AddEvent(BattleEventName.RoleHit,onRoleHit,nil,nil,role) + end, + } return passivityList \ No newline at end of file diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Buff/Blood.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Buff/Blood.lua index 7970d4ec17..be25c277d4 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Buff/Blood.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Buff/Blood.lua @@ -46,7 +46,7 @@ function Blood:OnEnd() self.bloodValue=0 end --计算血甲 -function Blood:CountBloodValue(damage) +function Blood:CountBloodValue(damage,atkRole) local finalDamage=0 self.bloodValue=self.bloodValue-damage if self.bloodValue<=0 then @@ -56,8 +56,9 @@ function Blood:CountBloodValue(damage) local value=0 if self.bloodValue<=0 then value=0 + self.bloodValue=0 end - self.target.Event:DispatchEvent(BattleEventName.BloodValueChange,self.bloodValue/self.target:GetRoleData(RoleDataName.MaxHp)) + self.target.Event:DispatchEvent(BattleEventName.BloodValueChange,self.bloodValue/self.target:GetRoleData(RoleDataName.MaxHp),atkRole) return finalDamage end diff --git a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua index f760c4297d..893c70686d 100644 --- a/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua +++ b/Assets/ManagedResources/~Lua/Modules/Battle/Logic/Misc/BattleUtil.lua @@ -747,7 +747,7 @@ function BattleUtil.FinalDamage(skill, atkRole, defRole, damage, bCrit, damageTy local realDamage=damage --血量防护只会防直接伤害 if defRole.bloodShield and skill then - realDamage=math.abs(defRole.bloodShield:CountBloodValue(damage)) + realDamage=math.abs(defRole.bloodShield:CountBloodValue(damage,atkRole)) -- damage=realDamage end --检测历战之躯 @@ -825,7 +825,7 @@ function BattleUtil.FinalDamageCountShield(skill, atkRole, defRole, damage, bCri local realDamage=damage --血量防护只会防直接伤害 if defRole.bloodShield and skill then - realDamage=math.abs(defRole.bloodShield:CountBloodValue(damage)) + realDamage=math.abs(defRole.bloodShield:CountBloodValue(damage,atkRole)) -- damage=realDamage end --检测历战之躯 diff --git a/Assets/ManagedResources/~Lua/Modules/Formation/FormationPanelV2.lua b/Assets/ManagedResources/~Lua/Modules/Formation/FormationPanelV2.lua index b5eb18717d..f790c4bc04 100644 --- a/Assets/ManagedResources/~Lua/Modules/Formation/FormationPanelV2.lua +++ b/Assets/ManagedResources/~Lua/Modules/Formation/FormationPanelV2.lua @@ -156,8 +156,9 @@ function this:InitComponent() -- 上阵等级提示 this.formTip = Util.GetGameObject(self.transform, "formTip") -- 上阵元素提示 - this.tip = Util.GetGameObject(self.transform, "bottom/tip") - this.tip.gameObject:SetActive(false) + this.tips = Util.GetGameObject(self.transform, "bottom/tips") + this.tip = Util.GetGameObject(self.transform, "bottom/tips/tip") + this.tips.gameObject:SetActive(false) this.mopUpGo.transform:SetParent(self.gameObject.transform) this.mopUpGo:SetActive(false) @@ -265,7 +266,7 @@ function this:OnOpen(_panelType,...) this.eliteTip:SetActive(false) this.failText:SetActive(false) this.formTip:SetActive(false) - this.tip:SetActive(false) + this.tips:SetActive(false) this.empty:SetActive(false) this.opView = require(this.PanelOptionView[_panelType]) diff --git a/Assets/ManagedResources/~Lua/Modules/Formation/View/XuanYuanMirrorFormation.lua b/Assets/ManagedResources/~Lua/Modules/Formation/View/XuanYuanMirrorFormation.lua index 6f7d74468a..8a6c05a71b 100644 --- a/Assets/ManagedResources/~Lua/Modules/Formation/View/XuanYuanMirrorFormation.lua +++ b/Assets/ManagedResources/~Lua/Modules/Formation/View/XuanYuanMirrorFormation.lua @@ -25,7 +25,7 @@ function this.InitView() this.root.btn_2:SetActive(true) this.root.btn_1_lab.text = Language[10710] this.root.btn_2_lab.text = Language[10707] - this.root.tip:SetActive(true) + this.root.tips:SetActive(true) this.root.exampleBtn:SetActive(false) this.root.UpView:OnOpen({showType = UpViewOpenType.ShowLeft, panelType = PanelType.Main}) end @@ -141,7 +141,7 @@ end --- 关闭界面事件 function this.OnCloseBtnClick() - this.root.tip:SetActive(false) + this.root.tips:SetActive(false) this.root:ClosePanel() end diff --git a/Assets/ManagedResources/~Lua/Modules/NewActivity/CommonActPageManager.lua b/Assets/ManagedResources/~Lua/Modules/NewActivity/CommonActPageManager.lua index 23d9b7e3b1..212916352b 100644 --- a/Assets/ManagedResources/~Lua/Modules/NewActivity/CommonActPageManager.lua +++ b/Assets/ManagedResources/~Lua/Modules/NewActivity/CommonActPageManager.lua @@ -19,6 +19,7 @@ local TypeUpdateFunc = { curData.rewards[i].otherData.needItems = configData[j].NeedItems curData.rewards[i].otherData.count = configData[j].Count curData.rewards[i].otherData.composeType = configData[j].ComposeType + curData.rewards[i].otherData.IsShowItem = configData[j].IsShowItem == 1 and true or false curData.rewards[i].otherData.selectId = 0 end end diff --git a/Assets/ManagedResources/~Lua/Modules/NewActivity/ItemUpstarPre.lua b/Assets/ManagedResources/~Lua/Modules/NewActivity/ItemUpstarPre.lua index a1bbba08ad..6b200b4814 100644 --- a/Assets/ManagedResources/~Lua/Modules/NewActivity/ItemUpstarPre.lua +++ b/Assets/ManagedResources/~Lua/Modules/NewActivity/ItemUpstarPre.lua @@ -92,11 +92,11 @@ end function ItemUpstarPre:SetMask() if self.data.otherData.selectId == 0 then self.btnMaskNeedAdd:SetActive(true) - self.btnMaskGet:SetActive(true) + self.btnMaskGet:SetActive(not self.data.otherData.IsShowItem) Util.GetGameObject(self.itemList[1].gameObject,"effects"):SetActive(false) Util.GetGameObject(self.itemList[1].gameObject,"item/icon"):SetActive(false) Util.GetGameObject(self.itemList[3].gameObject,"effects"):SetActive(false) - Util.GetGameObject(self.itemList[3].gameObject,"item/icon"):SetActive(false) + Util.GetGameObject(self.itemList[3].gameObject,"item/icon"):SetActive(self.data.otherData.IsShowItem) else self.btnMaskNeedAdd:SetActive(false) self.btnMaskGet:SetActive(false) diff --git a/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleAwakeSuccessPanel.lua b/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleAwakeSuccessPanel.lua index 278adf14e0..cdb76d7c09 100644 --- a/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleAwakeSuccessPanel.lua +++ b/Assets/ManagedResources/~Lua/Modules/RoleInfo/RoleAwakeSuccessPanel.lua @@ -109,14 +109,17 @@ function this.GetNewTalentDataShow() -- breakSkillDataList[curBreakId] = {index = curBreakId,type = 1,str =""..titleStr..Desc..""} -- end else--升星 - local curUpStarId = curHeroData.heroConfig.Awaken[i][2] - local titleStr = NumToSimplenessFont[heroRankupConfig[curUpStarId].Phase[2]] .. Language[11792] - local _passiveSkillId = passiveSkillConfig[curHeroData.heroConfig.Awaken[i][3]].Id - if upStarSkillDataList[curUpStarId] then - upStarSkillDataList[curUpStarId] = {passiveSkillId = _passiveSkillId,type = 2,index = curUpStarId,str = upStarSkillDataList[curUpStarId].str .. "  "..Desc..""} - else - upStarSkillDataList[curUpStarId] = {passiveSkillId = _passiveSkillId,type = 2,index = curUpStarId,str =""..titleStr..Desc..""} - end + local curUpStarId = curHeroData.heroConfig.Awaken[i][2] + local titleStr = NumToSimplenessFont[heroRankupConfig[curUpStarId].Phase[2]] .. Language[11792] + local _passiveSkillId = passiveSkillConfig[curHeroData.heroConfig.Awaken[i][3]].Id + -- 觉醒成功,非特性不再显示 + if passiveSkillLogicConfig[_passiveSkillId].Judge == 1 then + if upStarSkillDataList[curUpStarId] then + upStarSkillDataList[curUpStarId] = {passiveSkillId = _passiveSkillId,type = 2,index = curUpStarId,str = upStarSkillDataList[curUpStarId].str .. "  "..Desc..""} + else + upStarSkillDataList[curUpStarId] = {passiveSkillId = _passiveSkillId,type = 2,index = curUpStarId,str =""..titleStr..Desc..""} + end + end end end end