using System; using UnityEngine; public class ExplosiveProjectile : Projectile { [SerializeField] private GameObject explosionEffect; [SerializeField] private float blastRadius; [SerializeField] private LayerMask enemyLayer; protected override void OnTriggerEnter2D(Collider2D other) { base.OnTriggerEnter2D(other); if (!other.CompareTag(tag)) { GameObject newExplosionEffect = Instantiate(explosionEffect, transform.position, Quaternion.identity); newExplosionEffect.transform.localScale = new Vector3(blastRadius, blastRadius, blastRadius); Collider2D[] enemiesInRange = Physics2D.OverlapCircleAll(transform.position, enemyLayer, enemyLayer); foreach (Collider2D enemy in enemiesInRange) { if (enemy.TryGetComponent(out Entity isEntity)) { isEntity.TakeDamage(damage); } } } } }