diff options
author | chai <215380520@qq.com> | 2023-10-27 11:05:14 +0800 |
---|---|---|
committer | chai <215380520@qq.com> | 2023-10-27 11:05:14 +0800 |
commit | 766cdff5ffa72b65d7f106658d1603f47739b2ba (patch) | |
tree | 34d7799a94dfa9be182825577583c0fa6dc935f7 /GameCode/Explosion_Overpower.cs |
+ init
Diffstat (limited to 'GameCode/Explosion_Overpower.cs')
-rw-r--r-- | GameCode/Explosion_Overpower.cs | 23 |
1 files changed, 23 insertions, 0 deletions
diff --git a/GameCode/Explosion_Overpower.cs b/GameCode/Explosion_Overpower.cs new file mode 100644 index 0000000..13a98ac --- /dev/null +++ b/GameCode/Explosion_Overpower.cs @@ -0,0 +1,23 @@ +using System; +using UnityEngine; + +public class Explosion_Overpower : MonoBehaviour +{ + public float dmgPer100Hp; + + private void Awake() + { + Explosion component = GetComponent<Explosion>(); + component.hitPlayerAction = (Action<CharacterData, float>)Delegate.Combine(component.hitPlayerAction, new Action<CharacterData, float>(HitPlayer)); + } + + private void HitPlayer(CharacterData data, float rangeMultiplier) + { + SpawnedAttack component = GetComponent<SpawnedAttack>(); + if (component.IsMine()) + { + float num = component.spawner.data.maxHealth * dmgPer100Hp * 0.01f * base.transform.localScale.x; + data.healthHandler.CallTakeDamage(num * (data.transform.position - component.spawner.transform.position).normalized, base.transform.position, null, GetComponent<SpawnedAttack>().spawner); + } + } +} |