From bc70537c490b4afc09fc628c42d025d317bfecc0 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=BD=AF=E4=BB=B6204=E5=BC=A0=E6=99=AF=E7=A8=8B?= <980269297@qq.com> Date: Mon, 22 Jul 2024 14:39:25 +0800 Subject: [PATCH] =?UTF-8?q?=E5=8A=A0=E5=85=A5=E7=81=AB=E7=A7=8Dbuff?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../GameDate/Enemy/SkeletonArcher.asset | 1 + .../Assets/GameDate/Enemy/SkullGuardian.asset | 1 + .../Assets/Scenes/SampleScene.unity | 52 ++++++++++++++- .../Assets/Scripts/Buff/Buff_Vulnerable.cs | 9 +-- .../Assets/Scripts/Card/TurnMaster.cs | 11 ++-- .../Assets/Scripts/Enemy/EnemyNode.cs | 33 +++++++++- .../Assets/Scripts/Tool/AbnormalCondition.cs | 4 ++ .../Scripts/Tool/Data_SO/EnemyState_SO.cs | 2 + .../Assets/Scripts/UI/EnemyUIBar.cs | 27 ++++++++ .../Scripts/manager/MapUnitySettleManager.cs | 60 ++++++++++++++++++ .../manager/MapUnitySettleManager.cs.meta | 11 ++++ .../Scripts/manager/ScenceLoadManager.cs.meta | 2 +- .../Assets/Scripts/manager/ScenceManager.cs | 8 +++ .../Scripts/manager/ScenceManager.cs.meta | 11 ++++ .../Assets/Scripts/manager/Usermanager.cs | 28 ++++++++ ...mbly-CSharp.csproj.AssemblyReference.cache | Bin 15844 -> 140347 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 34680 -> 34680 bytes 17 files changed, 243 insertions(+), 17 deletions(-) create mode 100644 ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs create mode 100644 ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs.meta create mode 100644 ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs create mode 100644 ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs.meta diff --git a/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkeletonArcher.asset b/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkeletonArcher.asset index 05c60c60..7cd0731e 100644 --- a/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkeletonArcher.asset +++ b/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkeletonArcher.asset @@ -23,6 +23,7 @@ MonoBehaviour: upShieldValue: 0 maxHP: 25 currentHP: 25 + sufferDamageMultiply: 1 colourType: 0 maxSkillCoolDown: 3 currentSkillCoolDown: 3 diff --git a/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkullGuardian.asset b/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkullGuardian.asset index d4a09867..2f4d1447 100644 --- a/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkullGuardian.asset +++ b/ColorlessWorld-2024-4-2/Assets/GameDate/Enemy/SkullGuardian.asset @@ -23,6 +23,7 @@ MonoBehaviour: upShieldValue: 7 maxHP: 27 currentHP: 27 + sufferDamageMultiply: 1 colourType: 0 maxSkillCoolDown: 3 currentSkillCoolDown: 3 diff --git a/ColorlessWorld-2024-4-2/Assets/Scenes/SampleScene.unity b/ColorlessWorld-2024-4-2/Assets/Scenes/SampleScene.unity index 651cfd82..8f6da277 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scenes/SampleScene.unity +++ b/ColorlessWorld-2024-4-2/Assets/Scenes/SampleScene.unity @@ -382,9 +382,6 @@ MonoBehaviour: m_Script: {fileID: 11500000, guid: c4e609945f10ddd4289c176395cebad5, type: 3} m_Name: m_EditorClassIdentifier: - loadScreen: {fileID: 1612911696} - slider: {fileID: 129931013} - text: {fileID: 834322864} --- !u!4 &13807177 Transform: m_ObjectHideFlags: 0 @@ -4878,6 +4875,7 @@ Transform: - {fileID: 409697653} - {fileID: 678393340} - {fileID: 603990721} + - {fileID: 878196045} m_Father: {fileID: 0} m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} --- !u!1 &365854624 @@ -6420,6 +6418,10 @@ MonoBehaviour: buffPanle: {fileID: 365854624} buffIcon: {fileID: 610775712955856159, guid: 457a3d2dee855fa41a324600bf63e57f, type: 3} damagemultiply: 0 + firm: 0 + drawNubmerMultiply: 0 + sufferDamageMultiply: 0 + stepRangeMultiply: 0 --- !u!1 &497308547 GameObject: m_ObjectHideFlags: 0 @@ -9739,6 +9741,50 @@ CanvasRenderer: m_PrefabAsset: {fileID: 0} m_GameObject: {fileID: 867255144} m_CullTransparentMesh: 1 +--- !u!1 &878196044 +GameObject: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + serializedVersion: 6 + m_Component: + - component: {fileID: 878196045} + - component: {fileID: 878196046} + m_Layer: 0 + m_Name: MapUnityBuffSettle + m_TagString: Untagged + m_Icon: {fileID: 0} + m_NavMeshLayer: 0 + m_StaticEditorFlags: 0 + m_IsActive: 1 +--- !u!4 &878196045 +Transform: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 878196044} + serializedVersion: 2 + 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_ConstrainProportionsScale: 0 + m_Children: [] + m_Father: {fileID: 348176937} + m_LocalEulerAnglesHint: {x: 0, y: 0, z: 0} +--- !u!114 &878196046 +MonoBehaviour: + m_ObjectHideFlags: 0 + m_CorrespondingSourceObject: {fileID: 0} + m_PrefabInstance: {fileID: 0} + m_PrefabAsset: {fileID: 0} + m_GameObject: {fileID: 878196044} + m_Enabled: 1 + m_EditorHideFlags: 0 + m_Script: {fileID: 11500000, guid: 4fc97c2ed99c8104e89a3c496f4cf33b, type: 3} + m_Name: + m_EditorClassIdentifier: --- !u!1 &896604551 GameObject: m_ObjectHideFlags: 0 diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/Buff/Buff_Vulnerable.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/Buff/Buff_Vulnerable.cs index 03f26231..8c988b5a 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/Buff/Buff_Vulnerable.cs +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/Buff/Buff_Vulnerable.cs @@ -7,15 +7,10 @@ public class Buff_Vulnerable : Buff { public override void Settle() { - base.Settle(); - SettleVulnerable(); + base.Settle(); } - public void SettleVulnerable() - { - if (value > 0) - Usermanager.Instance.SufferDamageJudge(); - } + public override void UIShow(GameObject buff, string key) { diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/Card/TurnMaster.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/Card/TurnMaster.cs index ffcc72fa..62d823c5 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/Card/TurnMaster.cs +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/Card/TurnMaster.cs @@ -49,18 +49,21 @@ public class TurnMaster : Singleton //洗牌--抽卡 StartCoroutine(ShuffleWithLosingCards()); + //恢复体力 + GameManager.Instance.playerState.currentStepRange = Usermanager.Instance.StepRangeCalculation(GameManager.Instance.playerState.maxStepRange); + restoreResource(0); + //结算玩家buff Usermanager.Instance.PlayerTurnSettle(); - //恢复体力 - GameManager.Instance.playerState.currentStepRange = GameManager.Instance.playerState.maxStepRange; - restoreResource(0); - //显示敌人攻击虚线 EnemyManager.Instance.EnemyLine_Observer(); //回复敌人系数 EnemyManager.Instance.enemyMultiplierRestore(); + //结算地块Buff + MapUnitySettleManager.Instance.MapGridsSettle(); + //阶段流转 StartCoroutine(EndPlayerTurnBegin()); } diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/Enemy/EnemyNode.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/Enemy/EnemyNode.cs index e8412f95..296f658a 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/Enemy/EnemyNode.cs +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/Enemy/EnemyNode.cs @@ -453,7 +453,7 @@ public class EnemyNode : MonoBehaviour,IEnemyObserver public void sufferDamage(int damageVal) { - EnemyState.currentHP -= damageVal; + EnemyState.currentHP -= SufferDamageCalculation (damageVal); Debug.Log("敌人血量" + EnemyState.currentHP); if (EnemyState.currentHP <= 0) { @@ -559,6 +559,9 @@ public class EnemyNode : MonoBehaviour,IEnemyObserver case AbnormalCondition.thorn: thornSettle(EnemyState.abnormalCondition[key]); break; + case AbnormalCondition.fireSeed: + fireSeedSettle(EnemyState.abnormalCondition[key]); + break; } abnormalConditionEndCheck(); } @@ -636,6 +639,10 @@ public class EnemyNode : MonoBehaviour,IEnemyObserver EnemyState.stepRangeMultiplier = 0; EnemyState.abnormalCondition[AbnormalCondition.sleep]--; } + private void fireSeedSettle(int fireSeedStack) + { + EnemyState.abnormalCondition[AbnormalCondition.fireSeed]--; + } public void bleedSettle() { @@ -663,5 +670,27 @@ public class EnemyNode : MonoBehaviour,IEnemyObserver } } - + //获取格子 + public MapUnity GetMapGrid() + { + return GameManager.Instance.X[positionX].Y[positionY]; + } + + #region Buff结算函数 + //结算易伤 + public int SufferDamageCalculation(int damage) + { + if (EnemyState .abnormalCondition .ContainsKey(AbnormalCondition.vulnerable)) + { + EnemyState .sufferDamageMultiply = 1.5f; + } + else + { + EnemyState. sufferDamageMultiply = 1f; + } + damage = (int)(EnemyState.sufferDamageMultiply * damage); + return damage; + } + #endregion + } diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/AbnormalCondition.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/AbnormalCondition.cs index d25e4037..a2890d27 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/AbnormalCondition.cs +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/AbnormalCondition.cs @@ -44,4 +44,8 @@ public class AbnormalCondition : Singleton public const string downSpeed = "21"; //缠绕- public const string BanStep = "22"; + + //后加敌方 + //火种 + public const string fireSeed = "23"; } diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/Data_SO/EnemyState_SO.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/Data_SO/EnemyState_SO.cs index 5ddd0b72..bdd2c9ff 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/Data_SO/EnemyState_SO.cs +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/Tool/Data_SO/EnemyState_SO.cs @@ -24,6 +24,8 @@ public class EnemyState_SO : ScriptableObject public float currentHP;//当前血量 + public float sufferDamageMultiply;//受伤系数 + public int colourType;//涂色类型,0为不涂色 public int maxSkillCoolDown;//技能冷却 diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/UI/EnemyUIBar.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/UI/EnemyUIBar.cs index 24c145cb..181ab3cb 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/UI/EnemyUIBar.cs +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/UI/EnemyUIBar.cs @@ -224,6 +224,33 @@ public class EnemyUIBar : MonoBehaviour buffIconList.Add(thorn); } break; + case AbnormalCondition.fireSeed: + if (EnemyState.abnormalCondition[key] != 0) + { + var thorn = Instantiate(buffIcon, buffPanle.transform); + thorn.transform.GetChild(0).GetComponent().text = "火"; + thorn.transform.GetChild(1).GetComponent().text = EnemyState.abnormalCondition[key].ToString(); + buffIconList.Add(thorn); + } + break; + case AbnormalCondition.downSpeed: + if (EnemyState.abnormalCondition[key] != 0) + { + var thorn = Instantiate(buffIcon, buffPanle.transform); + thorn.transform.GetChild(0).GetComponent().text = "慢"; + thorn.transform.GetChild(1).GetComponent().text = EnemyState.abnormalCondition[key].ToString(); + buffIconList.Add(thorn); + } + break; + case AbnormalCondition.upperSpeed: + if (EnemyState.abnormalCondition[key] != 0) + { + var thorn = Instantiate(buffIcon, buffPanle.transform); + thorn.transform.GetChild(0).GetComponent().text = "快"; + thorn.transform.GetChild(1).GetComponent().text = EnemyState.abnormalCondition[key].ToString(); + buffIconList.Add(thorn); + } + break; } } diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs new file mode 100644 index 00000000..2ea4ad3c --- /dev/null +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs @@ -0,0 +1,60 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class MapUnitySettleManager : Singleton +{ + public void PlayerMudGridSettle(int value) + { + if(GameManager .Instance .playerOn .whoColour == MapUnity.WhoColour.enemyColour ) + { + Usermanager.Instance.AddPlayerAbnormalCondition_downSpeed(value); + } + else if (GameManager.Instance.playerOn.whoColour == MapUnity.WhoColour.playerColour) + { + Usermanager.Instance.AddPlayerAbnormalCondition_upperSpeed(value); + } + + } + + public void EnemyRedGridSettle (EnemyNode enemyNode , int value) + { + if (enemyNode.GetMapGrid().whoColour == MapUnity.WhoColour.playerColour) + { + AddEnemyFireSeed(enemyNode, value); + } + + } + + #region 给敌方施加Buff方法 + + //给敌方施加火种 + public void AddEnemyFireSeed(EnemyNode enemyNode, int value) + { + enemyNode.sufferAbnormalCondition(AbnormalCondition.fireSeed, value); + if (enemyNode.EnemyState.abnormalCondition[AbnormalCondition.fireSeed] >= 10) + { + enemyNode.sufferDamage(Usermanager .Instance . DamageCalculation(15)); + enemyNode.EnemyState.abnormalCondition[AbnormalCondition.fireSeed] -= 10; + } + } + + #endregion + + public void MapGridsSettle() + { + PlayerMudGridSettle(1); + + if (EnemyManager.Instance.enemySpeedSortingList.Count > 0) + { + for (int i = 0; i < EnemyManager.Instance.enemySpeedSortingList.Count; i++) + { + if (EnemyManager.Instance.enemySpeedSortingList[i] != null) + { + EnemyRedGridSettle(EnemyManager.Instance.enemySpeedSortingList[i], 3); + } + } + } + + } +} diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs.meta b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs.meta new file mode 100644 index 00000000..ef900c9e --- /dev/null +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/MapUnitySettleManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: 4fc97c2ed99c8104e89a3c496f4cf33b +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceLoadManager.cs.meta b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceLoadManager.cs.meta index b2b21b95..be3b499a 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceLoadManager.cs.meta +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceLoadManager.cs.meta @@ -1,5 +1,5 @@ fileFormatVersion: 2 -guid: c4e609945f10ddd4289c176395cebad5 +guid: a89c4e241092d8d4e9db66087ec8d193 MonoImporter: externalObjects: {} serializedVersion: 2 diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs new file mode 100644 index 00000000..fdf862be --- /dev/null +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs @@ -0,0 +1,8 @@ +using System.Collections; +using System.Collections.Generic; +using UnityEngine; + +public class ScenceManager : Singleton +{ + +} diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs.meta b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs.meta new file mode 100644 index 00000000..b2b21b95 --- /dev/null +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/ScenceManager.cs.meta @@ -0,0 +1,11 @@ +fileFormatVersion: 2 +guid: c4e609945f10ddd4289c176395cebad5 +MonoImporter: + externalObjects: {} + serializedVersion: 2 + defaultReferences: [] + executionOrder: 0 + icon: {instanceID: 0} + userData: + assetBundleName: + assetBundleVariant: diff --git a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/Usermanager.cs b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/Usermanager.cs index acc2df75..0db43f21 100644 --- a/ColorlessWorld-2024-4-2/Assets/Scripts/manager/Usermanager.cs +++ b/ColorlessWorld-2024-4-2/Assets/Scripts/manager/Usermanager.cs @@ -109,6 +109,18 @@ public class Usermanager : Singleton SufferPlayerAbnormalCondition(AbnormalCondition.banDrawCard, value, buff); RefreshEnemyBuffIcon(); } + public void AddPlayerAbnormalCondition_downSpeed(int value) + { + Buff buff = new Buff_DownStepRange(); + SufferPlayerAbnormalCondition(AbnormalCondition.downSpeed, value, buff); + RefreshEnemyBuffIcon(); + } + public void AddPlayerAbnormalCondition_upperSpeed(int value) + { + Buff buff = new Buff_UpperStepRange(); + SufferPlayerAbnormalCondition(AbnormalCondition.upperSpeed, value, buff); + RefreshEnemyBuffIcon(); + } #endregion //Buff施加 @@ -271,6 +283,20 @@ public class Usermanager : Singleton stepRange = (int)((stepRange + addStepRange) *stepRangeMultiply); return stepRange; } + //易伤计算函数 + public int SufferDamageCalculation(int damage) + { + if (playerAbnormalCondition.ContainsKey(AbnormalCondition.vulnerable)) + { + sufferDamageMultiply = 1.5f; + } + else + { + sufferDamageMultiply = 1f; + } + damage =(int)( damagemultiply * damage); + return damage; + } //判断函数 @@ -301,4 +327,6 @@ public class Usermanager : Singleton return firm; } #endregion + + } diff --git a/ColorlessWorld-2024-4-2/obj/Debug/Assembly-CSharp.csproj.AssemblyReference.cache b/ColorlessWorld-2024-4-2/obj/Debug/Assembly-CSharp.csproj.AssemblyReference.cache index ce02d6dd2459d7f0395f2140a9a3e5b205fa40a6..5145f0704f9fbc812a44c61e3340858301991f2d 100644 GIT binary patch literal 140347 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 D+5=4$ delta 28 kcmdmeg5yawpRZF;urnj0Dgy%p;~~b$6M1Ymde5{40E6WSng9R* diff --git a/ColorlessWorld-2024-4-2/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/ColorlessWorld-2024-4-2/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache index 4e9d2199a8691c899edf1475989daf25b0824b4c..fa3ea9612b10a536b5e97cc3cd55175d16bc966d 100644 GIT binary patch delta 527 zcmey-$MmC*X~Q;dW>X`R$%1@}n{RQOFo8Im1^ND3Lqxq2ptRfMU0#Y%w!>sOZ#5(~ z&*aJ83UGeB56@&KA1NfhE}VVdM+eTf^L0dG^G&|stAWO6pB&()gdujyPZLGV#oq>n zf6?C*g&!V(u;0#?Z}QauJrwznKm`A2pgLSmKS&GCo)d&HgC`i_cb;IL$&JB?aPbb| zoct~r;dk#4ZHO6snv)lW%mK3}CQ05!9M1 delta 527 zcmey-$MmC*X~Q;dW;0`h$%1@}n{RQOFo8Im1^ND3Lqxq2ptRfMU0#Y%w!>sOZ#5(~ z&*aJ83UGeB56@&KA1NfhE}VVdM+eTf^L0dG^G&|stAWO6pB&()gdujyPZLGV#oq>n zf6?C*g&!V(u;0#?Z}QauJrwznKm`A2pgLSmKS&GCo)d&HgC`i_cb;IL$&JB?aPbb| zoct~r;dk#4ZHO6snv)lW%mK3}CQ0!-|>R